blob: dbc0981c11a5e7306010652d53a2edd291f7fcf3 [file] [log] [blame]
.. _device-tree/pci:
========================
PCI Device Tree Bindings
========================
The following is an example PCI host bridge and device from a POWER9 machine.
.. code-block:: dts
pciex@600c3c0300000 {
ibm,capi-flags = <0x1>;
ibm,phb-stack-index = <0x0>;
compatible = "ibm,power9-pciex", "ibm,ioda3-phb";
ibm,opal-single-pe;
ibm,opal-num-pes = <0x200>;
ibm,supported-tce-sizes = <0xc 0x10 0x15 0x1e>;
device_type = "pciex";
ibm,opal-peltv-table = <0x0 0x543c0000 0x20000>;
ibm,associativity = <0x4 0x0 0x0 0x1 0x0>;
ibm,phb-diag-data-size = <0x2180>;
ranges = <0x2000000 0x0 0x80000000 0x600c1 0x80000000 0x0 0x7fff0000>;
ibm,lane-eq = <0x54545454 0x54545454 0x54545454 0x54545454 0x54545454
0x54545454 0x54545454 0x54545454 0x77777777 0x77777777
0x77777777 0x77777777>;
status = "okay";
#interrupt-cells = <0x1>;
bus-range = <0x0 0xff>;
interrupt-parent = <0x126>;
#address-cells = <0x3>;
ibm,opal-phbid = <0x0 0x3>;
ibm,opal-pest-table = <0x0 0x543e2000 0x2000>;
ibm,chip-id = <0x0>;
#size-cells = <0x2>;
ibm,opal-m64-segment-splits = <0x200 0x1 0xc 0x0 0x1 0x2 0xc 0x0>;
ibm,opal-m64-window = <0x60200 0x0 0x60200 0x0 0x40 0x0>;
phandle = <0x617>;
ibm,phb-stack = <0xd8>;
ibm,phb-index = <0x3>;
ibm,phb-pec-index = <0x2>; /* skiboot-v6.2 or later */
reg = <0x600c3 0xc0300000 0x0 0x1000 0x600c3 0x60000000 0x0 0x10000000>;
ibm,mmio-windows = <0x60200 0x0 0x40 0x0 0x600c1 0x80000000 0x0 0x80000000>;
clock-frequency = <0x200 0x0>;
ibm,xscom-bases = <0x4011400 0x4011440 0xf010800 0xf010840 0xf010900>;
ibm,opal-reserved-pe = <0x1ff>;
ibm,capp-timebase-sync = [00];
ibm,opal-available-m64-ranges = <0x1 0x1f>;
ibm,opal-rtt-table = <0x0 0x54380000 0x20000>;
ibm,opal-msi-ranges = <0xfc000 0xff8>;
pci@0 {
device_type = "pciex";
revision-id = <0x0>;
ibm,pci-config-space-type = <0x1>;
interrupt-map-mask = <0x0 0x0 0x0 0x7>;
class-code = <0x60400>;
ranges = <0x2000000 0x0 0x0 0x2000000 0x0 0x0 0xf0000000 0x0>;
vendor-id = <0x1014>;
#interrupt-cells = <0x1>;
#address-cells = <0x3>;
interrupt-map = <0x0 0x0 0x0 0x1 0x126 0xfcff8 0x1 0x0 0x0 0x0 0x2 0x126
0xfcff9 0x1 0x0 0x0 0x0 0x3 0x126 0xfcffa 0x1 0x0 0x0 0x0
0x4 0x126 0xfcffb 0x1>;
#size-cells = <0x2>;
device-id = <0x4c1>;
phandle = <0x622>;
reg = <0x0 0x0 0x0 0x0 0x0>;
};
};