The platform DXE driver of the Juno platform enumerates the PCIe explicitly
by calling ConnectController on the PCIe root bridge, in order to ensure
that all PCI I/O protocols have been instantiated when we try to locate the
one describing the Marvel Yukon NIC, so that we can program its MAC address.

Taking control of core firmware behavior like this has already caused
confusion when reasoning about why and when PCIe option ROMs get dispatched,
and is likely to cause more confusion down the road.

So let's fix this, by triggering the MAC programming via a protocol notify
on the PCI I/O protocol.

This has been build tested only at the moment.

Cc: Sami Mujawar <sami.muja...@arm.com>
Cc: Laszlo Ersek <ler...@redhat.com>
Cc: Leif Lindholm <leif.lindh...@linaro.org>

Ard Biesheuvel (2):
  Platform/ARM/ArmJunoDxe: make mAcpiRegistration STATIC
  Platform/ARM/ArmJunoDxe: use PciIo protocol notify to program the MAC

 .../JunoPkg/Drivers/ArmJunoDxe/ArmJunoDxe.c   | 163 ++++--------------
 .../JunoPkg/Drivers/ArmJunoDxe/ArmJunoDxe.inf |   1 -
 2 files changed, 31 insertions(+), 133 deletions(-)

-- 
2.17.1


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#51828): https://edk2.groups.io/g/devel/message/51828
Mute This Topic: https://groups.io/mt/67467391/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to