TianoCore EDK2 master
Loading...
Searching...
No Matches
PciDriverOverride.c File Reference
#include "PciBus.h"

Go to the source code of this file.

Functions

VOID InitializePciDriverOverrideInstance (IN OUT PCI_IO_DEVICE *PciIoDevice)
 
EFI_HANDLE LocateImageHandle (IN EFI_DEVICE_PATH_PROTOCOL *ImagePath)
 
EFI_STATUS EFIAPI GetDriver (IN EFI_BUS_SPECIFIC_DRIVER_OVERRIDE_PROTOCOL *This, IN OUT EFI_HANDLE *DriverImageHandle)
 
EFI_STATUS AddDriver (IN PCI_IO_DEVICE *PciIoDevice, IN EFI_HANDLE DriverImageHandle, IN EFI_DEVICE_PATH_PROTOCOL *DriverImagePath)
 

Detailed Description

Functions implementation for Bus Specific Driver Override protocol.

Copyright (c) 2006 - 2019, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent

Definition in file PciDriverOverride.c.

Function Documentation

◆ AddDriver()

EFI_STATUS AddDriver ( IN PCI_IO_DEVICE PciIoDevice,
IN EFI_HANDLE  DriverImageHandle,
IN EFI_DEVICE_PATH_PROTOCOL DriverImagePath 
)

Add an overriding driver image.

Parameters
PciIoDeviceInstance of PciIo device.
DriverImageHandleImage handle of newly added driver image.
DriverImagePathDevice path of newly added driver image.
Return values
EFI_SUCCESSSuccessfully added driver.
EFI_OUT_OF_RESOURCESNo memory resource for new driver instance.
otherSome error occurred when locating gEfiLoadedImageProtocolGuid.

Definition at line 163 of file PciDriverOverride.c.

◆ GetDriver()

EFI_STATUS EFIAPI GetDriver ( IN EFI_BUS_SPECIFIC_DRIVER_OVERRIDE_PROTOCOL This,
IN OUT EFI_HANDLE DriverImageHandle 
)

Uses a bus specific algorithm to retrieve a driver image handle for a controller.

Parameters
ThisA pointer to the EFI_BUS_SPECIFIC_DRIVER_OVERRIDE_PROTOCOL instance.
DriverImageHandleOn input, a pointer to the previous driver image handle returned by GetDriver(). On output, a pointer to the next driver image handle. Passing in a NULL, will return the first driver image handle.
Return values
EFI_SUCCESSA bus specific override driver is returned in DriverImageHandle.
EFI_NOT_FOUNDThe end of the list of override drivers was reached. A bus specific override driver is not returned in DriverImageHandle.
EFI_INVALID_PARAMETERDriverImageHandle is not a handle that was returned on a previous call to GetDriver().

Definition at line 96 of file PciDriverOverride.c.

◆ InitializePciDriverOverrideInstance()

VOID InitializePciDriverOverrideInstance ( IN OUT PCI_IO_DEVICE PciIoDevice)

Initializes a PCI Driver Override Instance.

Parameters
PciIoDevicePCI Device instance.

Definition at line 18 of file PciDriverOverride.c.

◆ LocateImageHandle()

EFI_HANDLE LocateImageHandle ( IN EFI_DEVICE_PATH_PROTOCOL ImagePath)

Find the image handle whose path equals to ImagePath.

Parameters
ImagePathImage path.
Returns
Image handle.

Definition at line 33 of file PciDriverOverride.c.