Page MenuHomeFreeBSD

if_awg: performance improvements
ClosedPublic

Authored by jmcneill on Jun 30 2016, 2:05 AM.
Tags
Referenced Files
Unknown Object (File)
Mon, Dec 16, 1:58 AM
Unknown Object (File)
Fri, Nov 29, 10:08 PM
Unknown Object (File)
Mon, Nov 25, 3:56 PM
Unknown Object (File)
Mon, Nov 25, 3:53 PM
Unknown Object (File)
Mon, Nov 25, 6:11 AM
Unknown Object (File)
Nov 15 2024, 5:38 AM
Unknown Object (File)
Nov 5 2024, 8:40 PM
Unknown Object (File)
Oct 31 2024, 12:58 AM
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 Skipped
Unit
Tests Skipped

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.