1. 03 1月, 2017 1 次提交
  2. 17 12月, 2016 1 次提交
  3. 30 11月, 2016 2 次提交
    • Z
      net: macb: ensure ordering write to re-enable RX smoothly · ffac0e96
      Zumeng Chen 提交于
      When a hardware issue happened as described by inline comments, the register
      write pattern looks like the following:
      
      <write ~MACB_BIT(RE)>
      + wmb();
      <write MACB_BIT(RE)>
      
      There might be a memory barrier between these two write operations, so add wmb
      to ensure an flip from 0 to 1 for NCR.
      Signed-off-by: NZumeng Chen <zumeng.chen@windriver.com>
      Acked-by: NNicolas Ferre <nicolas.ferre@atmel.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ffac0e96
    • C
      net: macb: fix the RX queue reset in macb_rx() · a0b44eea
      Cyrille Pitchen 提交于
      On macb only (not gem), when a RX queue corruption was detected from
      macb_rx(), the RX queue was reset: during this process the RX ring
      buffer descriptor was initialized by macb_init_rx_ring() but we forgot
      to also set bp->rx_tail to 0.
      
      Indeed, when processing the received frames, bp->rx_tail provides the
      macb driver with the index in the RX ring buffer of the next buffer to
      process. So when the whole ring buffer is reset we must also reset
      bp->rx_tail so the driver is synchronized again with the hardware.
      
      Since macb_init_rx_ring() is called from many locations, currently from
      macb_rx() and macb_init_rings(), we'd rather add the "bp->rx_tail = 0;"
      line inside macb_init_rx_ring() than add the very same line after each
      call of this function.
      
      Without this fix, the rx queue is not reset properly to recover from
      queue corruption and connection drop may occur.
      Signed-off-by: NCyrille Pitchen <cyrille.pitchen@atmel.com>
      Fixes: 9ba723b0 ("net: macb: remove BUG_ON() and reset the queue to handle RX errors")
      Acked-by: NNicolas Ferre <nicolas.ferre@atmel.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      a0b44eea
  4. 19 11月, 2016 1 次提交
  5. 17 11月, 2016 1 次提交
  6. 20 10月, 2016 2 次提交
  7. 18 10月, 2016 1 次提交
    • J
      ethernet: use core min/max MTU checking · 44770e11
      Jarod Wilson 提交于
      et131x: min_mtu 64, max_mtu 9216
      
      altera_tse: min_mtu 64, max_mtu 1500
      
      amd8111e: min_mtu 60, max_mtu 9000
      
      bnad: min_mtu 46, max_mtu 9000
      
      macb: min_mtu 68, max_mtu 1500 or 10240 depending on hardware capability
      
      xgmac: min_mtu 46, max_mtu 9000
      
      cxgb2: min_mtu 68, max_mtu 9582 (pm3393) or 9600 (vsc7326)
      
      enic: min_mtu 68, max_mtu 9000
      
      gianfar: min_mtu 50, max_mu 9586
      
      hns_enet: min_mtu 68, max_mtu 9578 (v1) or 9706 (v2)
      
      ksz884x: min_mtu 60, max_mtu 1894
      
      myri10ge: min_mtu 68, max_mtu 9000
      
      natsemi: min_mtu 64, max_mtu 2024
      
      nfp: min_mtu 68, max_mtu hardware-specific
      
      forcedeth: min_mtu 64, max_mtu 1500 or 9100, depending on hardware
      
      pch_gbe: min_mtu 46, max_mtu 10300
      
      pasemi_mac: min_mtu 64, max_mtu 9000
      
      qcaspi: min_mtu 46, max_mtu 1500
      - remove qcaspi_netdev_change_mtu as it is now redundant
      
      rocker: min_mtu 68, max_mtu 9000
      
      sxgbe: min_mtu 68, max_mtu 9000
      
      stmmac: min_mtu 46, max_mtu depends on hardware
      
      tehuti: min_mtu 60, max_mtu 16384
      - driver had no max mtu checking, but product docs say 16k jumbo packets
        are supported by the hardware
      
      netcp: min_mtu 68, max_mtu 9486
      - remove netcp_ndo_change_mtu as it is now redundant
      
      via-velocity: min_mtu 64, max_mtu 9000
      
      octeon: min_mtu 46, max_mtu 65370
      
      CC: netdev@vger.kernel.org
      CC: Mark Einon <mark.einon@gmail.com>
      CC: Vince Bridgers <vbridger@opensource.altera.com>
      CC: Rasesh Mody <rasesh.mody@qlogic.com>
      CC: Nicolas Ferre <nicolas.ferre@atmel.com>
      CC: Santosh Raspatur <santosh@chelsio.com>
      CC: Hariprasad S <hariprasad@chelsio.com>
      CC:  Christian Benvenuti <benve@cisco.com>
      CC: Sujith Sankar <ssujith@cisco.com>
      CC: Govindarajulu Varadarajan <_govind@gmx.com>
      CC: Neel Patel <neepatel@cisco.com>
      CC: Claudiu Manoil <claudiu.manoil@freescale.com>
      CC: Yisen Zhuang <yisen.zhuang@huawei.com>
      CC: Salil Mehta <salil.mehta@huawei.com>
      CC: Hyong-Youb Kim <hykim@myri.com>
      CC: Jakub Kicinski <jakub.kicinski@netronome.com>
      CC: Olof Johansson <olof@lixom.net>
      CC: Jiri Pirko <jiri@resnulli.us>
      CC: Byungho An <bh74.an@samsung.com>
      CC: Girish K S <ks.giri@samsung.com>
      CC: Vipul Pandya <vipul.pandya@samsung.com>
      CC: Giuseppe Cavallaro <peppe.cavallaro@st.com>
      CC: Alexandre Torgue <alexandre.torgue@st.com>
      CC: Andy Gospodarek <andy@greyhouse.net>
      CC: Wingman Kwok <w-kwok2@ti.com>
      CC: Murali Karicheri <m-karicheri2@ti.com>
      CC: Francois Romieu <romieu@fr.zoreil.com>
      Signed-off-by: NJarod Wilson <jarod@redhat.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      44770e11
  8. 13 10月, 2016 1 次提交
    • J
      net: deprecate eth_change_mtu, remove usage · a52ad514
      Jarod Wilson 提交于
      With centralized MTU checking, there's nothing productive done by
      eth_change_mtu that isn't already done in dev_set_mtu, so mark it as
      deprecated and remove all usage of it in the kernel. All callers have been
      audited for calls to alloc_etherdev* or ether_setup directly, which means
      they all have a valid dev->min_mtu and dev->max_mtu. Now eth_change_mtu
      prints out a netdev_warn about being deprecated, for the benefit of
      out-of-tree drivers that might be utilizing it.
      
      Of note, dvb_net.c actually had dev->mtu = 4096, while using
      eth_change_mtu, meaning that if you ever tried changing it's mtu, you
      couldn't set it above 1500 anymore. It's now getting dev->max_mtu also set
      to 4096 to remedy that.
      
      v2: fix up lantiq_etop, missed breakage due to drive not compiling on x86
      
      CC: netdev@vger.kernel.org
      Signed-off-by: NJarod Wilson <jarod@redhat.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      a52ad514
  9. 08 10月, 2016 1 次提交
  10. 13 9月, 2016 1 次提交
  11. 07 9月, 2016 1 次提交
  12. 19 8月, 2016 1 次提交
  13. 15 8月, 2016 1 次提交
  14. 11 8月, 2016 1 次提交
    • H
      net: macb: Add 64 bit addressing support for GEM · fff8019a
      Harini Katakam 提交于
      This patch adds support for 64 bit addressing and BDs.
      -> Enable 64 bit addressing in DMACFG register.
      -> Set DMA mask when design config register shows support for 64 bit addr.
      -> Add new BD words for higher address when 64 bit DMA support is present.
      -> Add and update TBQPH and RBQPH for MSB of BD pointers.
      -> Change extraction and updation of buffer addresses to use
      64 bit address.
      -> In gem_rx extract address in one place insted of two and use a
      separate flag for RXUSED.
      Signed-off-by: NHarini Katakam <harinik@xilinx.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      fff8019a
  15. 07 8月, 2016 1 次提交
  16. 25 6月, 2016 2 次提交
  17. 04 5月, 2016 2 次提交
  18. 05 4月, 2016 5 次提交
  19. 28 3月, 2016 1 次提交
  20. 25 3月, 2016 2 次提交
  21. 23 3月, 2016 1 次提交
  22. 14 3月, 2016 1 次提交
  23. 20 2月, 2016 1 次提交
  24. 11 2月, 2016 1 次提交
  25. 26 1月, 2016 1 次提交
  26. 16 1月, 2016 1 次提交
  27. 08 1月, 2016 5 次提交