I'm going through all the protocols we have defined/used and in Decode.c/h there's [E1000]UndiApiEntry for PXE/UNDI callbacks. I've tested an X64 GCC build under OVMF and these calls were broken due to mismatched calling conventions. Did this work correctly for your builds on your platforms?
Reviewed-by: Ryszard Knop <ryszard.k...@linux.intel.com> On Tue, 2018-11-06 at 18:58 +0100, ard.biesheuvela wrote: > Contributed-under: TianoCore Contribution Agreement 1.1 > Signed-off-by: Ard Biesheuvel <ard.biesheuvel at linaro.org> > --- > IntelUndiPkg/GigUndiDxe/AdapterInformation.c | 3 +++ > IntelUndiPkg/GigUndiDxe/ComponentName.c | 2 ++ > IntelUndiPkg/GigUndiDxe/ComponentName.h | 1 + > IntelUndiPkg/GigUndiDxe/DriverConfiguration.c | 3 +++ > IntelUndiPkg/GigUndiDxe/DriverDiagnostics.c | 1 + > IntelUndiPkg/GigUndiDxe/DriverHealth.c | 2 ++ > IntelUndiPkg/GigUndiDxe/StartStop.c | 2 ++ > 7 files changed, 14 insertions(+) > > diff --git a/IntelUndiPkg/GigUndiDxe/AdapterInformation.c > b/IntelUndiPkg/GigUndiDxe/AdapterInformation.c > index 8918c538e447..1cece79911b1 100644 > --- a/IntelUndiPkg/GigUndiDxe/AdapterInformation.c > +++ b/IntelUndiPkg/GigUndiDxe/AdapterInformation.c > @@ -123,6 +123,7 @@ GetIpv6SupportInformationBlock ( > **/ > STATIC > EFI_STATUS > +EFIAPI > GetInformation ( > IN EFI_ADAPTER_INFORMATION_PROTOCOL *This, > IN EFI_GUID * InformationType, > @@ -188,6 +189,7 @@ GetInformation ( > **/ > STATIC > EFI_STATUS > +EFIAPI > SetInformation ( > IN EFI_ADAPTER_INFORMATION_PROTOCOL *This, > IN EFI_GUID * InformationType, > @@ -234,6 +236,7 @@ SetInformation ( > **/ > STATIC > EFI_STATUS > +EFIAPI > GetSupportedTypes ( > IN EFI_ADAPTER_INFORMATION_PROTOCOL *This, > OUT EFI_GUID ** InfoTypesBuffer, > diff --git a/IntelUndiPkg/GigUndiDxe/ComponentName.c > b/IntelUndiPkg/GigUndiDxe/ComponentName.c > index 70baf00f4a5d..2bf9bbfbe0e4 100644 > --- a/IntelUndiPkg/GigUndiDxe/ComponentName.c > +++ b/IntelUndiPkg/GigUndiDxe/ComponentName.c > @@ -112,6 +112,7 @@ ComponentNameInitializeControllerName ( > language specified by Language. > **/ > EFI_STATUS > +EFIAPI > ComponentNameGetDriverName ( > IN EFI_COMPONENT_NAME_PROTOCOL *This, > IN CHAR8 * Language, > @@ -182,6 +183,7 @@ ComponentNameGetDriverName ( > language specified by Language. > **/ > EFI_STATUS > +EFIAPI > ComponentNameGetControllerName ( > IN EFI_COMPONENT_NAME_PROTOCOL > * This, > IN EFI_HANDLE Co > ntrollerHandle, > diff --git a/IntelUndiPkg/GigUndiDxe/ComponentName.h > b/IntelUndiPkg/GigUndiDxe/ComponentName.h > index 5a3d414c6970..0b93a5410fc0 100644 > --- a/IntelUndiPkg/GigUndiDxe/ComponentName.h > +++ b/IntelUndiPkg/GigUndiDxe/ComponentName.h > @@ -65,6 +65,7 @@ ComponentNameInitializeControllerName ( > language specified by Language. > **/ > EFI_STATUS > +EFIAPI > ComponentNameGetDriverName ( > IN EFI_COMPONENT_NAME_PROTOCOL *This, > IN CHAR8 * Language, > diff --git a/IntelUndiPkg/GigUndiDxe/DriverConfiguration.c > b/IntelUndiPkg/GigUndiDxe/DriverConfiguration.c > index 20d40ab672ef..99e086d81044 100644 > --- a/IntelUndiPkg/GigUndiDxe/DriverConfiguration.c > +++ b/IntelUndiPkg/GigUndiDxe/DriverConfiguration.c > @@ -310,6 +310,7 @@ GigUndiDriverConfigurationDisplayMenu ( > @retval EFI_SUCCESS Configuration was successful > **/ > EFI_STATUS > +EFIAPI > GigUndiDriverConfigurationSetOptions ( > IN EFI_DRIVER_CONFIGURATION_PROTOCOL * This, > IN EFI_HANDLE ControllerHandle, > @@ -418,6 +419,7 @@ GigUndiDriverConfigurationSetOptions ( > @retval EFI_SUCCESS Always returned > **/ > EFI_STATUS > +EFIAPI > GigUndiDriverConfigurationOptionsValid ( > IN EFI_DRIVER_CONFIGURATION_PROTOCOL * This, > IN EFI_HANDLE ControllerHandle, > @@ -442,6 +444,7 @@ GigUndiDriverConfigurationOptionsValid ( > @retval EFI_SUCCESS Configuration was successful > **/ > EFI_STATUS > +EFIAPI > GigUndiDriverConfigurationForceDefaults ( > IN EFI_DRIVER_CONFIGURATION_PROTOCOL * This, > IN > EFI_HANDLE ControllerHandl > e, > diff --git a/IntelUndiPkg/GigUndiDxe/DriverDiagnostics.c > b/IntelUndiPkg/GigUndiDxe/DriverDiagnostics.c > index aceb015e480f..f6152cd24c59 100644 > --- a/IntelUndiPkg/GigUndiDxe/DriverDiagnostics.c > +++ b/IntelUndiPkg/GigUndiDxe/DriverDiagnostics.c > @@ -1394,6 +1394,7 @@ Error: > ChildHandle did not pass the > diagnostic. > **/ > EFI_STATUS > +EFIAPI > GigUndiDriverDiagnosticsRunDiagnostics ( > IN EFI_DRIVER_DIAGNOSTICS_PROTOCOL * This, > IN EFI_HANDLE ControllerHandle, > diff --git a/IntelUndiPkg/GigUndiDxe/DriverHealth.c > b/IntelUndiPkg/GigUndiDxe/DriverHealth.c > index b5b7db5fd814..ea306843679a 100644 > --- a/IntelUndiPkg/GigUndiDxe/DriverHealth.c > +++ b/IntelUndiPkg/GigUndiDxe/DriverHealth.c > @@ -44,6 +44,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE > POSSIBILITY OF SUCH DAMAGE. > @retval !EFI_SUCCESS Failure to retrieve health status > **/ > EFI_STATUS > +EFIAPI > GetHealthStatus ( > IN EFI_DRIVER_HEALTH_PROTOCOL * This, > IN EFI_HANDLE ControllerHandle, OPTIONAL > @@ -119,6 +120,7 @@ GetHealthStatus ( > @retval EFI_UNSUPPORTED This function is unsupported > **/ > EFI_STATUS > +EFIAPI > Repair ( > IN EFI_DRIVER_HEALTH_PROTOCOL *This, > IN EFI_HANDLE ControllerHandle, > diff --git a/IntelUndiPkg/GigUndiDxe/StartStop.c > b/IntelUndiPkg/GigUndiDxe/StartStop.c > index 32bed7ce288d..a788da247e6d 100644 > --- a/IntelUndiPkg/GigUndiDxe/StartStop.c > +++ b/IntelUndiPkg/GigUndiDxe/StartStop.c > @@ -38,6 +38,7 @@ EFI_GUID gEfiStartStopProtocolGuid = > EFI_DRIVER_STOP_PROTOCOL_GUID; > @retval EFI_SUCCESS Driver is stopped successfully > **/ > EFI_STATUS > +EFIAPI > StopDriver ( > IN EFI_DRIVER_STOP_PROTOCOL *This > ) > @@ -62,6 +63,7 @@ StopDriver ( > @retval EFI_SUCCESS If driver has restarted successfully > **/ > EFI_STATUS > +EFIAPI > StartDriver ( > IN EFI_DRIVER_STOP_PROTOCOL *This > ) _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel