Hi,
Finally, after massive rework updated version of Armada 7040 NIC driver is available for mainline review. It's 100% compliant with EDK2 coding style rules, with new headers' structure, camelcase in the library, etc. Detailed description of the modifications can be found in changelog below.
Driver itself is relatively short and not complicated, as it simply implements SNP routines. Most significant part is the library, but it consists of HW-configurations routines only.
The patches are also available in the public github tree: https://github.com/MarvellEmbeddedProcessors/edk2-open-platform/commits/opp-...
Any comments or remarks would be welcome.
Best regards, Marcin
Changelog v1->v2
* Separate HW part of library header - Mvpp2LibHw.h - contains all HW-related defines and structures' definitions - Mvpp2Lib.h - library function prototypes and inline functions - Pp2Dxe.h - OS glue, macros, structures, driver constants
* Remove all Marvell-specific typedefs - MV_U8, MV_32 and so on
* Adjust code to UEFI coding style - Use typedefs for structures - Replace tabs with spaces - Replace "static" prefixes with "STATIC" - Change under_score style to CamelCase - Adjust namings accordingly - Commits currently passed PatchCheck test
* Improvements/fixes - Remove Linux-related leftovers in Pp2Dxe.h - Change library headers to BSD - only - Remove duplicated AXI configuration - Enable setting MAC address with PCD's - Implement Snp->StationAddress callback for resetting/updating MAC address
Bartosz Szczepanek (3): Drivers/Net: Import Mvpp2Lib for Pp2Dxe driver Drivers/Net: Create Pp2Dxe driver Platforms/Marvell: Enable Pp2Dxe driver on Armada70x0 platform
Documentation/Marvell/PortingGuide/Pp2.txt | 70 + Drivers/Net/Pp2Dxe/Mvpp2Lib.c | 4237 ++++++++++++++++++++++++++++ Drivers/Net/Pp2Dxe/Mvpp2Lib.h | 305 ++ Drivers/Net/Pp2Dxe/Mvpp2LibHw.h | 2043 ++++++++++++++ Drivers/Net/Pp2Dxe/Pp2Dxe.c | 1281 +++++++++ Drivers/Net/Pp2Dxe/Pp2Dxe.h | 455 +++ Drivers/Net/Pp2Dxe/Pp2Dxe.inf | 94 + Platforms/Marvell/Armada/Armada.dsc.inc | 1 + Platforms/Marvell/Armada/Armada70x0.dsc | 21 +- Platforms/Marvell/Armada/Armada70x0.fdf | 1 + Platforms/Marvell/Marvell.dec | 19 + 11 files changed, 8526 insertions(+), 1 deletion(-) create mode 100644 Documentation/Marvell/PortingGuide/Pp2.txt create mode 100644 Drivers/Net/Pp2Dxe/Mvpp2Lib.c create mode 100644 Drivers/Net/Pp2Dxe/Mvpp2Lib.h create mode 100644 Drivers/Net/Pp2Dxe/Mvpp2LibHw.h create mode 100644 Drivers/Net/Pp2Dxe/Pp2Dxe.c create mode 100644 Drivers/Net/Pp2Dxe/Pp2Dxe.h create mode 100644 Drivers/Net/Pp2Dxe/Pp2Dxe.inf