1. 02 Mar, 2016 2 commits
  2. 01 Dec, 2015 1 commit
  3. 01 Nov, 2015 1 commit
  4. 09 Dec, 2014 1 commit
  5. 30 Aug, 2014 1 commit
  6. 25 Aug, 2014 1 commit
  7. 31 Jul, 2014 1 commit
  8. 02 Jun, 2014 1 commit
    • Emil Goode's avatar
      stmmac: Remove spin_lock call in stmmac_get_pauseparam() · 86c92ee3
      Emil Goode authored
      The following patch removed unnecessary spin_lock/unlock calls
      in ethtool_ops callback functions. In the second and final version
      of the patch one spin_lock call was left behind.
      
      commit cab6715c
      
      
      Author: Yang Wei <Wei.Yang@windriver.com>
      Date:   Sun May 25 09:53:44 2014 +0800
      
          net: driver: stmicro: Remove some useless the lock protection
      
      This introduced the following sparse warning:
      
      drivers/net/ethernet/stmicro/stmmac/stmmac_ethtool.c:424:1: warning:
      	context imbalance in 'stmmac_get_pauseparam' -
      	different lock contexts for basic block
      Signed-off-by: default avatarEmil Goode <emilgoode@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      86c92ee3
  9. 25 May, 2014 1 commit
  10. 13 May, 2014 1 commit
  11. 26 Mar, 2013 5 commits
  12. 07 Jan, 2013 1 commit
  13. 26 Nov, 2012 3 commits
    • Giuseppe CAVALLARO's avatar
      stmmac: get/set coalesce parameters via ethtool · 48f44da4
      Giuseppe CAVALLARO authored
      
      
      This patch is to get/set the tx/rx coalesce parameters
      via ethtool interface.
      
      Tests have been done on several platform with different GMAC chips w/o and w/
      RX watchdog feature.
      
      V2: reject coalesce settings that are not supported.
      Signed-off-by: default avatarGiuseppe Cavallaro <peppe.cavallaro@st.com>
      Reviewed-by: default avatarBen Hutchings <bhutchings@solarflare.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      48f44da4
    • Giuseppe CAVALLARO's avatar
      stmmac: add Rx watchdog support to mitigate the DMA irqs · 62a2ab93
      Giuseppe CAVALLARO authored
      
      
      GMAC devices newer than databook 3.40 has an embedded timer
      that can be used for mitigating the number of interrupts.
      So this patch adds this optimizations.
      
      At any rate, the Rx watchdog can be disable (on bugged HW) by
      passing from the platform the riwt_off field.
      
      In this implementation the rx timer stored in the Reg9 is fixed
      to the max value. This will be tuned by using ethtool.
      
      V2: added a platform parameter to force to disable the rx-watchdog
      for example on new core where it is bugged.
      
      V3: do not disable NAPI when Rx watchdog is used.
      
      V4: a new extra statistic field has been added to show the early
      receive status in the interrupt handler.
      This patch also adds an extra check to avoid to call
      napi_schedule when the DMA_INTR_ENA_RIE bit is disabled in the
      Interrupt Mask register.
      Signed-off-by: default avatarGiuseppe Cavallaro <peppe.cavallaro@st.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      62a2ab93
    • Giuseppe CAVALLARO's avatar
      stmmac: add the initial tx coalesce schema · 9125cdd1
      Giuseppe CAVALLARO authored
      
      
      This patch adds a new schema used for mitigating the
      number of transmit interrupts.
      It is based on a SW timer and a threshold value.
      The timer is used to periodically call the stmmac_tx_clean
      function; the threshold is used for setting the IC (Interrupt
      on Completion bit). The ISR will then invoke the poll method.
      Also the patch improves some ethtool stat fields.
      
      V2: review the logic to manage the IC bit in the TDESC
      that was bugged because it didn't take care about the
      fragments. Also fix the tx_count_frames that has not to be
      limited to TX DMA ring. Thanks to Ben Hutchings.
      
      V3: removed the spin_lock irqsave/restore as D. Miller suggested.
      Signed-off-by: default avatarGiuseppe Cavallaro <peppe.cavallaro@st.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      9125cdd1
  14. 01 Jul, 2012 1 commit
    • Giuseppe CAVALLARO's avatar
      stmmac: add the Energy Efficient Ethernet support · d765955d
      Giuseppe CAVALLARO authored
      
      
      This patch adds the Energy Efficient Ethernet support to the stmmac.
      
      Please see the driver's documentation for further details about this support
      in the driver.
      
      Thanks also goes to Rayagond Kokatanur for his first implementation.
      
      Note:
       to clearly manage and expose the lpi interrupt status and eee ethtool
       stats I've had to do some modifications to the driver's design and I
       found really useful to move other parts of the code (e.g. mmc irq stat)
       in the main directly. So this means that some core has been reworked
       to introduce the EEE.
      
      v1: initial patch
      v2: fixed some sparse issues (typos)
      v3: erroneously sent the v2 renamed as v3
      v4:
      	o Fixed the return value of the stmmac_eee_init as suggested by D.Miller
      	o Totally reviewed the ethtool support for EEE
      	o Added a new internal parameter to tune the SW timer for TX LPI.
      v5: do not change any eee setting in case of the stmmac_ethtool_op_set_eee fails
          (it has to return -EOPNOTSUPP in that case).
      Signed-off-by: default avatarGiuseppe Cavallaro <peppe.cavallaro@st.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      d765955d
  15. 04 Apr, 2012 1 commit
  16. 15 Feb, 2012 1 commit
  17. 05 Jan, 2012 1 commit
  18. 17 Nov, 2011 1 commit
    • Giuseppe CAVALLARO's avatar
      stmmac: parameters auto-tuning through HW cap reg · 19e30c14
      Giuseppe CAVALLARO authored
      
      
      New GMAC devices (newer than the databook 3.50a) have the
      HW capability register that provides which features are actually
      supported by the hardware.
      
      On old devices many information have to be passed through the
      platform, for example: enhanced descriptor structure,
      TX COE etc. These are mandatory to properly configure the driver.
      This remains still valid because the driver has to support old
      Synopsys devices but now it's also able to override them using the
      values from the HW capability register if supported.
      Signed-off-by: default avatarGiuseppe Cavallaro <peppe.cavallaro@st.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      19e30c14
  19. 16 Nov, 2011 1 commit
  20. 28 Oct, 2011 1 commit
    • Giuseppe CAVALLARO's avatar
      stmmac: update normal descriptor structure (v2) · 3c20f72f
      Giuseppe CAVALLARO authored
      
      
      This patch updates the normal descriptor structure
      to work fine on new GMAC Synopsys chips.
      
      Normal descriptors were designed on the old MAC10/100
      databook 1.91 where some bits were reserved: for example
      the tx checksum insertion and rx checksum offload.
      
      The patch maintains the back-compatibility with old
      MAC devices (tested on STx7109 MAC10/100) and adds new
      fields that actually new GMAC devices can use.
      
      For example, STx7109 (MAC10/100) will pass from the platform
        tx_coe = 0, enh_desc = 0, has_gmac = 0.
      A platform like Loongson1B (GMAC) will pass:
        tx_coe = 1, enh_desc = 0, has_gmac = 1.
      
      Thanks to Kelvin, he enhanced the normal descriptors for
      GMAC (on MIPS Loongson1B platform).
      Signed-off-by: default avatarKelvin Cheung <keguang.zhang@gmail.com>
      Signed-off-by: default avatarGiuseppe Cavallaro <peppe.cavallaro@st.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      3c20f72f
  21. 19 Oct, 2011 1 commit
  22. 15 Sep, 2011 2 commits
  23. 11 Aug, 2011 1 commit
  24. 22 Jun, 2011 1 commit
    • Alexey Dobriyan's avatar
      net: remove mm.h inclusion from netdevice.h · b7f080cf
      Alexey Dobriyan authored
      
      
      Remove linux/mm.h inclusion from netdevice.h -- it's unused (I've checked manually).
      
      To prevent mm.h inclusion via other channels also extract "enum dma_data_direction"
      definition into separate header. This tiny piece is what gluing netdevice.h with mm.h
      via "netdevice.h => dmaengine.h => dma-mapping.h => scatterlist.h => mm.h".
      Removal of mm.h from scatterlist.h was tried and was found not feasible
      on most archs, so the link was cutoff earlier.
      
      Hope people are OK with tiny include file.
      
      Note, that mm_types.h is still dragged in, but it is a separate story.
      Signed-off-by: default avatarAlexey Dobriyan <adobriyan@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      b7f080cf
  25. 07 Jun, 2011 1 commit
  26. 13 May, 2011 2 commits
  27. 29 Apr, 2011 1 commit
    • David Decotigny's avatar
      ethtool: Call ethtool's get/set_settings callbacks with cleaned data · 8ae6daca
      David Decotigny authored
      
      
      This makes sure that when a driver calls the ethtool's
      get/set_settings() callback of another driver, the data passed to it
      is clean. This guarantees that speed_hi will be zeroed correctly if
      the called callback doesn't explicitely set it: we are sure we don't
      get a corrupted speed from the underlying driver. We also take care of
      setting the cmd field appropriately (ETHTOOL_GSET/SSET).
      
      This applies to dev_ethtool_get_settings(), which now makes sure it
      sets up that ethtool command parameter correctly before passing it to
      drivers. This also means that whoever calls dev_ethtool_get_settings()
      does not have to clean the ethtool command parameter. This function
      also becomes an exported symbol instead of an inline.
      
      All drivers visible to make allyesconfig under x86_64 have been
      updated.
      Signed-off-by: default avatarDavid Decotigny <decot@google.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      8ae6daca
  28. 13 Apr, 2011 1 commit
  29. 11 Apr, 2011 1 commit
  30. 06 Dec, 2010 1 commit
  31. 24 Nov, 2010 1 commit