1. 27 3月, 2013 5 次提交
    • R
      stmmac: add IEEE PTPv1 and PTPv2 support. · 891434b1
      Rayagond Kokatanur 提交于
      This patch enhances the stmmac driver to support IEEE 1588-2002
      PTP (Precision Time Protocol) version 1 and IEEE 1588-2008 PPT
      version 2.
      
      Precision Time Protocol(PTP),which enables precise synchronization
      of clocks in measurement and control systems implemented with
      technologies such as network communication,local computing,
      & distributed objects.
      
      Both PTPv1 and PTPv2 is selected at run-time using the HW capability
      register.
      
      The PTPv1 TimeStamp support can be used on chips that have the normal
      descriptor structures and PTPv2 TimeStamp support can be used on chips
      that have the Extended descriptors(DES4-5-6-7). All such sanity checks
      are done and verified by using HW capability register.
      
      V2: in this version the ethtool support has been included in this patch;
      Koptions have been completely removed (previously added to select
      PTP and PTPv2). PTPv1 and PTPv2 is now added in a single patch instead of
      two patches.
      get_timestamp() and get_systemtime() L/H have been combined into single APIs.
      Signed-off-by: NRayagond Kokatanur <rayagond@vayavyalabs.com>
      Signed-off-by: NGiuseppe Cavallaro <peppe.cavallaro@st.com>
      Cc: Richard Cochran <richardcochran@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      891434b1
    • R
      stmmac: add tx_skbuff_dma to save descriptors used by PTP · cf32deec
      Rayagond Kokatanur 提交于
      This patch adds a new pointer variable called "tx_skbuff_dma" to private
      data structure. This variable will holds the physical address of packet
      to be transmitted & same will be used to free/unmap the memory once the
      corresponding packet is transmitted by device.
      
      Prior to this patch the descriptor buffer pointer(ie des2) itself was
      being used for freeing/unmapping the buffer memory. But in case PTP v1
      with normal descriptor the field(des2) will be overwritten by device
      with timestamp value, hence driver will loose the buffer pointer to be
      freed/unmapped.
      Signed-off-by: NRayagond Kokatanur <rayagond@vayavyalabs.com>
      Acked-by: NGiuseppe Cavallaro <peppe.cavallaro@st.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      cf32deec
    • G
      stmmac: initial support to manage pcs modes · e58bb43f
      Giuseppe CAVALLARO 提交于
      This patch adds the minimal support to manage the PCS
      modes (RGMII/SGMII) and restart the ANE.
      Both TBI and RTBI are not yet supported.
      
      Thanks to Byungho that wrote some part of this code
      and tested SGMII too.
      
      The only thing to be fixed is the get/set pause in
      ethtool.
      Signed-off-by: NByungho An <bh74.an@samsung.com>
      Signed-off-by: NGiuseppe Cavallaro <peppe.cavallaro@st.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      e58bb43f
    • G
      stmmac: support extend descriptors · c24602ef
      Giuseppe CAVALLARO 提交于
      This patch is to support the extend descriptors available
      in the chips newer than the 3.50.
      
      In case of the extend descriptors cannot be supported,
      at runtime, the driver will continue to work using the old style.
      
      In detail, this support extends the main descriptor structure
      adding new descriptors: 4, 5, 6, 7. The desc4 gives us extra
      information about the received ethernet payload when it is
      carrying PTP packets or TCP/UDP/ICMP over IP packets.
      The descriptors 6 and 7 are used for saving HW L/H timestamps (PTP).
      
      V2: this new version removes the Koption added in the first implementation
      because all the checks now to verify if the extended descriptors are
      actually supported happen at probe time.
      Signed-off-by: NGiuseppe Cavallaro <peppe.cavallaro@st.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      c24602ef
    • G
      stmmac: reorganize chain/ring modes removing Koptions · 4a7d666a
      Giuseppe CAVALLARO 提交于
      Previously we had two Koptions to decide if the stmmac
      had to use either a ring or a chain to manage its descriptors.
      This patch removes the Kernel configuration options and it allow us
      to use the chain mode by passing a module option.
      Ring mode continues to be the default.
      
      Also with this patch, it will be easier to validate the driver built and
      guarantee that all the two modes always compile fine.
      Signed-off-by: NGiuseppe Cavallaro <peppe.cavallaro@st.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      4a7d666a
  2. 15 12月, 2012 1 次提交
  3. 27 11月, 2012 4 次提交
  4. 07 10月, 2012 1 次提交
    • E
      net: remove skb recycling · acb600de
      Eric Dumazet 提交于
      Over time, skb recycling infrastructure got litle interest and
      many bugs. Generic rx path skb allocation is now using page
      fragments for efficient GRO / TCP coalescing, and recyling
      a tx skb for rx path is not worth the pain.
      
      Last identified bug is that fat skbs can be recycled
      and it can endup using high order pages after few iterations.
      
      With help from Maxime Bizon, who pointed out that commit
      87151b86 (net: allow pskb_expand_head() to get maximum tailroom)
      introduced this regression for recycled skbs.
      
      Instead of fixing this bug, lets remove skb recycling.
      
      Drivers wanting really hot skbs should use build_skb() anyway,
      to allocate/populate sk_buff right before netif_receive_skb()
      Signed-off-by: NEric Dumazet <edumazet@google.com>
      Cc: Maxime Bizon <mbizon@freebox.fr>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      acb600de
  5. 25 8月, 2012 1 次提交
  6. 31 7月, 2012 1 次提交
  7. 01 7月, 2012 1 次提交
    • G
      stmmac: add the Energy Efficient Ethernet support · d765955d
      Giuseppe CAVALLARO 提交于
      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: NGiuseppe Cavallaro <peppe.cavallaro@st.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      d765955d
  8. 12 6月, 2012 1 次提交
    • S
      net: stmmac: Fix clock en-/disable calls · 883ffd6e
      Stefan Roese 提交于
      clk_{un}prepare is mandatory for platforms using common clock framework.
      Since these drivers are used by SPEAr platform, which supports common
      clock framework, add clk_{un}prepare() support for them. Otherwise
      the clocks are not correctly en-/disabled and ethernet support doesn't
      work.
      Signed-off-by: NStefan Roese <sr@denx.de>
      Cc: Viresh Kumar <viresh.linux@gmail.com>
      Cc: Giuseppe Cavallaro <peppe.cavallaro@st.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      883ffd6e
  9. 08 6月, 2012 1 次提交
  10. 07 6月, 2012 1 次提交
  11. 15 5月, 2012 1 次提交
  12. 20 4月, 2012 1 次提交
  13. 05 4月, 2012 4 次提交
  14. 16 2月, 2012 2 次提交
  15. 22 12月, 2011 1 次提交
  16. 17 11月, 2011 1 次提交
    • G
      stmmac: parameters auto-tuning through HW cap reg · 19e30c14
      Giuseppe CAVALLARO 提交于
      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: NGiuseppe Cavallaro <peppe.cavallaro@st.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      19e30c14
  17. 20 10月, 2011 3 次提交
  18. 16 9月, 2011 4 次提交
  19. 12 8月, 2011 1 次提交
  20. 22 7月, 2011 3 次提交
  21. 04 5月, 2011 1 次提交
  22. 25 11月, 2010 1 次提交