=== NXP DPAA2 support Links + link:https://github.com/mcusim/freebsd-src/tree/lx2160acex7-dev/sys/dev/dpaa2[Development] URL: https://github.com/mcusim/freebsd-src/tree/lx2160acex7-dev/sys/dev/dpaa2[https://github.com/mcusim/freebsd-src/tree/lx2160acex7-dev/sys/dev/dpaa2] + Contact: Dmitry Salychev + Contact: Bjoern A. Zeeb Some of the NXP SoCs (LX2160A, LS1088A) are shipped with link:https://www.nxp.com/design/qoriq-developer-resources/second-generation-data-path-acceleration-architecture-dpaa2:DPAA2[DPAA2], the second generation of the data path acceleration architecture. It allows to dynamically configure and wire packet processing "objects" (like DPNI for a network interface, DPMAC for media access controller, etc.) together to form a network-on-a-chip. link:https://solidrun.atlassian.net/wiki/spaces/developer/pages/197494288/HoneyComb+LX2+ClearFog+CX+LX2+Quick+Start+Guide[Honeycomb LX2], as one of the powerful ARM64 boards from SolidRun, is also built around NXP LX2160A and lacks on-board GbE support in FreeBSD. These drivers are about to change it. It's still work in progress and a rough implementation of the drivers for some DPAA2 objects is available at the moment. A new network interface (dpni) can be used on Honeycomb for testing. TODO: * Update dpaa2_mc_fdt driver for the link:https://www.crowdsupply.com/traverse-technologies/ten64[Traverse Ten64] board * Review and fix DPAA2 resources allocation to support as many DPNIs as possible * Free driver resources properly * Implement CPU affinity for DPIOs and DPNIs * Implement cached memory-backed software portals * Profile and mitigate bottlenecks Sponsor: Bare Enthusiasm :)