1 | /** @file
|
---|
2 | Copyright (c) 2016, Linaro, Ltd. All rights reserved.<BR>
|
---|
3 |
|
---|
4 | SPDX-License-Identifier: BSD-2-Clause-Patent
|
---|
5 |
|
---|
6 | **/
|
---|
7 |
|
---|
8 | #ifndef __NON_DISCOVERABLE_DEVICE_REGISTRATION_LIB_H__
|
---|
9 | #define __NON_DISCOVERABLE_DEVICE_REGISTRATION_LIB_H__
|
---|
10 |
|
---|
11 | #include <Protocol/NonDiscoverableDevice.h>
|
---|
12 |
|
---|
13 | typedef enum {
|
---|
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;
|
---|
25 |
|
---|
26 | /**
|
---|
27 | Register a non-discoverable MMIO device
|
---|
28 |
|
---|
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
|
---|
32 | the device is enabled
|
---|
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
|
---|
39 | owned by the device
|
---|
40 | @param[in] ... The variable argument list which contains the
|
---|
41 | info about MmioResources.
|
---|
42 |
|
---|
43 | @retval EFI_SUCCESS The registration succeeded.
|
---|
44 | @retval Other The registration failed.
|
---|
45 |
|
---|
46 | **/
|
---|
47 | EFI_STATUS
|
---|
48 | EFIAPI
|
---|
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,
|
---|
55 | ...
|
---|
56 | );
|
---|
57 |
|
---|
58 | #endif
|
---|