Commit | Line | Data |
---|---|---|
f12b76e5 DD |
1 | * ThunderX PEM PCIe host controller |
2 | ||
3 | Firmware-initialized PCI host controller found on some Cavium | |
4 | ThunderX processors. | |
5 | ||
6 | The properties and their meanings are identical to those described in | |
7 | host-generic-pci.txt except as listed below. | |
8 | ||
9 | Properties of the host controller node that differ from | |
10 | host-generic-pci.txt: | |
11 | ||
12 | - compatible : Must be "cavium,pci-host-thunder-pem" | |
13 | ||
14 | - reg : Two entries: First the configuration space for down | |
15 | stream devices base address and size, as accessed | |
16 | from the parent bus. Second, the register bank of | |
17 | the PEM device PCIe bridge. | |
18 | ||
19 | Example: | |
20 | ||
21 | pci@87e0,c2000000 { | |
22 | compatible = "cavium,pci-host-thunder-pem"; | |
23 | device_type = "pci"; | |
24 | msi-parent = <&its>; | |
25 | msi-map = <0 &its 0x10000 0x10000>; | |
26 | bus-range = <0x8f 0xc7>; | |
27 | #size-cells = <2>; | |
28 | #address-cells = <3>; | |
29 | ||
30 | reg = <0x8880 0x8f000000 0x0 0x39000000>, /* Configuration space */ | |
31 | <0x87e0 0xc2000000 0x0 0x00010000>; /* PEM space */ | |
32 | ranges = <0x01000000 0x00 0x00020000 0x88b0 0x00020000 0x00 0x00010000>, /* I/O */ | |
33 | <0x03000000 0x00 0x10000000 0x8890 0x10000000 0x0f 0xf0000000>, /* mem64 */ | |
34 | <0x43000000 0x10 0x00000000 0x88a0 0x00000000 0x10 0x00000000>, /* mem64-pref */ | |
35 | <0x03000000 0x87e0 0xc2f00000 0x87e0 0xc2000000 0x00 0x00100000>; /* mem64 PEM BAR4 */ | |
36 | ||
37 | #interrupt-cells = <1>; | |
38 | interrupt-map-mask = <0 0 0 7>; | |
39 | interrupt-map = <0 0 0 1 &gic0 0 0 0 24 4>, /* INTA */ | |
40 | <0 0 0 2 &gic0 0 0 0 25 4>, /* INTB */ | |
41 | <0 0 0 3 &gic0 0 0 0 26 4>, /* INTC */ | |
42 | <0 0 0 4 &gic0 0 0 0 27 4>; /* INTD */ | |
43 | }; |