2 Copyright (c) 2016, Linaro, Ltd. All rights reserved.<BR>
4 SPDX-License-Identifier: BSD-2-Clause-Patent
8 #ifndef __NON_DISCOVERABLE_DEVICE_REGISTRATION_LIB_H__
9 #define __NON_DISCOVERABLE_DEVICE_REGISTRATION_LIB_H__
11 #include <Protocol/NonDiscoverableDevice.h>
14 NonDiscoverableDeviceTypeAhci
,
15 NonDiscoverableDeviceTypeAmba
,
16 NonDiscoverableDeviceTypeEhci
,
17 NonDiscoverableDeviceTypeNvme
,
18 NonDiscoverableDeviceTypeOhci
,
19 NonDiscoverableDeviceTypeSdhci
,
20 NonDiscoverableDeviceTypeUfs
,
21 NonDiscoverableDeviceTypeUhci
,
22 NonDiscoverableDeviceTypeXhci
,
23 NonDiscoverableDeviceTypeMax
,
24 } NON_DISCOVERABLE_DEVICE_TYPE
;
27 Register a non-discoverable MMIO device
29 @param[in] Type The type of non-discoverable device
30 @param[in] DmaType Whether the device is DMA coherent
31 @param[in] InitFunc Initialization routine to be invoked when
33 @param[in,out] Handle The handle onto which to install the
34 non-discoverable device protocol.
35 If Handle is NULL or *Handle is NULL, a
36 new handle will be allocated.
37 @param[in] NumMmioResources The number of UINTN base/size pairs that
38 follow, each describing an MMIO region
40 @param[in] ... The variable argument list which contains the
41 info about MmioResources.
43 @retval EFI_SUCCESS The registration succeeded.
44 @retval Other The registration failed.
49 RegisterNonDiscoverableMmioDevice (
50 IN NON_DISCOVERABLE_DEVICE_TYPE Type
,
51 IN NON_DISCOVERABLE_DEVICE_DMA_TYPE DmaType
,
52 IN NON_DISCOVERABLE_DEVICE_INIT InitFunc
,
53 IN OUT EFI_HANDLE
*Handle OPTIONAL
,
54 IN UINTN NumMmioResources
,