From nobody Tue May 21 00:41:53 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) client-ip=66.175.222.12; envelope-from=bounce+27952+57068+1787277+3901457@groups.io; helo=web01.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) smtp.mailfrom=bounce+27952+57068+1787277+3901457@groups.io ARC-Seal: i=1; a=rsa-sha256; t=1586362319; cv=none; d=zohomail.com; s=zohoarc; b=E9yxO9AR6Ikqf61upivjOYUumKfn/h5fm7it6H6At1zN40H3+TfY9SNgICcGgDGlJ8e6FROehoVVBcF2QaYNlG9LyJgvOXrTLdZshtmrleSTOpJnIGYJ5cv7F7IR4rGmadCQMRrpM/BC/Zk17kUuvBpvLdkyz/3BahAk/BL9BtA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1586362319; h=Cc:Date:From:In-Reply-To:List-Id:List-Unsubscribe:Message-ID:Reply-To:References:Sender:Subject:To; bh=G/qwK6MSYeKvKrUKs+DgLJO62azLy4/5ZlB74Cg/adg=; b=eHw222MxUVioOkLC/cwgLXX37TdCt5GEMS4lm2kQP23cGmi0xWc8BswVFlioyKnsdZl5yN0vG4XyD4IUL5HYUKrovqZDcWSkomXrnBf3ySb19Fd8MQGQFtKNd3Tkmt4jvuijVn2RfjoVqo6pP3Peebk6JYBCfdOSRd78H3feDBo= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) smtp.mailfrom=bounce+27952+57068+1787277+3901457@groups.io Received: from web01.groups.io (web01.groups.io [66.175.222.12]) by mx.zohomail.com with SMTPS id 1586362319167386.3260749086917; Wed, 8 Apr 2020 09:11:59 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id Ara1YY1788612xld2AXQ4xJM; Wed, 08 Apr 2020 09:11:58 -0700 X-Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web12.14908.1586362318310276384 for ; Wed, 08 Apr 2020 09:11:58 -0700 X-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 CE39530E; Wed, 8 Apr 2020 09:11:57 -0700 (PDT) X-Received: from cam-smtp0.cambridge.arm.com (unknown [10.37.8.121]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 921CC3F52E; Wed, 8 Apr 2020 09:11:56 -0700 (PDT) From: "Ard Biesheuvel" To: devel@edk2.groups.io Cc: leif@nuviainc.com, Samer.El-Haj-Mahmoud@arm.com, Ard Biesheuvel Subject: [edk2-devel] [PATCH edk2-platforms 1/2] Silicon/SynQuacer/PlatformDxe: defer device registration until EndOfDxe Date: Wed, 8 Apr 2020 18:11:37 +0200 Message-Id: <20200408161138.18289-2-ard.biesheuvel@arm.com> In-Reply-To: <20200408161138.18289-1-ard.biesheuvel@arm.com> References: <20200408161138.18289-1-ard.biesheuvel@arm.com> Precedence: Bulk List-Unsubscribe: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,ard.biesheuvel@arm.com X-Gm-Message-State: DdVuH47vX1GiVtxQnEzwzIYax1787277AA= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1586362318; bh=r6NKl0YRDXmclEH/fygaR8RcvGezAF4FV3FjYOOOWmA=; h=Cc:Date:From:Reply-To:Subject:To; b=drxPOemwJyp22UzhwkAiDJbzii9cmciDliyCp/jqc1+TnXi20uao1LaQ7RmvafEbLJf ulr/MvuSU6LodKWAdKd2XBgM0OoXAqVw6rku87OElGzJKla7xX45lkxzti7rPR4YvTq7a fTMenR4B4q/VXdg/MOEhD8HlzZDK07KhgBI= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" EDK2 carries an interesting quirk which dates back to the EFI 1.02 days, where each protocol that is installed onto a handle during the execution of a DXE driver's entrypoint is connected immediately (in the UEFI driver model sense) after the entry point returns. This means that, depending on the order that these drivers happen to end up being dispatched, we may enter the BDS phase with the device's driver stack fully connected, even if the device in question is not being used to boot the machine. Given the substantial delays that this might incur, let's work around this 'feature' by deferring the registration of the network and eMMC controllers to an EndOfDxe event handler. Signed-off-by: Ard Biesheuvel Reviewed-by: Leif Lindholm --- Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.c | 37 +++++= +++++++++------ Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.inf | 1 + 2 files changed, 28 insertions(+), 10 deletions(-) diff --git a/Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.c = b/Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.c index b6e2789cb9d2..09200a918009 100644 --- a/Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.c +++ b/Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.c @@ -301,6 +301,28 @@ InstallAcpiTables ( } } =20 +STATIC +VOID +EFIAPI +RegisterDevices ( + EFI_EVENT Event, + VOID *Context + ) +{ + EFI_HANDLE Handle; + EFI_STATUS Status; + + Handle =3D NULL; + Status =3D RegisterDevice (&gNetsecNonDiscoverableDeviceGuid, mNetsecDes= c, + &Handle); + ASSERT_EFI_ERROR (Status); + + if (mHiiSettings->EnableEmmc =3D=3D EMMC_ENABLED) { + Status =3D RegisterEmmc (); + ASSERT_EFI_ERROR (Status); + } +} + EFI_STATUS EFIAPI PlatformDxeEntryPoint ( @@ -315,6 +337,7 @@ PlatformDxeEntryPoint ( EFI_ACPI_DESCRIPTION_HEADER *Ssdt; UINTN SsdtSize; UINTN Index; + EFI_EVENT EndOfDxeEvent; =20 mHiiSettingsVal =3D PcdGet64 (PcdPlatformSettings); mHiiSettings =3D (SYNQUACER_PLATFORM_VARSTORE_DATA *)&mHiiSettingsVal; @@ -344,11 +367,6 @@ PlatformDxeEntryPoint ( } } =20 - Handle =3D NULL; - Status =3D RegisterDevice (&gNetsecNonDiscoverableDeviceGuid, mNetsecDes= c, - &Handle); - ASSERT_EFI_ERROR (Status); - Handle =3D NULL; Status =3D RegisterDevice (&gSynQuacerNonDiscoverableRuntimeI2cMasterGui= d, mI2c0Desc, &Handle); @@ -387,11 +405,6 @@ PlatformDxeEntryPoint ( Status =3D EnableSettingsForm (); ASSERT_EFI_ERROR (Status); =20 - if (mHiiSettings->EnableEmmc =3D=3D EMMC_ENABLED) { - Status =3D RegisterEmmc (); - ASSERT_EFI_ERROR (Status); - } - if (mHiiSettings->AcpiPref =3D=3D ACPIPREF_ACPI) { // // Load the SSDT tables from a raw section in this FFS file. @@ -431,5 +444,9 @@ PlatformDxeEntryPoint ( } } =20 + Status =3D gBS->CreateEventEx (EVT_NOTIFY_SIGNAL, TPL_NOTIFY, RegisterDe= vices, + NULL, &gEfiEndOfDxeEventGroupGuid, &EndOfDxeEvent); + ASSERT_EFI_ERROR (Status); + return EFI_SUCCESS; } diff --git a/Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.in= f b/Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.inf index 57f2d071c14e..157f914ea85d 100644 --- a/Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.inf +++ b/Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.inf @@ -57,6 +57,7 @@ [LibraryClasses] [Guids] g96BoardsI2c0MasterGuid gEdkiiPlatformHasAcpiGuid + gEfiEndOfDxeEventGroupGuid gEfiHiiPlatformSetupFormsetGuid gFdtTableGuid gNetsecNonDiscoverableDeviceGuid --=20 2.17.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#57068): https://edk2.groups.io/g/devel/message/57068 Mute This Topic: https://groups.io/mt/72877589/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Tue May 21 00:41:53 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) client-ip=66.175.222.12; envelope-from=bounce+27952+57069+1787277+3901457@groups.io; helo=web01.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) smtp.mailfrom=bounce+27952+57069+1787277+3901457@groups.io ARC-Seal: i=1; a=rsa-sha256; t=1586362320; cv=none; d=zohomail.com; s=zohoarc; b=DIxbuL2LdlIBubBpb93buO7OaK7fPpKmirSnjxsNYrbsDGWIdrBbOEa/qUY4aG1zDAHsPXNb/CHFlf98RSZCBIeeEWMt3K2NK12r64C85G7qmNuafmgEP48wvK8CxheAH1EqOPvoDW/nu0KtocLdhs70sg+eWB/NubR3vaV8Y7Q= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1586362320; h=Cc:Date:From:In-Reply-To:List-Id:List-Unsubscribe:Message-ID:Reply-To:References:Sender:Subject:To; bh=e9sFe2K98qRMxY1reHY+4kfVK4cVEA6+O8pJOkyvet8=; b=Jpa0iliN7TZeveIkvzqvVJ4XSNPIkyXfyTE2xzLS9UXSXeA6SL6/XLwCLRs/n5D+zruskjywHum2dNCEu7kn7RgbYRn5nQBV3b+E4UfWmRFgHDxmffISwk3nQejrVQ+DfRjAvWjUDaWbXYYsjPhuyYbEQ9ej3zfOVwTfsEDGd+A= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) smtp.mailfrom=bounce+27952+57069+1787277+3901457@groups.io Received: from web01.groups.io (web01.groups.io [66.175.222.12]) by mx.zohomail.com with SMTPS id 1586362320827330.4127439324103; Wed, 8 Apr 2020 09:12:00 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id 7dRAYY1788612xIk5kmBxz5E; Wed, 08 Apr 2020 09:12:00 -0700 X-Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web10.15059.1586362319913803037 for ; Wed, 08 Apr 2020 09:12:00 -0700 X-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 945E230E; Wed, 8 Apr 2020 09:11:59 -0700 (PDT) X-Received: from cam-smtp0.cambridge.arm.com (unknown [10.37.8.121]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 40F443F52E; Wed, 8 Apr 2020 09:11:58 -0700 (PDT) From: "Ard Biesheuvel" To: devel@edk2.groups.io Cc: leif@nuviainc.com, Samer.El-Haj-Mahmoud@arm.com, Ard Biesheuvel Subject: [edk2-devel] [PATCH edk2-platforms 2/2] Silicon/SynQuacer/NetsecDxe: move device path to root device Date: Wed, 8 Apr 2020 18:11:38 +0200 Message-Id: <20200408161138.18289-3-ard.biesheuvel@arm.com> In-Reply-To: <20200408161138.18289-1-ard.biesheuvel@arm.com> References: <20200408161138.18289-1-ard.biesheuvel@arm.com> Precedence: Bulk List-Unsubscribe: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,ard.biesheuvel@arm.com X-Gm-Message-State: kwyYsFUfoL6PAjwCWP6W9H0hx1787277AA= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1586362320; bh=jPiTaxNrXzRRRCwLx+wUS0+tucbBhmFUhN4oJ5hMa3k=; h=Cc:Date:From:Reply-To:Subject:To; b=A+XgLUr36TkyX9lp07EEz7pcNrN3podVGOjtpj1Mw8yAnXnp/t+mplc2aLXcJs0FbU2 53QEmew3g1PjIZmZX1HpBRvyE42Zb5LtH7QXA++iRtngiNTwFZtxZLkfypbQlUAHpD3Lc lsyYDd+I257LucltxzAKpguqTn5HSP8qlCY= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Currently, SynQuacer's platform DXE driver installs a non-discoverable device protocol onto a new handle to declare the existence of the NetSec network controller. This protocol is consumed by the NetSec DXE driver in its implementation of the UEFI driver model supported/start/stop routines. Only when the driver is started, an instance of the device path protocol is installed onto the handle, annotating the handle as supporting the MAC flavor of the messaging device path. This approach works as long as the non-discoverable driver is always connected at some point during the boot. However, it breaks the intent of the UEFI driver model, since it is not possible to defer connection of the driver to the controller to the point where it is actually being used. For instance, the following device path could be attached to a boot entry to trigger HTTP boot once the entry is chosen: MAC(408d5cb1e6fa,1)/IPv4(0.0.0.0,0,0)/Uri() This only works as expected if some part of this device path resolves to a controller which can be connected recursively. In other words, an instance of the EFI device path protocol needs to already exist, covering at least the first level of the path. Fix this by moving the instantiation of the device path protocol to the platform DXE code that instantiates the handle. Signed-off-by: Ard Biesheuvel Reviewed-by: Leif Lindholm --- Silicon/Socionext/SynQuacer/Drivers/Net/NetsecDxe/NetsecDxe.c | 12 ---- Silicon/Socionext/SynQuacer/Drivers/Net/NetsecDxe/NetsecDxe.h | 9 --- Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.c | 59 +++++= ++++++++++++++- Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.h | 1 + Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.inf | 2 + 5 files changed, 60 insertions(+), 23 deletions(-) diff --git a/Silicon/Socionext/SynQuacer/Drivers/Net/NetsecDxe/NetsecDxe.c = b/Silicon/Socionext/SynQuacer/Drivers/Net/NetsecDxe/NetsecDxe.c index a304e02208fa..4e3c4e6c807a 100644 --- a/Silicon/Socionext/SynQuacer/Drivers/Net/NetsecDxe/NetsecDxe.c +++ b/Silicon/Socionext/SynQuacer/Drivers/Net/NetsecDxe/NetsecDxe.c @@ -1051,21 +1051,10 @@ NetsecInit ( =20 InitializeListHead (&LanDriver->TxBufferList); =20 - LanDriver->DevicePath.Netsec.Header.Type =3D MESSAGING_DEVICE_PATH; - LanDriver->DevicePath.Netsec.Header.SubType =3D MSG_MAC_ADDR_DP; - - SetDevicePathNodeLength (&LanDriver->DevicePath.Netsec.Header, - sizeof (LanDriver->DevicePath.Netsec)); - CopyMem (&LanDriver->DevicePath.Netsec.MacAddress, - &SnpMode->PermanentAddress, PXE_HWADDR_LEN_ETHER); - LanDriver->DevicePath.Netsec.IfType =3D SnpMode->IfType; - SetDevicePathEndNode (&LanDriver->DevicePath.End); - // Initialise the protocol Status =3D gBS->InstallMultipleProtocolInterfaces ( &ControllerHandle, &gEfiSimpleNetworkProtocolGuid, Snp, - &gEfiDevicePathProtocolGuid, &LanDriver->DevicePath, NULL); =20 LanDriver->ControllerHandle =3D ControllerHandle; @@ -1111,7 +1100,6 @@ NetsecRelease ( =20 Status =3D gBS->UninstallMultipleProtocolInterfaces (ControllerHandle, &gEfiSimpleNetworkProtocolGuid, Snp, - &gEfiDevicePathProtocolGuid, &LanDriver->DevicePath, NULL); if (EFI_ERROR (Status)) { return Status; diff --git a/Silicon/Socionext/SynQuacer/Drivers/Net/NetsecDxe/NetsecDxe.h = b/Silicon/Socionext/SynQuacer/Drivers/Net/NetsecDxe/NetsecDxe.h index c95ff215199d..17a7032f0f41 100644 --- a/Silicon/Socionext/SynQuacer/Drivers/Net/NetsecDxe/NetsecDxe.h +++ b/Silicon/Socionext/SynQuacer/Drivers/Net/NetsecDxe/NetsecDxe.h @@ -38,13 +38,6 @@ extern EFI_COMPONENT_NAME2_PROTOCOL gNetsecDriverCompone= ntName2; NETSEC Information Structure --------------------------------------------------------------------------= ----*/ =20 -#pragma pack(1) -typedef struct { - MAC_ADDR_DEVICE_PATH Netsec; - EFI_DEVICE_PATH_PROTOCOL End; -} NETSEC_DEVICE_PATH; -#pragma pack() - typedef struct { // Driver signature UINT32 Signature; @@ -68,8 +61,6 @@ typedef struct { EFI_EVENT PhyStatusEvent; =20 NON_DISCOVERABLE_DEVICE *Dev; - - NETSEC_DEVICE_PATH DevicePath; } NETSEC_DRIVER; =20 #define NETSEC_SIGNATURE SIGNATURE_32('n', 't', 's', 'c') diff --git a/Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.c = b/Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.c index 09200a918009..2030ef7932e0 100644 --- a/Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.c +++ b/Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.c @@ -11,6 +11,18 @@ UINT64 mHiiSettingsVal; SYNQUACER_PLATFORM_VARSTORE_DATA *mHiiSettings; =20 +#pragma pack (1) +typedef struct { + MAC_ADDR_DEVICE_PATH MacAddrDevicePath; + EFI_DEVICE_PATH_PROTOCOL End; +} NETSEC_DEVICE_PATH; + +typedef struct { + NETSEC_DEVICE_PATH DevicePath; + NON_DISCOVERABLE_DEVICE NonDiscoverableDevice; +} NETSEC_DEVICE; +#pragma pack () + typedef struct { VENDOR_DEVICE_PATH VendorDevicePath; EFI_DEVICE_PATH_PROTOCOL End; @@ -113,6 +125,31 @@ STATIC EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR mI2c1Desc[] = =3D { } }; =20 +STATIC NETSEC_DEVICE mNetsecDevice =3D { + { + { + { + MESSAGING_DEVICE_PATH, + MSG_MAC_ADDR_DP, + { sizeof (MAC_ADDR_DEVICE_PATH), 0 }, + }, + {}, + NET_IFTYPE_ETHERNET, + }, + { + END_DEVICE_PATH_TYPE, + END_ENTIRE_DEVICE_PATH_SUBTYPE, + { sizeof (EFI_DEVICE_PATH_PROTOCOL), 0 } + } + }, + { + &gNetsecNonDiscoverableDeviceGuid, + NonDiscoverableDeviceDmaTypeCoherent, + NULL, + mNetsecDesc + } +}; + STATIC EFI_ACPI_DESCRIPTION_HEADER *mEmmcSsdt; STATIC UINTN mEmmcSsdtSize; =20 @@ -301,6 +338,20 @@ InstallAcpiTables ( } } =20 +STATIC +VOID +NetsecReadMacAddress ( + OUT EFI_MAC_ADDRESS *MacAddress + ) +{ + MacAddress->Addr[0] =3D MmioRead8 (FixedPcdGet32 (PcdNetsecEepromBase) += 3); + MacAddress->Addr[1] =3D MmioRead8 (FixedPcdGet32 (PcdNetsecEepromBase) += 2); + MacAddress->Addr[2] =3D MmioRead8 (FixedPcdGet32 (PcdNetsecEepromBase) += 1); + MacAddress->Addr[3] =3D MmioRead8 (FixedPcdGet32 (PcdNetsecEepromBase) += 0); + MacAddress->Addr[4] =3D MmioRead8 (FixedPcdGet32 (PcdNetsecEepromBase) += 7); + MacAddress->Addr[5] =3D MmioRead8 (FixedPcdGet32 (PcdNetsecEepromBase) += 6); +} + STATIC VOID EFIAPI @@ -312,9 +363,13 @@ RegisterDevices ( EFI_HANDLE Handle; EFI_STATUS Status; =20 + NetsecReadMacAddress (&mNetsecDevice.DevicePath.MacAddrDevicePath.MacAdd= ress); + Handle =3D NULL; - Status =3D RegisterDevice (&gNetsecNonDiscoverableDeviceGuid, mNetsecDes= c, - &Handle); + Status =3D gBS->InstallMultipleProtocolInterfaces (&Handle, + &gEfiDevicePathProtocolGuid, &mNetsecDevice= .DevicePath, + &gEdkiiNonDiscoverableDeviceProtocolGuid, &mNetsecDevice= .NonDiscoverableDevice, + NULL); ASSERT_EFI_ERROR (Status); =20 if (mHiiSettings->EnableEmmc =3D=3D EMMC_ENABLED) { diff --git a/Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.h = b/Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.h index 692654687869..1cb95121d638 100644 --- a/Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.h +++ b/Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.h @@ -22,6 +22,7 @@ #include #include #include +#include #include #include #include diff --git a/Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.in= f b/Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.inf index 157f914ea85d..aa3cbdf35c73 100644 --- a/Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.inf +++ b/Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.inf @@ -30,6 +30,7 @@ [Packages] EmbeddedPkg/EmbeddedPkg.dec MdeModulePkg/MdeModulePkg.dec MdePkg/MdePkg.dec + NetworkPkg/NetworkPkg.dec Platform/96Boards/96Boards.dec Silicon/NXP/Library/Pcf8563RealTimeClockLib/Pcf8563RealTimeClockLib.dec Silicon/Socionext/SynQuacer/Drivers/Net/NetsecDxe/NetsecDxe.dec @@ -46,6 +47,7 @@ [LibraryClasses] HiiLib IoLib MemoryAllocationLib + NetLib NonDiscoverableDeviceRegistrationLib OpteeLib PcdLib --=20 2.17.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#57069): https://edk2.groups.io/g/devel/message/57069 Mute This Topic: https://groups.io/mt/72877591/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-