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

Reply via email to