1. 07 4月, 2017 1 次提交
  2. 31 3月, 2017 1 次提交
  3. 22 3月, 2017 1 次提交
  4. 09 2月, 2017 1 次提交
  5. 16 11月, 2016 1 次提交
    • M
      net: ethernet: stmmac: change dma descriptors to __le32 · f8be0d78
      Michael Weiser 提交于
      The stmmac driver does not take into account the processor may be big
      endian when writing the DMA descriptors. This causes the ethernet
      interface not to be initialised correctly when running a big-endian
      kernel. Change the descriptors for DMA to use __le32 and ensure they are
      suitably swapped before writing. Tested successfully on the
      Cubieboard2.
      Signed-off-by: NMichael Weiser <michael.weiser@gmx.de>
      Cc: Giuseppe Cavallaro <peppe.cavallaro@st.com>
      Cc: Alexandre Torgue <alexandre.torgue@st.com>
      Cc: netdev@vger.kernel.org
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f8be0d78
  6. 03 3月, 2016 5 次提交
  7. 30 8月, 2014 1 次提交
  8. 12 3月, 2014 1 次提交
  9. 20 1月, 2014 1 次提交
  10. 09 4月, 2013 1 次提交
  11. 27 3月, 2013 4 次提交
    • 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: 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
  12. 20 10月, 2011 1 次提交
    • G
      stmmac: add CHAINED descriptor mode support (V4) · 286a8372
      Giuseppe CAVALLARO 提交于
      This patch enhances the STMMAC driver to support CHAINED mode of
      descriptor.
      
      STMMAC supports DMA descriptor to operate both in dual buffer(RING)
      and linked-list(CHAINED) mode. In RING mode (default) each descriptor
      points to two data buffer pointers whereas in CHAINED mode they point
      to only one data buffer pointer.
      
      In CHAINED mode each descriptor will have pointer to next descriptor in
      the list, hence creating the explicit chaining in the descriptor itself,
      whereas such explicit chaining is not possible in RING mode.
      
      First version of this work has been done by Rayagond.
      Then the patch has been reworked avoiding ifdef inside the C code.
      A new header file has been added to define all the functions needed for
      managing enhanced and normal descriptors.
      In fact, these have to be specialized according to the ring/chain usage.
      Two new C files have been also added to implement the helper routines
      needed to manage: jumbo frames, chain and ring setup (i.e. desc3).
      Signed-off-by: NRayagond Kokatanur <rayagond@vayavyalabs.com>
      Signed-off-by: NGiuseppe Cavallaro <peppe.cavallaro@st.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      286a8372