| // SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later |
| /* |
| * base POWER9 device tree |
| */ |
| |
| /dts-v1/; |
| |
| / { |
| compatible = "ibm,powernv"; |
| model = "BML"; |
| #size-cells = <0x2>; |
| #address-cells = <0x2>; |
| |
| chosen { |
| linux,pci-assign-all-buses = <0x1>; |
| linux,pci-probe-only = <0x0>; |
| linux,platform = <0x100>; |
| ibm,architecture-vec-5 = <0x0 0x800000>; |
| linux,initrd-start = <0x0 0x28000000>; |
| linux,initrd-end = <0x0 0x30000000>; |
| }; |
| |
| memory@0 { |
| reg = <0x0 0x0 0x0 0x80000000>; |
| ibm,chip-id = <0x0>; |
| device_type = "memory"; |
| }; |
| |
| cpus { |
| #size-cells = <0x0>; |
| #address-cells = <0x1>; |
| |
| PowerPC,POWER9@0 { |
| device_type = "cpu"; |
| status = "okay"; |
| ibm,chip-id = <0x0>; |
| ibm,pir = <0x0>; |
| timebase-frequency = <0x1c4fecc0>; |
| clock-frequency = <0xe27f6600>; |
| ibm,segment-page-sizes = <0xc 0x0 0x1 0xc 0x0 0x10 0x110 0x1 0x10 0x1 0x14 0x111 0x1 0x14 0x2 0x18 0x100 0x1 0x18 0x0 0x22 0x120 0x1 0x22 0x3>; |
| ibm,processor-segment-sizes = <0x1c 0xffffffff 0xffffffff 0xffffffff>; |
| ibm,pa-features = <0x600f63f 0xc70080c0>; |
| i-cache-size = <0x8000>; |
| d-cache-size = <0x8000>; |
| i-cache-line-size = <0x80>; |
| d-cache-line-size = <0x80>; |
| ibm,slb-size = <0x20>; |
| ibm,vmx = <0x2>; |
| reg = <0x0>; |
| ibm,ppc-interrupt-server#s = <0x0>; |
| }; |
| }; |
| |
| xscom@603fc00000000 { |
| compatible = "ibm,xscom", "ibm,power9-xscom"; |
| ibm,chip-id = <0x0>; |
| #size-cells = <0x1>; |
| #address-cells = <0x1>; |
| reg = <0x603fc 0x0 0x8 0x0>; |
| |
| /* PE#0 supports only one stack */ |
| pbcq@4010c00 { |
| ibm,pec-index = <0x0>; |
| reg = <0x4010c00 0x100 0xd010800 0x200>; |
| compatible = "ibm,power9-pbcq"; |
| #address-cells = <0x1>; |
| #size-cells = <0x0>; |
| |
| stack@0 { |
| /* Stack number */ |
| reg = <0x0>; |
| /* Chip-scope PHB index */ |
| ibm,phb-index = <0x0>; |
| compatible = "ibm,power9-phb-stack"; |
| status = "okay"; |
| }; |
| }; |
| |
| /* PE#1 supports two stacks */ |
| pbcq@4011000 { |
| ibm,pec-index = <0x1>; |
| reg = <0x4011000 0x100 0xe010800 0x200>; |
| compatible = "ibm,power9-pbcq"; |
| #address-cells = <0x1>; |
| #size-cells = <0x0>; |
| |
| stack@0 { |
| reg = <0x0>; |
| ibm,phb-index = <0x1>; |
| compatible = "ibm,power9-phb-stack"; |
| status = "okay"; |
| }; |
| |
| stack@1 { |
| reg = <0x1>; |
| ibm,phb-index = <0x2>; |
| compatible = "ibm,power9-phb-stack"; |
| status = "okay"; |
| }; |
| }; |
| |
| /* PE#2 supports three stacks */ |
| pbcq@4011400 { |
| ibm,pec-index = <0x2>; |
| reg = <0x4011400 0x100 0xf010800 0x200>; |
| compatible = "ibm,power9-pbcq"; |
| #address-cells = <0x1>; |
| #size-cells = <0x0>; |
| |
| stack@0 { |
| reg = <0x0>; |
| ibm,phb-index = <0x3>; |
| compatible = "ibm,power9-phb-stack"; |
| status = "disabled"; |
| }; |
| |
| stack@1 { |
| reg = <0x1>; |
| ibm,phb-index = <0x4>; |
| compatible = "ibm,power9-phb-stack"; |
| status = "disabled"; |
| }; |
| |
| stack@2 { |
| reg = <0x2>; |
| ibm,phb-index = <0x5>; |
| compatible = "ibm,power9-phb-stack"; |
| status = "disabled"; |
| }; |
| }; |
| |
| chiptod@40000 { |
| primary; |
| reg = <0x40000 0x34>; |
| compatible = "ibm,power-chiptod", "ibm,power9-chiptod"; |
| }; |
| |
| xive@5013400 { |
| reg = <0x5013000 0x300>; |
| compatible = "ibm,power9-xive-x"; |
| }; |
| |
| psihb@5012900 { |
| reg = <0x5012900 0x100>; |
| compatible = "ibm,power9-psihb-x", "ibm,psihb-x"; |
| |
| /* |
| * This acts as an interrupt remapper for the 16 |
| * interrupts coming into the PSI HB. |
| * OPAL will generate the corresponding interrupt-map |
| * property with the final XIVE numbers |
| */ |
| #interrupt-cells = <0x1>; |
| #address-cells = <0x0>; |
| #interrupt-map-mask = <0xff>; |
| }; |
| |
| nx@2010000 { |
| reg = <0x2010000 0x4000>; |
| compatible = "ibm,power9-nx"; |
| }; |
| }; |
| |
| lpcm-opb@6030000000000 { |
| #address-cells = <0x1>; |
| #size-cells = <0x1>; |
| compatible = "ibm,power9-lpcm-opb", "simple-bus"; |
| ibm,chip-id = <0x0>; |
| ranges = <0x00000000 0x60300 0x00000000 0x80000000 |
| 0x80000000 0x60300 0x80000000 0x80000000>; |
| |
| opb-master@c0010000 { |
| compatible = "ibm,power9-lpcm-opb-master"; |
| reg = <0xc0010000 0x60>; |
| }; |
| |
| opb-arbiter@c0011000 { |
| compatible = "ibm,power9-lpcm-opb-arbiter"; |
| reg = <0xc0011000 0x8>; |
| }; |
| |
| lpc-controller@c0012000 { |
| compatible = "ibm,power9-lpc-controller"; |
| reg = <0xc0012000 0x100>; |
| }; |
| |
| lpc@f0000000 { |
| compatible = "ibm,power9-lpc"; |
| #address-cells = <0x2>; |
| #size-cells = <0x1>; |
| ranges = <0x3 0x0 0xf0000000 0x10000000 /* FW space */ |
| 0x0 0x0 0xe0000000 0x10000000 /* MEM space */ |
| 0x1 0x0 0xd0010000 0x00010000 /* IO space */ >; |
| |
| /* Devices on the LPC bus go here */ |
| |
| serial@i3f8 { |
| compatible = "ns16550"; |
| reg = <0x1 0x3f8 0x10>; |
| current-speed = <0x1c200>; |
| clock-frequency = <0x1c2000>; |
| interrupts = <0x4>; |
| }; |
| |
| ipmi@ie4 { |
| compatible = "ipmi-bt"; |
| reg = <0x1 0xe4 0x3>; |
| interrupts = <0x10>; |
| }; |
| }; |
| }; |
| }; |