From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web10.1652.1589270119681599561 for ; Tue, 12 May 2020 00:55:20 -0700 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: arm.com, ip: 217.140.110.172, mailfrom: ard.biesheuvel@arm.com) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 2B1711FB; Tue, 12 May 2020 00:55:18 -0700 (PDT) Received: from e123331-lin.nice.arm.com (unknown [10.37.8.255]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 441683F305; Tue, 12 May 2020 00:55:16 -0700 (PDT) From: "Ard Biesheuvel" To: devel@edk2.groups.io Cc: leif@nuviainc.com, philmd@redhat.com, Ard Biesheuvel , Pete Batard , Jared McNeill , Andrei Warkentin , Samer El-Haj-Mahmoud , Jeremy Linton Subject: [PATCH edk2-platforms v2 0/7] Add Broadcom GENET driver for RPi4 Date: Tue, 12 May 2020 09:55:05 +0200 Message-Id: <20200512075512.12645-1-ard.biesheuvel@arm.com> X-Mailer: git-send-email 2.17.1 This is a followup to Samer's v1 [0], and incorporates all the delta changes posted for review over the past couple of days. This is a roundup of all that work, and therefore supersedes it. It provides an implementation of the SimpleNetworkProtocol for the Raspberry Pi4's GENET network controller, in a way that adheres to the UEFI driver model. The original submission was provided by Jared, based on Jeremy's MAC programming-only driver and the existing BSD driver for the GENET IP. Cumulative changes and fixes as well as review feedback were provided by all of the below. https://github.com/ardbiesheuvel/edk2-platforms/tree/rpi4_genet_combi_v2 Cc: Pete Batard Cc: Jared McNeill Cc: Andrei Warkentin Cc: Samer El-Haj-Mahmoud Cc: Jeremy Linton Andrei Warkentin (1): Platform/RaspberryPi4: Remove PlatformPcdLib Ard Biesheuvel (6): Platform/RaspberryPi4: set DMA translation for BCM Genet driver Silicon/Broadcom: Add BcmGenetPlatformDevice protocol Silicon/Broadcom/BcmGenetDxe: Add GENET driver Platform/RaspberryPi4: Clean up PCDs out of the GENET driver Platform/RaspberryPi4: Register GENET platform device protocol Platform/RaspberryPi4: remove ASIX 88772b driver Silicon/Broadcom/Bcm27xx/Bcm27xx.dec | 2 + Silicon/Broadcom/Drivers/Net/BcmNet.dec | 8 +- Platform/RaspberryPi/RPi4/RPi4.dsc | 8 +- Platform/RaspberryPi/RPi4/RPi4.fdf | 1 - .../RaspberryPi/AcpiTables/AcpiTables.inf | 2 +- .../Drivers/ConfigDxe/ConfigDxe.inf | 29 +- .../Library/PlatformPcdLib/PlatformPcdLib.inf | 43 - .../Drivers/Net/BcmGenetDxe/BcmGenetDxe.inf | 46 +- .../Include/IndustryStandard/Bcm2711.h | 3 + .../Drivers/Net/BcmGenetDxe/GenericPhy.h | 106 +++ .../Drivers/Net/BcmGenetDxe/GenetUtil.h | 364 ++++++++ .../Broadcom/Drivers/Net/Include/Net/Genet.h | 21 - .../Include/Protocol/BcmGenetPlatformDevice.h | 24 + .../RaspberryPi/Drivers/ConfigDxe/ConfigDxe.c | 108 ++- .../Library/PlatformPcdLib/PlatformPcdLib.c | 45 - .../Drivers/Net/BcmGenetDxe/ComponentName.c | 198 +++++ .../Drivers/Net/BcmGenetDxe/DriverBinding.c | 408 +++++++++ .../Drivers/Net/BcmGenetDxe/GenericPhy.c | 405 +++++++++ .../Broadcom/Drivers/Net/BcmGenetDxe/Genet.c | 114 --- .../Drivers/Net/BcmGenetDxe/GenetUtil.c | 816 +++++++++++++++++ .../Drivers/Net/BcmGenetDxe/SimpleNetwork.c | 834 ++++++++++++++++++ Platform/RaspberryPi/AcpiTables/Dsdt.asl | 2 +- 22 files changed, 3319 insertions(+), 268 deletions(-) delete mode 100644 Platform/RaspberryPi/Library/PlatformPcdLib/PlatformPcdLib.inf create mode 100644 Silicon/Broadcom/Drivers/Net/BcmGenetDxe/GenericPhy.h create mode 100644 Silicon/Broadcom/Drivers/Net/BcmGenetDxe/GenetUtil.h delete mode 100644 Silicon/Broadcom/Drivers/Net/Include/Net/Genet.h create mode 100644 Silicon/Broadcom/Drivers/Net/Include/Protocol/BcmGenetPlatformDevice.h delete mode 100644 Platform/RaspberryPi/Library/PlatformPcdLib/PlatformPcdLib.c create mode 100644 Silicon/Broadcom/Drivers/Net/BcmGenetDxe/ComponentName.c create mode 100644 Silicon/Broadcom/Drivers/Net/BcmGenetDxe/DriverBinding.c create mode 100644 Silicon/Broadcom/Drivers/Net/BcmGenetDxe/GenericPhy.c delete mode 100644 Silicon/Broadcom/Drivers/Net/BcmGenetDxe/Genet.c create mode 100644 Silicon/Broadcom/Drivers/Net/BcmGenetDxe/GenetUtil.c create mode 100644 Silicon/Broadcom/Drivers/Net/BcmGenetDxe/SimpleNetwork.c -- 2.17.1