1. 27 10月, 2015 1 次提交
  2. 29 8月, 2015 2 次提交
  3. 27 7月, 2015 1 次提交
    • S
      ravb: minimize TX data copying · 2f45d190
      Sergei Shtylyov 提交于
      Renesas Ethernet AVB controller requires that all data are aligned on 4-byte
      boundary.  While it's  easily achievable for  the RX  data with  the help of
      skb_reserve() (we even align on 128-byte boundary as recommended by the manual),
      we  can't  do the same with the TX data, and it always comes  unaligned from
      the networking core. Originally we solved it an easy way, copying all packet
      to  a  preallocated  aligned buffer; however, it's enough to copy only up to
      3 first bytes from each packet, doing the transfer using 2 TX descriptors
      instead of just 1. Here's an implementation of the new  TX algorithm that
      significantly reduces the driver's memory requirements.
      Signed-off-by: NSergei Shtylyov <sergei.shtylyov@cogentembedded.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      2f45d190
  4. 22 7月, 2015 1 次提交
    • S
      ravb: fix ring memory allocation · d8b48911
      Sergei Shtylyov 提交于
      The driver is written as if it can adapt to a low memory situation  allocating
      less RX  skbs and TX aligned buffers than the respective RX/TX ring sizes.  In
      reality  though  the driver  would malfunction in this case. Stop being overly
      smart and just fail in such situation -- this is achieved by moving the memory
      allocation from ravb_ring_format() to ravb_ring_init().
      
      We leave dma_map_single() calls in place but make their failure non-fatal
      by marking the corresponding RX descriptors  with zero data size which should
      prevent DMA to an invalid addresses.
      Signed-off-by: NSergei Shtylyov <sergei.shtylyov@cogentembedded.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      d8b48911
  5. 21 7月, 2015 1 次提交
  6. 17 7月, 2015 1 次提交
  7. 15 7月, 2015 1 次提交
  8. 25 6月, 2015 1 次提交
  9. 23 6月, 2015 1 次提交
    • P
      drivers/net: remove all references to obsolete Ethernet-HOWTO · 138b15ed
      Paul Gortmaker 提交于
      This howto made sense in the 1990s when users had to manually configure
      ISA cards with jumpers or vendor utilities, but with the implementation
      of PCI it became increasingly less and less relevant, to the point where
      it has been well over a decade since I last updated it.  And there is
      no value in anyone else taking over updating it either.
      
      However the references to it continue to spread as boiler plate text
      from one Kconfig file into the next.  We are not doing end users any
      favours by pointing them at this old document, so lets kill it with
      fire, once and for all, to hopefully stop any further spread.
      
      No code is changed in this commit, just Kconfig help text.
      Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      138b15ed
  10. 11 6月, 2015 2 次提交
  11. 05 3月, 2015 5 次提交
  12. 03 3月, 2015 4 次提交
  13. 01 3月, 2015 1 次提交
    • G
      sh_eth: Fix lost MAC address on kexec · a14c7d15
      Geert Uytterhoeven 提交于
      Commit 740c7f31 ("sh_eth: Ensure DMA engines are stopped before
      freeing buffers") added a call to sh_eth_reset() to the
      sh_eth_set_ringparam() and sh_eth_close() paths.
      
      However, setting the software reset bit(s) in the EDMR register resets
      the MAC Address Registers to zero. Hence after kexec, the new kernel
      doesn't detect a valid MAC address and assigns a random MAC address,
      breaking DHCP.
      
      Set the MAC address again after the reset in sh_eth_dev_exit() to fix
      this.
      
      Tested on r8a7740/armadillo (GETHER) and r8a7791/koelsch (FAST_RCAR).
      
      Fixes: 740c7f31 ("sh_eth: Ensure DMA engines are stopped before freeing buffers")
      Signed-off-by: NGeert Uytterhoeven <geert+renesas@glider.be>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      a14c7d15
  14. 27 1月, 2015 10 次提交
  15. 20 1月, 2015 2 次提交
    • B
      sh_eth: Fix ethtool operation crash when net device is down · 4f9dce23
      Ben Hutchings 提交于
      The driver connects and disconnects the PHY device whenever the
      net device is brought up and down.  The ethtool get_settings,
      set_settings and nway_reset operations will dereference a null
      or dangling pointer if called while it is down.
      
      I think it would be preferable to keep the PHY connected, but there
      may be good reasons not to.
      
      As an immediate fix for this bug:
      - Set the phydev pointer to NULL after disconnecting the PHY
      - Change those three operations to return -ENODEV while the PHY is
        not connected
      Signed-off-by: NBen Hutchings <ben.hutchings@codethink.co.uk>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      4f9dce23
    • B
      sh_eth: Fix promiscuous mode on chips without TSU · b37feed7
      Ben Hutchings 提交于
      Currently net_device_ops::set_rx_mode is only implemented for
      chips with a TSU (multiple address table).  However we do need
      to turn the PRM (promiscuous) flag on and off for other chips.
      
      - Remove the unlikely() from the TSU functions that we may safely
        call for chips without a TSU
      - Make setting of the MCT flag conditional on the tsu capability flag
      - Rename sh_eth_set_multicast_list() to sh_eth_set_rx_mode() and plumb
        it into both net_device_ops structures
      - Remove the previously-unreachable branch in sh_eth_rx_mode() that
        would otherwise reset the flags to defaults for non-TSU chips
      Signed-off-by: NBen Hutchings <ben.hutchings@codethink.co.uk>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      b37feed7
  16. 16 1月, 2015 2 次提交
  17. 09 1月, 2015 2 次提交
  18. 10 12月, 2014 2 次提交