通訊協定
公車
如 fuchsia.hardware.pci/pci.fidl
Bus 通訊協定會在提供服務的 PCI 上提供 PCI 裝置子項相關資訊。
GetDevices
擷取公車上所有裝置。
要求
<EMPTY>
回應
名稱 | 類型 |
---|---|
devices |
vector<PciDevice>[64]
|
GetHostBridgeInfo
擷取公車涵蓋的路段群組和公車資訊。
要求
<EMPTY>
回應
名稱 | 類型 |
---|---|
info |
HostBridgeInfo
|
ReadBar
從裝置的基地位址暫存器 (BAR) 讀取。BAR 必須是 MMIO 類型。
參數 |device|:要讀取的裝置位址。 |bar_id|:要讀取的 BAR ID。 |offset|:開始讀取的偏移值 (以位元組為單位),預設值為 0 個位元組。|size|:讀取的大小 (預設值:128 個位元組)。讀取的大小上限為 |READBAR_MAX_SIZE|。
錯誤: |ZX_ERR_NOT_FOUND|: |device| 找不到 | device| 或 |bar_id| 不存在於 |device| 中。 |ZX_ERR_INVALID_ARGS|: |bar_id| 無效,或偏移與大小組合在指定的 BAR 大小上無效。 |ZX_ERR_NOT_SUPPORTED|:|bar_id| 指定的 BAR 並非 MMIO BAR。
要求
名稱 | 類型 |
---|---|
device |
Address
|
bar_id |
uint8
|
offset |
uint64
|
size |
uint64
|
回應
名稱 | 類型 |
---|---|
payload |
Bus_ReadBar_Result
|
裝置
定義於 fuchsia.hardware.pci/pci.fidl
AckInterrupt
提醒匯流排驅動程式,停止宣告已產生的舊版中斷情形,使其再次等候。只有在使用 |PCI_INTERRUPT_MODE_LEGACY| 呼叫 |SetInterruptMode| 時才會用到。
錯誤: |ZX_ERR_BAD_STATE|:裝置未設定使用舊版中斷模式。
要求
<EMPTY>
回應
名稱 | 類型 |
---|---|
payload |
Device_AckInterrupt_Result
|
GetBar
擷取指定基本地址註冊 (BAR) 的資訊。如果 BAR 包含 MSI-X 能力資料表,系統會盡可能傳回排除這些資料表的 MMIO 區域。否則會傳回錯誤。
參數: |bar_id|:所要求 BAR 的 ID。有效範圍為 [0, 6]。
錯誤:|ZX_ERR_ACCESS_DENIED|:由於有 MSI-X 資料表,指定的 BAR 沒有驅動程式庫存取的區域。如要使用 MSI-X,請參閱 |SetInterruptMode| 方法。 |ZX_ERR_INTERNAL|:匯流排驅動程式發生錯誤。 |ZX_ERR_INVALID_ARGS|:指定的 |bar_id| 超出可接受的範圍。 |ZX_ERR_NOT_FOUND|:這部裝置沒有指定的 |bar_id|。
要求
名稱 | 類型 |
---|---|
bar_id |
uint32
|
回應
名稱 | 類型 |
---|---|
payload |
Device_GetBar_Result
|
GetBti
傳回裝置指定索引的 Bus Transaction Intiator (BTI)。
參數: |index|:要要求的 BTI。
錯誤: |ZX_ERR_OUT_OF_RANGE|:|index| 不是 0。
要求
名稱 | 類型 |
---|---|
index |
uint32
|
回應
名稱 | 類型 |
---|---|
payload |
Device_GetBti_Result
|
GetCapabilities
傳回設定空間中與所提供能力 |id| 相符的功能的偏移向量。如果找不到對應的相符項目,向量會是空白的。
參數: |id|:要搜尋的能力 ID。
要求
名稱 | 類型 |
---|---|
id |
CapabilityId
|
回應
名稱 | 類型 |
---|---|
offsets |
vector<uint8>[32]
|
GetDeviceInfo
從設定標頭傳回包含裝置資訊的結構。
要求
<EMPTY>
回應
名稱 | 類型 |
---|---|
info |
DeviceInfo
|
GetExtendedCapabilities
在設定空間中,傳回與指定擴充能力 |id| 相符的擴充功能所對應的偏移向量。如果找不到對應的相符項目,向量會是空白的。
參數: |id|:要搜尋的能力 ID
要求
名稱 | 類型 |
---|---|
id |
ExtendedCapabilityId
|
回應
名稱 | 類型 |
---|---|
offsets |
vector<uint16>[32]
|
GetInterruptModes
傳回裝置支援的中斷模式。
要求
<EMPTY>
回應
名稱 | 類型 |
---|---|
modes |
InterruptModes
|
MapInterrupt
對應裝置的中斷情形。裝置的中斷模式必須已經透過 |SetInterruptMode| 設定,|what_irq| 必須為 |GetInterruptModes| 回報的中斷模式中斷次數 >=。舊版中斷可能會多次對應,但控制代碼會指向同一個中斷物件。MSI 和 MSI-X 中斷在每次中斷時,都只能有一項未完成的對應作業。必須先關閉未解決的 MSI 和 MSI-X 中斷控制代碼,才能嘗試在後續呼叫 |SetInterruptMode| 時變更中斷模式。
參數: |what_irq|:要對應的中斷 ID。
錯誤: |ZX_ERR_ALREADY_BOUND|:由 |which_irq| 指定的中斷事件已對應至有效的帳號代碼。|ZX_ERR_BAD_STATE|:裝置的干擾功能目前已停用。 |ZX_ERR_INVALID_ARGS|: |which_irq| 對模式無效。
要求
名稱 | 類型 |
---|---|
which_irq |
uint32
|
回應
名稱 | 類型 |
---|---|
payload |
Device_MapInterrupt_Result
|
ReadConfig16
這個外掛程式能從裝置的設定空間讀取兩個位元組。如果是 PCI,則 |Offset| 的值必須在 [0x0, 0xFE] 以內;如為 PCI,則必須介於 [0x0, 0xFFE]。在大多數情況下,裝置是 PCIe。
參數: |offset|:要讀取的裝置設定空間的偏移值。
錯誤: |ZX_ERR_OUT_OF_RANGE|: |offset| 是無效的地址。
要求
名稱 | 類型 |
---|---|
offset |
ExtendedConfigOffset
|
回應
名稱 | 類型 |
---|---|
payload |
Device_ReadConfig16_Result
|
ReadConfig32
這個外掛程式能從裝置的設定空間讀取四個位元組。如果 PCI 的話,|Offset| 的值必須在 [0x0, 0xFC] 之內;如果 PCIe,則為 [0x0, 0xFFC]。在大多數情況下,裝置是 PCIe。
參數: |offset|:要讀取的裝置設定空間的偏移值。
錯誤: |ZX_ERR_OUT_OF_RANGE|: |offset| 是無效的地址。
要求
名稱 | 類型 |
---|---|
offset |
ExtendedConfigOffset
|
回應
名稱 | 類型 |
---|---|
payload |
Device_ReadConfig32_Result
|
ReadConfig8
這個外掛程式能從裝置的設定空間讀取位元組。如果 PCI 時使用的是 |Offset| 值,就必須在 [0x0, 0xFF] 以內;如為 PCIe,則必須介於 [0x0, 0xFFF]。在大多數情況下,裝置是 PCIe。
參數: |offset|:要讀取的裝置設定空間的偏移值。
錯誤: |ZX_ERR_OUT_OF_RANGE|: |offset| 是無效的地址。
要求
名稱 | 類型 |
---|---|
offset |
ExtendedConfigOffset
|
回應
名稱 | 類型 |
---|---|
payload |
Device_ReadConfig8_Result
|
ResetDevice
啟動裝置的函式層級重設。這項同步作業在重設完成後不會傳回。啟動重設前,必須先停用裝置的中斷作業。
錯誤: |ZX_ERR_BAD_STATE|:通話前未停用中斷功能。 |ZX_ERR_NOT_SUPPORTED|:裝置不支援重設。 |ZX_ERR_TIMED_OUT|:裝置未於預期內完成重設,因此推斷不再正常運作。
要求
<EMPTY>
回應
名稱 | 類型 |
---|---|
payload |
Device_ResetDevice_Result
|
SetBusMastering
啟用或停用裝置的匯流排主能力。
參數: |enable|: true 啟用公車主控功能,false 則停用。
錯誤: |ZX_ERR_BAD_STATE|:裝置停用時呼叫這個方法。
要求
名稱 | 類型 |
---|---|
enabled |
bool
|
回應
名稱 | 類型 |
---|---|
payload |
Device_SetBusMastering_Result
|
SetInterruptMode
設定裝置的中斷模式。從某個中斷模式變更為其他驅動程式庫時,必須事先關閉現有的中斷控制代碼。
參數: |mode|: |InterruptMode| 向匯流排驅動程式要求。 |requested_irq_count|:要求的中斷次數。
錯誤: |ZX_ERR_BAD_STATE|:在現有的控制中心存在對應的 MSI 時,驅動程式庫嘗試變更中斷模式。 |ZX_ERR_INVALID_ARGS|: |requested_irq_count| 為 0。 |ZX_ERR_NOT_SUPPORTED|:不支援提供的 |mode| 或無效。
要求
名稱 | 類型 |
---|---|
mode |
InterruptMode
|
requested_irq_count |
uint32
|
回應
名稱 | 類型 |
---|---|
payload |
Device_SetInterruptMode_Result
|
WriteConfig16
將兩個位元組寫入裝置的設定空間。適用於寫入的 |offset| 範圍為 [0x40,0xFE] (如果 PCI 的話) 或 [0x40, 0xFFE] (如果 PCIe)。在大多數情況下,裝置會是 PCIe。
參數 |offset|:要讀取的裝置設定空間的偏移值。|value|:要寫入的值。
錯誤: |ZX_ERR_ACCESS_DENIED|: |offset| 位於裝置的設定標頭中。 |ZX_ERR_OUT_OF_RANGE|:|offset| 是無效的地址。
要求
名稱 | 類型 |
---|---|
offset |
ExtendedConfigOffset
|
value |
uint16
|
回應
名稱 | 類型 |
---|---|
payload |
Device_WriteConfig16_Result
|
WriteConfig32
將四個位元組寫入裝置的設定空間。如果是 PCI,寫入的 |offset| 範圍為 [0x40, 0xFC],PCIe 則為 [0x40, 0xFFC]。在大多數情況下,裝置會是 PCIe。
參數 |offset|:要讀取的裝置設定空間的偏移值。|value|:要寫入的值。
錯誤: |ZX_ERR_ACCESS_DENIED|: |offset| 位於裝置的設定標頭中。 |ZX_ERR_OUT_OF_RANGE|:|offset| 是無效的地址。
要求
名稱 | 類型 |
---|---|
offset |
ExtendedConfigOffset
|
value |
uint32
|
回應
名稱 | 類型 |
---|---|
payload |
Device_WriteConfig32_Result
|
WriteConfig8
將位元組寫入裝置的設定空間。PCI 適用的 |偏移| 適用的範圍為 [0x40,0xFF];PCIe 則為 [0x40, 0xFFF]。在大多數情況下,裝置會是 PCIe。
參數 |offset|:要讀取的裝置設定空間的偏移值。|value|:要寫入的值。
錯誤: |ZX_ERR_ACCESS_DENIED|: |offset| 位於裝置的設定標頭中。 |ZX_ERR_OUT_OF_RANGE|:|offset| 是無效的地址。
要求
名稱 | 類型 |
---|---|
offset |
ExtendedConfigOffset
|
value |
uint8
|
回應
名稱 | 類型 |
---|---|
payload |
Device_WriteConfig8_Result
|
結構化
地址
如 fuchsia.hardware.pci/pci.fidl
PCI 裝置的位址,
廣闊 | 類型 | 說明 | 預設 |
---|---|---|---|
bus |
uint8
|
無預設 | |
device |
uint8
|
無預設 | |
function |
uint8
|
無預設 |
酒吧資源
如 fuchsia.hardware.pci/pci.fidl
說明並提供裝置指定的基準地址註冊權限。
廣闊 | 類型 | 說明 | 預設 |
---|---|---|---|
bar_id |
uint32
|
BAR ID [0-5)。 |
無預設 |
size |
uint64
|
無預設 | |
result |
BarResult
|
無預設 |
BaseAddress
定義於 fuchsia.hardware.pci/pci.fidl
廣闊 | 類型 | 說明 | 預設 |
---|---|---|---|
address |
uint64
|
無預設 | |
size |
uint64
|
無預設 | |
is_memory |
bool
|
無預設 | |
is_prefetchable |
bool
|
無預設 | |
is_64bit |
bool
|
無預設 | |
id |
uint8
|
無預設 |
Bus_ReadBar_Response
定義於 fuchsia.hardware.pci/pci.fidl
廣闊 | 類型 | 說明 | 預設 |
---|---|---|---|
buffer |
vector<uint8>
|
無預設 |
功能
定義於 fuchsia.hardware.pci/pci.fidl
廣闊 | 類型 | 說明 | 預設 |
---|---|---|---|
id |
uint8
|
無預設 | |
offset |
uint8
|
無預設 |
DeviceInfo
如 fuchsia.hardware.pci/pci.fidl
裝置設定標頭中的裝置專屬資訊。PCI 本地匯流排規格 v3,第 6.1 章。
廣闊 | 類型 | 說明 | 預設 |
---|---|---|---|
vendor_id |
uint16
|
裝置識別資訊。 |
無預設 |
device_id |
uint16
|
無預設 | |
base_class |
uint8
|
無預設 | |
sub_class |
uint8
|
無預設 | |
program_interface |
uint8
|
無預設 | |
revision_id |
uint8
|
無預設 | |
bus_id |
uint8
|
與公車拓撲中裝置位置的相關資訊。 |
無預設 |
dev_id |
uint8
|
無預設 | |
func_id |
uint8
|
無預設 | |
padding |
Padding
|
無預設 |
Device_AckInterrupt_Response
定義於 fuchsia.hardware.pci/pci.fidl
<EMPTY>
Device_GetBar_Response 資源
定義於 fuchsia.hardware.pci/pci.fidl
廣闊 | 類型 | 說明 | 預設 |
---|---|---|---|
result |
Bar
|
無預設 |
Device_GetBti_Response 資源
定義於 fuchsia.hardware.pci/pci.fidl
廣闊 | 類型 | 說明 | 預設 |
---|---|---|---|
bti |
handle<bti>
|
無預設 |
Device_MapInterrupt_Response 資源
定義於 fuchsia.hardware.pci/pci.fidl
廣闊 | 類型 | 說明 | 預設 |
---|---|---|---|
interrupt |
handle<interrupt>
|
無預設 |
Device_ReadConfig16_Response
定義於 fuchsia.hardware.pci/pci.fidl
廣闊 | 類型 | 說明 | 預設 |
---|---|---|---|
value |
uint16
|
無預設 |
Device_ReadConfig32_Response
定義於 fuchsia.hardware.pci/pci.fidl
廣闊 | 類型 | 說明 | 預設 |
---|---|---|---|
value |
uint32
|
無預設 |
Device_ReadConfig8_Response
定義於 fuchsia.hardware.pci/pci.fidl
廣闊 | 類型 | 說明 | 預設 |
---|---|---|---|
value |
uint8
|
無預設 |
Device_ResetDevice_Response
定義於 fuchsia.hardware.pci/pci.fidl
<EMPTY>
Device_SetBusMastering_Response
定義於 fuchsia.hardware.pci/pci.fidl
<EMPTY>
Device_SetInterruptMode_Response
定義於 fuchsia.hardware.pci/pci.fidl
<EMPTY>
Device_WriteConfig16_Response
定義於 fuchsia.hardware.pci/pci.fidl
<EMPTY>
Device_WriteConfig32_Response
定義於 fuchsia.hardware.pci/pci.fidl
<EMPTY>
Device_WriteConfig8_Response
定義於 fuchsia.hardware.pci/pci.fidl
<EMPTY>
ExtendedCapability
定義於 fuchsia.hardware.pci/pci.fidl
廣闊 | 類型 | 說明 | 預設 |
---|---|---|---|
id |
uint16
|
無預設 | |
offset |
uint16
|
無預設 |
HostBridgeInfo
定義於 fuchsia.hardware.pci/pci.fidl
廣闊 | 類型 | 說明 | 預設 |
---|---|---|---|
name |
string[32]
|
無預設 | |
start_bus_number |
uint8
|
無預設 | |
end_bus_number |
uint8
|
無預設 | |
segment_group |
uint16
|
無預設 |
InterruptModes
如 fuchsia.hardware.pci/pci.fidl
由 |GetInterruptModes| 傳回,包含特定 PCI 裝置中斷模式支援的中斷次數。如果不支援,系統會傳回 0。
廣闊 | 類型 | 說明 | 預設 |
---|---|---|---|
has_legacy |
bool
|
如果裝置支援舊版中斷功能,則為 |True|。 |
無預設 |
msi_count |
uint8
|
支援的訊息訊號中斷數量。會達到 [0, 0x8] (視裝置支援的而定)。 |
無預設 |
msix_count |
uint16
|
支援的 MSI-X 中斷次數。尺寸可介於 [0, 0x800] 之間,實際情形視裝置和平台支援情況而定。 |
無預設 |
IoBar 資源
定義於 fuchsia.hardware.pci/pci.fidl
廣闊 | 類型 | 說明 | 預設 |
---|---|---|---|
address |
uint64
|
無預設 | |
resource |
handle<resource>
|
無預設 |
邊框間距
定義於 fuchsia.hardware.pci/pci.fidl
<EMPTY>
PciDevice
定義於 fuchsia.hardware.pci/pci.fidl
廣闊 | 類型 | 說明 | 預設 |
---|---|---|---|
base_addresses |
vector<BaseAddress>[6]
|
無預設 | |
capabilities |
vector<Capability>[32]
|
無預設 | |
ext_capabilities |
vector<ExtendedCapability>[32]
|
無預設 | |
config |
vector<uint8>[256]
|
無預設 | |
bus_id |
uint8
|
無預設 | |
device_id |
uint8
|
無預設 | |
function_id |
uint8
|
無預設 |
ENUMS
CapabilityId 彈性
類型:uint8
如 fuchsia.hardware.pci/pci.fidl
PCI 功能 ID。PCI 本地匯流排規格 v3,附錄 H。
名稱 | 值 | 說明 |
---|---|---|
NULL |
0 |
|
PCI_PWR_MGMT |
1 |
|
AGP |
2 |
|
VITAL_PRODUCT_DATA |
3 |
|
SLOT_IDENTIFICATION |
4 |
|
微星 |
5 |
|
COMPACT_PCI_HOTSWAP |
6 |
|
PCIX |
7 |
|
半傳輸 |
8 |
|
VENDOR |
9 |
|
DEBUG_PORT |
10 |
|
COMPACT_PCI_CRC |
11 |
|
PCI_HOT_PLUG |
12 |
|
PCI_BRIDGE_SUBSYSTEM_VID |
13 |
|
AGP8X |
14 |
|
SECURE_DEVICE |
15 |
|
PCI_EXPRESS |
16 |
|
MSIX |
17 |
|
SATA_DATA_NDX_CFG |
18 |
|
ADVANCED_FEATURES |
19 |
|
ENHANCED_ALLOCATION |
20 |
|
FLATTENING_PORTAL_BRIDGE |
21 |
設定彈性
類型:uint16
如 fuchsia.hardware.pci/pci.fidl
PCI 設定標頭會註冊。PCI 本地匯流排規格 v3,第 6.1 章。
名稱 | 值 | 說明 |
---|---|---|
VENDOR_ID |
0 |
|
DEVICE_ID |
2 |
|
指令 |
4 |
|
狀態 |
6 |
|
REVISION_ID |
8 |
|
CLASS_CODE_INTR |
9 |
|
CLASS_CODE_SUB |
10 |
|
CLASS_CODE_BASE |
11 |
|
CACHE_LINE_SIZE |
12 |
|
LATENCY_TIMER |
13 |
|
HEADER_TYPE |
14 |
|
BIST |
15 |
|
BASE_ADDRESSES |
16 |
|
CARDBUS_CIS_PTR |
40 |
|
SUBSYSTEM_VENDOR_ID |
44 |
|
SUBSYSTEM_ID |
46 |
|
EXP_ROM_ADDRESS |
48 |
|
CAPABILITIES_PTR |
52 |
|
INTERRUPT_LINE |
60 |
|
INTERRUPT_PIN |
61 |
|
MIN_GRANT |
62 |
|
MAX_LATENCY |
63 |
ExtendedCapabilityId 彈性
類型:uint16
如 fuchsia.hardware.pci/pci.fidl
PCI 擴充功能 ID。PCIe Base 規格 v4,第 7.6 章。
名稱 | 值 | 說明 |
---|---|---|
NULL |
0 |
|
ADVANCED_ERROR_REPORTING |
1 |
|
VIRTUAL_CHANNEL_NO_MFVC |
2 |
|
DEVICE_SERIAL_NUMBER |
3 |
|
POWER_BUDGETING |
4 |
|
ROOT_COMPLEX_LINK_DECLARATION |
5 |
|
ROOT_COMPLEX_INTERNAL_LINK_CONTROL |
6 |
|
ROOT_COMPLEX_EVENT_COLLECTOR_ENDPOINT_ASSOCIATION |
7 |
|
MULTI_FUNCTION_VIRTUAL_CHANNEL |
8 |
|
VIRTUAL_CHANNEL |
9 |
|
RCRB |
10 |
|
VENDOR |
11 |
|
獲客成本 |
12 |
|
ACS |
13 |
|
ARI |
14 |
|
技術支援服務 (ATS) |
15 |
|
SR_IOV |
16 |
|
MR_IOV |
17 |
|
多廣播 |
18 |
|
秘魯新索爾 |
19 |
|
ENHANCED_ALLOCATION |
20 |
|
RESIZABLE_BAR |
21 |
|
DYNAMIC_POWER_ALLOCATION |
22 |
|
TPH |
23 |
|
LATENCY_TOLERANCE_REPORTING |
24 |
|
SECONDARY_PCI_EXPRESS |
25 |
|
PMUX 使用者體驗 |
26 |
|
傳遞 |
27 |
|
LNR |
28 |
|
裝置政策控制器 (DPC) |
29 |
|
L1PM_SUBSTATES |
30 |
|
PRECISION_TIME_MEASUREMENT |
31 |
|
MPCIE |
32 |
|
FRS_QUEUEING |
33 |
|
READINESS_TIME_REPORTING |
34 |
|
DESIGNATED_VENDOR |
35 |
|
VF_RESIZABLE_BAR |
36 |
|
DATA_LINK_FEATURE |
37 |
|
PHYSICAL_LAYER_16 |
38 |
|
LANE_MARGINING_AT_RECEIVER |
39 |
|
HIERARCHY_ID |
40 |
|
NATIVE_PCIE_ENCLOSURE |
41 |
|
PHYSICAL_LAYER_32 |
42 |
|
ALTERNATE_PROTOCOL |
43 |
|
SYSTEM_FIRMWARE_INTERMEDIARY |
44 |
HeaderType彈性
類型:uint8
定義於 fuchsia.hardware.pci/pci.fidl
名稱 | 值 | 說明 |
---|---|---|
標準 |
0 |
|
BRIDGE |
1 |
|
CARD_BUS |
2 |
|
數學 |
127 |
|
MULTI_FN |
128 |
InterruptMode 彈性
類型:uint8
如 fuchsia.hardware.pci/pci.fidl
與 ||SetInterruptMode| 搭配使用,設定裝置的中斷模式。 設定為使用 LEGACY Irq 模式的裝置必須在提供服務後呼叫 |AckInterrupt| 以確認幹擾。如要避免發生此狀況,可以使用 LEGACY_NOACK,但如果 PCI 匯流排系統在特定期間內看到過多中斷觸發事件,就會停用驅動程式的中斷函式。
名稱 | 值 | 說明 |
---|---|---|
DISABLED |
0 |
|
LEGACY |
1 |
舊版中斷模式。 |
LEGACY_NOACK |
2 |
舊版中斷模式 (不含確認,請參閱 |AckInterrupt|)。 |
微星 |
3 |
MSI (訊息信號中斷) 模式。 |
MSI_X |
4 |
MSI-X 模式。 |
聯合國
BarResult 彈性 資源
如 fuchsia.hardware.pci/pci.fidl
序數 | Variant | 類型 | 說明 |
---|---|---|---|
1 |
io |
IoBar
|
|
2 |
vmo |
handle<vmo>
|
Bus_ReadBar_Result 嚴格
如 fuchsia.hardware.pci/pci.fidl
序數 | Variant | 類型 | 說明 |
---|---|---|---|
1 |
response |
Bus_ReadBar_Response
|
|
2 |
err |
zx/Status
|
Device_AckInterrupt_Result 嚴格
如 fuchsia.hardware.pci/pci.fidl
序數 | Variant | 類型 | 說明 |
---|---|---|---|
1 |
response |
Device_AckInterrupt_Response
|
|
2 |
err |
zx/Status
|
Device_GetBar_Result 嚴格 資源
如 fuchsia.hardware.pci/pci.fidl
序數 | Variant | 類型 | 說明 |
---|---|---|---|
1 |
response |
Device_GetBar_Response
|
|
2 |
err |
zx/Status
|
Device_GetBti_Result 嚴格 資源
如 fuchsia.hardware.pci/pci.fidl
序數 | Variant | 類型 | 說明 |
---|---|---|---|
1 |
response |
Device_GetBti_Response
|
|
2 |
err |
zx/Status
|
Device_MapInterrupt_Result 嚴格 資源
如 fuchsia.hardware.pci/pci.fidl
序數 | Variant | 類型 | 說明 |
---|---|---|---|
1 |
response |
Device_MapInterrupt_Response
|
|
2 |
err |
zx/Status
|
Device_ReadConfig16_Result 嚴格
如 fuchsia.hardware.pci/pci.fidl
序數 | Variant | 類型 | 說明 |
---|---|---|---|
1 |
response |
Device_ReadConfig16_Response
|
|
2 |
err |
zx/Status
|
Device_ReadConfig32_Result 嚴格
如 fuchsia.hardware.pci/pci.fidl
序數 | Variant | 類型 | 說明 |
---|---|---|---|
1 |
response |
Device_ReadConfig32_Response
|
|
2 |
err |
zx/Status
|
Device_ReadConfig8_Result 嚴格
如 fuchsia.hardware.pci/pci.fidl
序數 | Variant | 類型 | 說明 |
---|---|---|---|
1 |
response |
Device_ReadConfig8_Response
|
|
2 |
err |
zx/Status
|
Device_ResetDevice_Result 嚴格
如 fuchsia.hardware.pci/pci.fidl
序數 | Variant | 類型 | 說明 |
---|---|---|---|
1 |
response |
Device_ResetDevice_Response
|
|
2 |
err |
zx/Status
|
Device_SetBusMastering_Result 嚴格
如 fuchsia.hardware.pci/pci.fidl
序數 | Variant | 類型 | 說明 |
---|---|---|---|
1 |
response |
Device_SetBusMastering_Response
|
|
2 |
err |
zx/Status
|
Device_SetInterruptMode_Result (嚴格)
如 fuchsia.hardware.pci/pci.fidl
序數 | Variant | 類型 | 說明 |
---|---|---|---|
1 |
response |
Device_SetInterruptMode_Response
|
|
2 |
err |
zx/Status
|
Device_WriteConfig16_Result 嚴格
如 fuchsia.hardware.pci/pci.fidl
序數 | Variant | 類型 | 說明 |
---|---|---|---|
1 |
response |
Device_WriteConfig16_Response
|
|
2 |
err |
zx/Status
|
Device_WriteConfig32_Result 嚴格
如 fuchsia.hardware.pci/pci.fidl
序數 | Variant | 類型 | 說明 |
---|---|---|---|
1 |
response |
Device_WriteConfig32_Response
|
|
2 |
err |
zx/Status
|
Device_WriteConfig8_Result 嚴格
如 fuchsia.hardware.pci/pci.fidl
序數 | Variant | 類型 | 說明 |
---|---|---|---|
1 |
response |
Device_WriteConfig8_Response
|
|
2 |
err |
zx/Status
|
帳單
指令彈性
類型:uint16
定義於 fuchsia.hardware.pci/pci.fidl
名稱 | 值 | 說明 |
---|---|---|
IO_EN |
1 | |
MEM_EN |
2 | |
BUS_MASTER_EN |
4 | |
SPECIAL_EN |
8 | |
MEM_WR_INV_EN |
16 | |
PAL_SNOOP_EN |
32 | |
PERR_RESP_EN |
64 | |
AD_STEP_EN |
128 | |
SERR_EN |
256 | |
FAST_B2B_EN |
512 |
狀態彈性
類型:uint16
定義於 fuchsia.hardware.pci/pci.fidl
名稱 | 值 | 說明 |
---|---|---|
間歇性 |
8 | |
NEW_CAPS |
16 | |
SIXTYSIX_MHZ |
32 | |
FAST_B2B |
128 | |
MSTR_PERR |
256 | |
DEVSEL_LOW |
512 | |
DEVSEL_HIGH |
1024 | |
TARG_ABORT_SIG |
2048 | |
TARG_ABORT_RCV |
4096 | |
MSTR_ABORT_RCV |
8192 | |
SERR_SIG |
16384 | |
秘魯 |
32768 |
業者
名稱 | 值 | 類型 | 說明 |
---|---|---|---|
BASE_ADDRESS_COUNT |
6
|
uint32 |
|
BASE_CONFIG_SIZE |
256
|
uint32 |
|
EXTENDED_CONFIG_SIZE |
4096
|
uint32 |
|
MAX_BAR_COUNT |
6
|
uint8 |
|
MAX_CAPABILITIES |
32
|
uint32 |
|
MAX_DEVICES |
64
|
uint32 |
|
MAX_EXT_CAPABILITIES |
32
|
uint32 |
|
MAX_NAME_LEN |
32
|
uint32 |
|
READBAR_MAX_SIZE |
1024
|
uint32 |
|
STATUS_DEVSEL_MASK |
別名
名稱 | 值 | 說明 |
---|---|---|
ConfigOffset |
uint8 |
與裝置 PCI 設定空間開頭的偏移值。[0, 0x100) 有效。 |
ExtendedConfigOffset |
uint16 |
與裝置 PCIe 設定空間開頭的偏移值。[0, 0x800) 有效。 |
服務
服務
如 fuchsia.hardware.pci/pci.fidl
名稱 | 類型 | 傳輸 |
---|---|---|
device |
fuchsia.hardware.pci/Device
|
版本 |