18c2ecf20Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * DTS file for AMD Seattle SoC 48c2ecf20Sopenharmony_ci * 58c2ecf20Sopenharmony_ci * Copyright (C) 2014 Advanced Micro Devices, Inc. 68c2ecf20Sopenharmony_ci */ 78c2ecf20Sopenharmony_ci 88c2ecf20Sopenharmony_ci/ { 98c2ecf20Sopenharmony_ci compatible = "amd,seattle"; 108c2ecf20Sopenharmony_ci interrupt-parent = <&gic0>; 118c2ecf20Sopenharmony_ci #address-cells = <2>; 128c2ecf20Sopenharmony_ci #size-cells = <2>; 138c2ecf20Sopenharmony_ci 148c2ecf20Sopenharmony_ci gic0: interrupt-controller@e1101000 { 158c2ecf20Sopenharmony_ci compatible = "arm,gic-400", "arm,cortex-a15-gic"; 168c2ecf20Sopenharmony_ci interrupt-controller; 178c2ecf20Sopenharmony_ci #interrupt-cells = <3>; 188c2ecf20Sopenharmony_ci #address-cells = <2>; 198c2ecf20Sopenharmony_ci #size-cells = <2>; 208c2ecf20Sopenharmony_ci reg = <0x0 0xe1110000 0 0x1000>, 218c2ecf20Sopenharmony_ci <0x0 0xe112f000 0 0x2000>, 228c2ecf20Sopenharmony_ci <0x0 0xe1140000 0 0x2000>, 238c2ecf20Sopenharmony_ci <0x0 0xe1160000 0 0x2000>; 248c2ecf20Sopenharmony_ci interrupts = <1 9 0xf04>; 258c2ecf20Sopenharmony_ci ranges = <0 0 0 0xe1100000 0 0x100000>; 268c2ecf20Sopenharmony_ci v2m0: v2m@e0080000 { 278c2ecf20Sopenharmony_ci compatible = "arm,gic-v2m-frame"; 288c2ecf20Sopenharmony_ci msi-controller; 298c2ecf20Sopenharmony_ci reg = <0x0 0x00080000 0 0x1000>; 308c2ecf20Sopenharmony_ci }; 318c2ecf20Sopenharmony_ci }; 328c2ecf20Sopenharmony_ci 338c2ecf20Sopenharmony_ci timer { 348c2ecf20Sopenharmony_ci compatible = "arm,armv8-timer"; 358c2ecf20Sopenharmony_ci interrupts = <1 13 0xff04>, 368c2ecf20Sopenharmony_ci <1 14 0xff04>, 378c2ecf20Sopenharmony_ci <1 11 0xff04>, 388c2ecf20Sopenharmony_ci <1 10 0xff04>; 398c2ecf20Sopenharmony_ci }; 408c2ecf20Sopenharmony_ci 418c2ecf20Sopenharmony_ci pmu { 428c2ecf20Sopenharmony_ci compatible = "arm,armv8-pmuv3"; 438c2ecf20Sopenharmony_ci interrupts = <0 7 4>, 448c2ecf20Sopenharmony_ci <0 8 4>, 458c2ecf20Sopenharmony_ci <0 9 4>, 468c2ecf20Sopenharmony_ci <0 10 4>, 478c2ecf20Sopenharmony_ci <0 11 4>, 488c2ecf20Sopenharmony_ci <0 12 4>, 498c2ecf20Sopenharmony_ci <0 13 4>, 508c2ecf20Sopenharmony_ci <0 14 4>; 518c2ecf20Sopenharmony_ci }; 528c2ecf20Sopenharmony_ci 538c2ecf20Sopenharmony_ci smb0: smb { 548c2ecf20Sopenharmony_ci compatible = "simple-bus"; 558c2ecf20Sopenharmony_ci #address-cells = <2>; 568c2ecf20Sopenharmony_ci #size-cells = <2>; 578c2ecf20Sopenharmony_ci ranges; 588c2ecf20Sopenharmony_ci 598c2ecf20Sopenharmony_ci /* 608c2ecf20Sopenharmony_ci * dma-ranges is 40-bit address space containing: 618c2ecf20Sopenharmony_ci * - GICv2m MSI register is at 0xe0080000 628c2ecf20Sopenharmony_ci * - DRAM range [0x8000000000 to 0xffffffffff] 638c2ecf20Sopenharmony_ci */ 648c2ecf20Sopenharmony_ci dma-ranges = <0x0 0x0 0x0 0x0 0x100 0x0>; 658c2ecf20Sopenharmony_ci 668c2ecf20Sopenharmony_ci /include/ "amd-seattle-clks.dtsi" 678c2ecf20Sopenharmony_ci 688c2ecf20Sopenharmony_ci sata0: sata@e0300000 { 698c2ecf20Sopenharmony_ci compatible = "snps,dwc-ahci"; 708c2ecf20Sopenharmony_ci reg = <0 0xe0300000 0 0xf0000>; 718c2ecf20Sopenharmony_ci interrupts = <0 355 4>; 728c2ecf20Sopenharmony_ci clocks = <&sataclk_333mhz>; 738c2ecf20Sopenharmony_ci dma-coherent; 748c2ecf20Sopenharmony_ci }; 758c2ecf20Sopenharmony_ci 768c2ecf20Sopenharmony_ci /* This is for Rev B only */ 778c2ecf20Sopenharmony_ci sata1: sata@e0d00000 { 788c2ecf20Sopenharmony_ci status = "disabled"; 798c2ecf20Sopenharmony_ci compatible = "snps,dwc-ahci"; 808c2ecf20Sopenharmony_ci reg = <0 0xe0d00000 0 0xf0000>; 818c2ecf20Sopenharmony_ci interrupts = <0 354 4>; 828c2ecf20Sopenharmony_ci clocks = <&sataclk_333mhz>; 838c2ecf20Sopenharmony_ci dma-coherent; 848c2ecf20Sopenharmony_ci }; 858c2ecf20Sopenharmony_ci 868c2ecf20Sopenharmony_ci i2c0: i2c@e1000000 { 878c2ecf20Sopenharmony_ci status = "disabled"; 888c2ecf20Sopenharmony_ci compatible = "snps,designware-i2c"; 898c2ecf20Sopenharmony_ci reg = <0 0xe1000000 0 0x1000>; 908c2ecf20Sopenharmony_ci interrupts = <0 357 4>; 918c2ecf20Sopenharmony_ci clocks = <&miscclk_250mhz>; 928c2ecf20Sopenharmony_ci }; 938c2ecf20Sopenharmony_ci 948c2ecf20Sopenharmony_ci i2c1: i2c@e0050000 { 958c2ecf20Sopenharmony_ci status = "disabled"; 968c2ecf20Sopenharmony_ci compatible = "snps,designware-i2c"; 978c2ecf20Sopenharmony_ci reg = <0 0xe0050000 0 0x1000>; 988c2ecf20Sopenharmony_ci interrupts = <0 340 4>; 998c2ecf20Sopenharmony_ci clocks = <&miscclk_250mhz>; 1008c2ecf20Sopenharmony_ci }; 1018c2ecf20Sopenharmony_ci 1028c2ecf20Sopenharmony_ci serial0: serial@e1010000 { 1038c2ecf20Sopenharmony_ci compatible = "arm,pl011", "arm,primecell"; 1048c2ecf20Sopenharmony_ci reg = <0 0xe1010000 0 0x1000>; 1058c2ecf20Sopenharmony_ci interrupts = <0 328 4>; 1068c2ecf20Sopenharmony_ci clocks = <&uartspiclk_100mhz>, <&uartspiclk_100mhz>; 1078c2ecf20Sopenharmony_ci clock-names = "uartclk", "apb_pclk"; 1088c2ecf20Sopenharmony_ci }; 1098c2ecf20Sopenharmony_ci 1108c2ecf20Sopenharmony_ci spi0: spi@e1020000 { 1118c2ecf20Sopenharmony_ci status = "disabled"; 1128c2ecf20Sopenharmony_ci compatible = "arm,pl022", "arm,primecell"; 1138c2ecf20Sopenharmony_ci reg = <0 0xe1020000 0 0x1000>; 1148c2ecf20Sopenharmony_ci spi-controller; 1158c2ecf20Sopenharmony_ci interrupts = <0 330 4>; 1168c2ecf20Sopenharmony_ci clocks = <&uartspiclk_100mhz>; 1178c2ecf20Sopenharmony_ci clock-names = "apb_pclk"; 1188c2ecf20Sopenharmony_ci }; 1198c2ecf20Sopenharmony_ci 1208c2ecf20Sopenharmony_ci spi1: spi@e1030000 { 1218c2ecf20Sopenharmony_ci status = "disabled"; 1228c2ecf20Sopenharmony_ci compatible = "arm,pl022", "arm,primecell"; 1238c2ecf20Sopenharmony_ci reg = <0 0xe1030000 0 0x1000>; 1248c2ecf20Sopenharmony_ci spi-controller; 1258c2ecf20Sopenharmony_ci interrupts = <0 329 4>; 1268c2ecf20Sopenharmony_ci clocks = <&uartspiclk_100mhz>; 1278c2ecf20Sopenharmony_ci clock-names = "apb_pclk"; 1288c2ecf20Sopenharmony_ci num-cs = <1>; 1298c2ecf20Sopenharmony_ci #address-cells = <1>; 1308c2ecf20Sopenharmony_ci #size-cells = <0>; 1318c2ecf20Sopenharmony_ci }; 1328c2ecf20Sopenharmony_ci 1338c2ecf20Sopenharmony_ci gpio0: gpio@e1040000 { /* Not available to OS for B0 */ 1348c2ecf20Sopenharmony_ci status = "disabled"; 1358c2ecf20Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 1368c2ecf20Sopenharmony_ci #gpio-cells = <2>; 1378c2ecf20Sopenharmony_ci reg = <0 0xe1040000 0 0x1000>; 1388c2ecf20Sopenharmony_ci gpio-controller; 1398c2ecf20Sopenharmony_ci interrupts = <0 359 4>; 1408c2ecf20Sopenharmony_ci interrupt-controller; 1418c2ecf20Sopenharmony_ci #interrupt-cells = <2>; 1428c2ecf20Sopenharmony_ci clocks = <&miscclk_250mhz>; 1438c2ecf20Sopenharmony_ci clock-names = "apb_pclk"; 1448c2ecf20Sopenharmony_ci }; 1458c2ecf20Sopenharmony_ci 1468c2ecf20Sopenharmony_ci gpio1: gpio@e1050000 { /* [0:7] */ 1478c2ecf20Sopenharmony_ci status = "disabled"; 1488c2ecf20Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 1498c2ecf20Sopenharmony_ci #gpio-cells = <2>; 1508c2ecf20Sopenharmony_ci reg = <0 0xe1050000 0 0x1000>; 1518c2ecf20Sopenharmony_ci gpio-controller; 1528c2ecf20Sopenharmony_ci interrupt-controller; 1538c2ecf20Sopenharmony_ci #interrupt-cells = <2>; 1548c2ecf20Sopenharmony_ci interrupts = <0 358 4>; 1558c2ecf20Sopenharmony_ci clocks = <&miscclk_250mhz>; 1568c2ecf20Sopenharmony_ci clock-names = "apb_pclk"; 1578c2ecf20Sopenharmony_ci }; 1588c2ecf20Sopenharmony_ci 1598c2ecf20Sopenharmony_ci gpio2: gpio@e0020000 { /* [8:15] */ 1608c2ecf20Sopenharmony_ci status = "disabled"; 1618c2ecf20Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 1628c2ecf20Sopenharmony_ci #gpio-cells = <2>; 1638c2ecf20Sopenharmony_ci reg = <0 0xe0020000 0 0x1000>; 1648c2ecf20Sopenharmony_ci gpio-controller; 1658c2ecf20Sopenharmony_ci interrupt-controller; 1668c2ecf20Sopenharmony_ci #interrupt-cells = <2>; 1678c2ecf20Sopenharmony_ci interrupts = <0 366 4>; 1688c2ecf20Sopenharmony_ci clocks = <&miscclk_250mhz>; 1698c2ecf20Sopenharmony_ci clock-names = "apb_pclk"; 1708c2ecf20Sopenharmony_ci }; 1718c2ecf20Sopenharmony_ci 1728c2ecf20Sopenharmony_ci gpio3: gpio@e0030000 { /* [16:23] */ 1738c2ecf20Sopenharmony_ci status = "disabled"; 1748c2ecf20Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 1758c2ecf20Sopenharmony_ci #gpio-cells = <2>; 1768c2ecf20Sopenharmony_ci reg = <0 0xe0030000 0 0x1000>; 1778c2ecf20Sopenharmony_ci gpio-controller; 1788c2ecf20Sopenharmony_ci interrupt-controller; 1798c2ecf20Sopenharmony_ci #interrupt-cells = <2>; 1808c2ecf20Sopenharmony_ci interrupts = <0 365 4>; 1818c2ecf20Sopenharmony_ci clocks = <&miscclk_250mhz>; 1828c2ecf20Sopenharmony_ci clock-names = "apb_pclk"; 1838c2ecf20Sopenharmony_ci }; 1848c2ecf20Sopenharmony_ci 1858c2ecf20Sopenharmony_ci gpio4: gpio@e0080000 { /* [24] */ 1868c2ecf20Sopenharmony_ci status = "disabled"; 1878c2ecf20Sopenharmony_ci compatible = "arm,pl061", "arm,primecell"; 1888c2ecf20Sopenharmony_ci #gpio-cells = <2>; 1898c2ecf20Sopenharmony_ci reg = <0 0xe0080000 0 0x1000>; 1908c2ecf20Sopenharmony_ci gpio-controller; 1918c2ecf20Sopenharmony_ci interrupt-controller; 1928c2ecf20Sopenharmony_ci #interrupt-cells = <2>; 1938c2ecf20Sopenharmony_ci interrupts = <0 361 4>; 1948c2ecf20Sopenharmony_ci clocks = <&miscclk_250mhz>; 1958c2ecf20Sopenharmony_ci clock-names = "apb_pclk"; 1968c2ecf20Sopenharmony_ci }; 1978c2ecf20Sopenharmony_ci 1988c2ecf20Sopenharmony_ci ccp0: ccp@e0100000 { 1998c2ecf20Sopenharmony_ci status = "disabled"; 2008c2ecf20Sopenharmony_ci compatible = "amd,ccp-seattle-v1a"; 2018c2ecf20Sopenharmony_ci reg = <0 0xe0100000 0 0x10000>; 2028c2ecf20Sopenharmony_ci interrupts = <0 3 4>; 2038c2ecf20Sopenharmony_ci dma-coherent; 2048c2ecf20Sopenharmony_ci }; 2058c2ecf20Sopenharmony_ci 2068c2ecf20Sopenharmony_ci pcie0: pcie@f0000000 { 2078c2ecf20Sopenharmony_ci compatible = "pci-host-ecam-generic"; 2088c2ecf20Sopenharmony_ci #address-cells = <3>; 2098c2ecf20Sopenharmony_ci #size-cells = <2>; 2108c2ecf20Sopenharmony_ci #interrupt-cells = <1>; 2118c2ecf20Sopenharmony_ci device_type = "pci"; 2128c2ecf20Sopenharmony_ci bus-range = <0 0x7f>; 2138c2ecf20Sopenharmony_ci msi-parent = <&v2m0>; 2148c2ecf20Sopenharmony_ci reg = <0 0xf0000000 0 0x10000000>; 2158c2ecf20Sopenharmony_ci 2168c2ecf20Sopenharmony_ci interrupt-map-mask = <0xf800 0x0 0x0 0x7>; 2178c2ecf20Sopenharmony_ci interrupt-map = 2188c2ecf20Sopenharmony_ci <0x1000 0x0 0x0 0x1 &gic0 0x0 0x0 0x0 0x120 0x1>, 2198c2ecf20Sopenharmony_ci <0x1000 0x0 0x0 0x2 &gic0 0x0 0x0 0x0 0x121 0x1>, 2208c2ecf20Sopenharmony_ci <0x1000 0x0 0x0 0x3 &gic0 0x0 0x0 0x0 0x122 0x1>, 2218c2ecf20Sopenharmony_ci <0x1000 0x0 0x0 0x4 &gic0 0x0 0x0 0x0 0x123 0x1>; 2228c2ecf20Sopenharmony_ci 2238c2ecf20Sopenharmony_ci dma-coherent; 2248c2ecf20Sopenharmony_ci dma-ranges = <0x43000000 0x0 0x0 0x0 0x0 0x100 0x0>; 2258c2ecf20Sopenharmony_ci ranges = 2268c2ecf20Sopenharmony_ci /* I/O Memory (size=64K) */ 2278c2ecf20Sopenharmony_ci <0x01000000 0x00 0x00000000 0x00 0xefff0000 0x00 0x00010000>, 2288c2ecf20Sopenharmony_ci /* 32-bit MMIO (size=2G) */ 2298c2ecf20Sopenharmony_ci <0x02000000 0x00 0x40000000 0x00 0x40000000 0x00 0x80000000>, 2308c2ecf20Sopenharmony_ci /* 64-bit MMIO (size= 124G) */ 2318c2ecf20Sopenharmony_ci <0x03000000 0x01 0x00000000 0x01 0x00000000 0x7f 0x00000000>; 2328c2ecf20Sopenharmony_ci }; 2338c2ecf20Sopenharmony_ci 2348c2ecf20Sopenharmony_ci /* Perf CCN504 PMU */ 2358c2ecf20Sopenharmony_ci ccn: ccn@e8000000 { 2368c2ecf20Sopenharmony_ci compatible = "arm,ccn-504"; 2378c2ecf20Sopenharmony_ci reg = <0x0 0xe8000000 0 0x1000000>; 2388c2ecf20Sopenharmony_ci interrupts = <0 380 4>; 2398c2ecf20Sopenharmony_ci }; 2408c2ecf20Sopenharmony_ci 2418c2ecf20Sopenharmony_ci ipmi_kcs: kcs@e0010000 { 2428c2ecf20Sopenharmony_ci status = "disabled"; 2438c2ecf20Sopenharmony_ci compatible = "ipmi-kcs"; 2448c2ecf20Sopenharmony_ci device_type = "ipmi"; 2458c2ecf20Sopenharmony_ci reg = <0x0 0xe0010000 0 0x8>; 2468c2ecf20Sopenharmony_ci interrupts = <0 389 4>; 2478c2ecf20Sopenharmony_ci reg-size = <1>; 2488c2ecf20Sopenharmony_ci reg-spacing = <4>; 2498c2ecf20Sopenharmony_ci }; 2508c2ecf20Sopenharmony_ci }; 2518c2ecf20Sopenharmony_ci}; 252