Page MenuHomeFreeBSD

if_awg: performance improvements
ClosedPublic

Authored by jmcneill on Jun 30 2016, 2:05 AM.
Tags
Referenced Files
Unknown Object (File)
Thu, Apr 25, 7:32 PM
Unknown Object (File)
Mar 25 2024, 2:47 PM
Unknown Object (File)
Dec 20 2023, 3:56 AM
Unknown Object (File)
Apr 9 2023, 6:16 AM
Unknown Object (File)
Mar 23 2023, 6:41 AM
Unknown Object (File)
Jan 2 2023, 6:12 PM
Unknown Object (File)
Apr 27 2017, 5:17 AM
Unknown Object (File)
Apr 11 2017, 8:18 PM
Subscribers

Details

Summary
  • H3/A83T: Use PLL_PERIPH/2 for AHB2 parent clock
  • awg: support DEVICE_POLLING
  • awg: increase TX descriptors to 1024
  • awg: add support for passing a chain of mbufs to if_input, reducing the number of calls to mtx_unlock/mtx_lock
  • awg: remove duplicate byteswap when setting TX_INT_CTL
  • awg: set undocumented "TX_NEXT_FRAME" bit in TX control 1 register. Accoriding to the BSP, setting this bit allows the DMA engine to operate on a second packet while receiving another.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

jmcneill retitled this revision from to if_awg: performance improvements.
jmcneill updated this object.
jmcneill edited the test plan for this revision. (Show Details)
jmcneill added a reviewer: ARM.
jmcneill set the repository for this revision to rS FreeBSD src repository - subversion.
jmcneill added a project: ARM.
manu added a reviewer: manu.
manu added a subscriber: manu.

Before on H3 I did ~85Mbps in TX, 95Mbps in RX, with this patch I do 95Mbps in RX and TX.
I didn't tweak the sysctl, and I don't know if DEVICE_POLLING is enabled or not.

This revision is now accepted and ready to land.Jul 13 2016, 12:31 PM
This revision was automatically updated to reflect the committed changes.