John Linn | b85a3ef | 2011-06-20 11:47:27 -0600 | [diff] [blame] | 1 | /* |
Soren Brinkmann | f7b1e9b | 2014-05-05 10:16:08 -0700 | [diff] [blame] | 2 | * Copyright (C) 2011 - 2014 Xilinx |
John Linn | b85a3ef | 2011-06-20 11:47:27 -0600 | [diff] [blame] | 3 | * |
| 4 | * This software is licensed under the terms of the GNU General Public |
| 5 | * License version 2, as published by the Free Software Foundation, and |
| 6 | * may be copied, distributed, and modified under those terms. |
| 7 | * |
| 8 | * This program is distributed in the hope that it will be useful, |
| 9 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| 10 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| 11 | * GNU General Public License for more details. |
| 12 | */ |
Josh Cartwright | e06f1a9 | 2012-10-31 12:24:48 -0600 | [diff] [blame] | 13 | /include/ "skeleton.dtsi" |
John Linn | b85a3ef | 2011-06-20 11:47:27 -0600 | [diff] [blame] | 14 | |
John Linn | b85a3ef | 2011-06-20 11:47:27 -0600 | [diff] [blame] | 15 | / { |
Josh Cartwright | e06f1a9 | 2012-10-31 12:24:48 -0600 | [diff] [blame] | 16 | compatible = "xlnx,zynq-7000"; |
John Linn | b85a3ef | 2011-06-20 11:47:27 -0600 | [diff] [blame] | 17 | |
Soren Brinkmann | 41e4cdb | 2013-11-26 17:04:49 -0800 | [diff] [blame] | 18 | cpus { |
| 19 | #address-cells = <1>; |
| 20 | #size-cells = <0>; |
| 21 | |
| 22 | cpu@0 { |
| 23 | compatible = "arm,cortex-a9"; |
| 24 | device_type = "cpu"; |
| 25 | reg = <0>; |
| 26 | clocks = <&clkc 3>; |
Soren Brinkmann | b2bf5d4 | 2014-04-04 16:14:12 -0700 | [diff] [blame] | 27 | clock-latency = <1000>; |
Soren Brinkmann | e1e22df | 2014-05-02 14:07:32 -0700 | [diff] [blame] | 28 | cpu0-supply = <®ulator_vccpint>; |
Soren Brinkmann | cd32529 | 2014-02-19 15:14:44 -0800 | [diff] [blame] | 29 | operating-points = < |
| 30 | /* kHz uV */ |
| 31 | 666667 1000000 |
| 32 | 333334 1000000 |
| 33 | 222223 1000000 |
| 34 | >; |
Soren Brinkmann | 41e4cdb | 2013-11-26 17:04:49 -0800 | [diff] [blame] | 35 | }; |
| 36 | |
| 37 | cpu@1 { |
| 38 | compatible = "arm,cortex-a9"; |
| 39 | device_type = "cpu"; |
| 40 | reg = <1>; |
| 41 | clocks = <&clkc 3>; |
| 42 | }; |
| 43 | }; |
| 44 | |
Michal Simek | 268a820 | 2013-03-20 13:37:01 +0100 | [diff] [blame] | 45 | pmu { |
| 46 | compatible = "arm,cortex-a9-pmu"; |
| 47 | interrupts = <0 5 4>, <0 6 4>; |
| 48 | interrupt-parent = <&intc>; |
| 49 | reg = < 0xf8891000 0x1000 0xf8893000 0x1000 >; |
| 50 | }; |
| 51 | |
Soren Brinkmann | e1e22df | 2014-05-02 14:07:32 -0700 | [diff] [blame] | 52 | regulator_vccpint: fixedregulator@0 { |
| 53 | compatible = "regulator-fixed"; |
| 54 | regulator-name = "VCCPINT"; |
| 55 | regulator-min-microvolt = <1000000>; |
| 56 | regulator-max-microvolt = <1000000>; |
| 57 | regulator-boot-on; |
| 58 | regulator-always-on; |
| 59 | }; |
| 60 | |
John Linn | b85a3ef | 2011-06-20 11:47:27 -0600 | [diff] [blame] | 61 | amba { |
| 62 | compatible = "simple-bus"; |
| 63 | #address-cells = <1>; |
| 64 | #size-cells = <1>; |
Josh Cartwright | e06f1a9 | 2012-10-31 12:24:48 -0600 | [diff] [blame] | 65 | interrupt-parent = <&intc>; |
John Linn | b85a3ef | 2011-06-20 11:47:27 -0600 | [diff] [blame] | 66 | ranges; |
| 67 | |
Soren Brinkmann | 2155560 | 2014-06-05 09:05:23 -0700 | [diff] [blame] | 68 | adc@f8007100 { |
| 69 | compatible = "xlnx,zynq-xadc-1.00.a"; |
| 70 | reg = <0xf8007100 0x20>; |
| 71 | interrupts = <0 7 4>; |
| 72 | interrupt-parent = <&intc>; |
| 73 | clocks = <&clkc 12>; |
Soren Brinkmann | e0a5c55 | 2014-07-10 11:53:38 -0700 | [diff] [blame^] | 74 | }; |
| 75 | |
| 76 | gpio0: gpio@e000a000 { |
| 77 | compatible = "xlnx,zynq-gpio-1.0"; |
| 78 | #gpio-cells = <2>; |
| 79 | clocks = <&clkc 42>; |
| 80 | gpio-controller; |
| 81 | interrupt-parent = <&intc>; |
| 82 | interrupts = <0 20 4>; |
| 83 | reg = <0xe000a000 0x1000>; |
Soren Brinkmann | 2155560 | 2014-06-05 09:05:23 -0700 | [diff] [blame] | 84 | }; |
| 85 | |
Soren Brinkmann | f7b1e9b | 2014-05-05 10:16:08 -0700 | [diff] [blame] | 86 | i2c0: i2c@e0004000 { |
Soren Brinkmann | 0f6faa3 | 2014-04-04 14:27:56 -0700 | [diff] [blame] | 87 | compatible = "cdns,i2c-r1p10"; |
| 88 | status = "disabled"; |
| 89 | clocks = <&clkc 38>; |
| 90 | interrupt-parent = <&intc>; |
| 91 | interrupts = <0 25 4>; |
| 92 | reg = <0xe0004000 0x1000>; |
| 93 | #address-cells = <1>; |
| 94 | #size-cells = <0>; |
| 95 | }; |
| 96 | |
Soren Brinkmann | f7b1e9b | 2014-05-05 10:16:08 -0700 | [diff] [blame] | 97 | i2c1: i2c@e0005000 { |
Soren Brinkmann | 0f6faa3 | 2014-04-04 14:27:56 -0700 | [diff] [blame] | 98 | compatible = "cdns,i2c-r1p10"; |
| 99 | status = "disabled"; |
| 100 | clocks = <&clkc 39>; |
| 101 | interrupt-parent = <&intc>; |
| 102 | interrupts = <0 48 4>; |
| 103 | reg = <0xe0005000 0x1000>; |
| 104 | #address-cells = <1>; |
| 105 | #size-cells = <0>; |
| 106 | }; |
| 107 | |
John Linn | b85a3ef | 2011-06-20 11:47:27 -0600 | [diff] [blame] | 108 | intc: interrupt-controller@f8f01000 { |
Josh Cartwright | f447ed2 | 2012-10-17 19:46:49 -0500 | [diff] [blame] | 109 | compatible = "arm,cortex-a9-gic"; |
| 110 | #interrupt-cells = <3>; |
John Linn | b85a3ef | 2011-06-20 11:47:27 -0600 | [diff] [blame] | 111 | interrupt-controller; |
Josh Cartwright | f447ed2 | 2012-10-17 19:46:49 -0500 | [diff] [blame] | 112 | reg = <0xF8F01000 0x1000>, |
| 113 | <0xF8F00100 0x100>; |
John Linn | b85a3ef | 2011-06-20 11:47:27 -0600 | [diff] [blame] | 114 | }; |
| 115 | |
Josh Cartwright | 0fcfdbc | 2012-10-23 17:34:22 -0500 | [diff] [blame] | 116 | L2: cache-controller { |
| 117 | compatible = "arm,pl310-cache"; |
| 118 | reg = <0xF8F02000 0x1000>; |
Soren Brinkmann | 39c41df9 | 2013-07-31 16:24:59 -0700 | [diff] [blame] | 119 | arm,data-latency = <3 2 2>; |
| 120 | arm,tag-latency = <2 2 2>; |
Josh Cartwright | 0fcfdbc | 2012-10-23 17:34:22 -0500 | [diff] [blame] | 121 | cache-unified; |
| 122 | cache-level = <2>; |
| 123 | }; |
| 124 | |
Soren Brinkmann | f7b1e9b | 2014-05-05 10:16:08 -0700 | [diff] [blame] | 125 | uart0: serial@e0000000 { |
Soren Brinkmann | 8fe9346 | 2014-04-04 17:23:45 -0700 | [diff] [blame] | 126 | compatible = "xlnx,xuartps", "cdns,uart-r1p8"; |
Soren Brinkmann | ec11ebc | 2013-06-13 09:37:16 -0700 | [diff] [blame] | 127 | status = "disabled"; |
Soren Brinkmann | 30e1e28 | 2013-05-13 10:46:38 -0700 | [diff] [blame] | 128 | clocks = <&clkc 23>, <&clkc 40>; |
Soren Brinkmann | 8fe9346 | 2014-04-04 17:23:45 -0700 | [diff] [blame] | 129 | clock-names = "uart_clk", "pclk"; |
John Linn | b85a3ef | 2011-06-20 11:47:27 -0600 | [diff] [blame] | 130 | reg = <0xE0000000 0x1000>; |
Josh Cartwright | f447ed2 | 2012-10-17 19:46:49 -0500 | [diff] [blame] | 131 | interrupts = <0 27 4>; |
John Linn | b85a3ef | 2011-06-20 11:47:27 -0600 | [diff] [blame] | 132 | }; |
Josh Cartwright | 78d6785 | 2012-10-31 13:45:17 -0600 | [diff] [blame] | 133 | |
Soren Brinkmann | f7b1e9b | 2014-05-05 10:16:08 -0700 | [diff] [blame] | 134 | uart1: serial@e0001000 { |
Soren Brinkmann | 8fe9346 | 2014-04-04 17:23:45 -0700 | [diff] [blame] | 135 | compatible = "xlnx,xuartps", "cdns,uart-r1p8"; |
Soren Brinkmann | ec11ebc | 2013-06-13 09:37:16 -0700 | [diff] [blame] | 136 | status = "disabled"; |
Soren Brinkmann | 30e1e28 | 2013-05-13 10:46:38 -0700 | [diff] [blame] | 137 | clocks = <&clkc 24>, <&clkc 41>; |
Soren Brinkmann | 8fe9346 | 2014-04-04 17:23:45 -0700 | [diff] [blame] | 138 | clock-names = "uart_clk", "pclk"; |
Josh Cartwright | 78d6785 | 2012-10-31 13:45:17 -0600 | [diff] [blame] | 139 | reg = <0xE0001000 0x1000>; |
| 140 | interrupts = <0 50 4>; |
Josh Cartwright | 78d6785 | 2012-10-31 13:45:17 -0600 | [diff] [blame] | 141 | }; |
Josh Cartwright | 0f586fb | 2012-11-08 12:04:26 -0600 | [diff] [blame] | 142 | |
Steffen Trumtrar | 982264c | 2013-12-11 09:29:49 -0800 | [diff] [blame] | 143 | gem0: ethernet@e000b000 { |
| 144 | compatible = "cdns,gem"; |
| 145 | reg = <0xe000b000 0x4000>; |
| 146 | status = "disabled"; |
| 147 | interrupts = <0 22 4>; |
| 148 | clocks = <&clkc 30>, <&clkc 30>, <&clkc 13>; |
| 149 | clock-names = "pclk", "hclk", "tx_clk"; |
| 150 | }; |
| 151 | |
| 152 | gem1: ethernet@e000c000 { |
| 153 | compatible = "cdns,gem"; |
| 154 | reg = <0xe000c000 0x4000>; |
| 155 | status = "disabled"; |
| 156 | interrupts = <0 45 4>; |
| 157 | clocks = <&clkc 31>, <&clkc 31>, <&clkc 14>; |
| 158 | clock-names = "pclk", "hclk", "tx_clk"; |
| 159 | }; |
| 160 | |
Soren Brinkmann | f7b1e9b | 2014-05-05 10:16:08 -0700 | [diff] [blame] | 161 | sdhci0: sdhci@e0100000 { |
Soren Brinkmann | 3f7c730 | 2013-12-02 10:02:37 -0800 | [diff] [blame] | 162 | compatible = "arasan,sdhci-8.9a"; |
| 163 | status = "disabled"; |
| 164 | clock-names = "clk_xin", "clk_ahb"; |
| 165 | clocks = <&clkc 21>, <&clkc 32>; |
| 166 | interrupt-parent = <&intc>; |
| 167 | interrupts = <0 24 4>; |
| 168 | reg = <0xe0100000 0x1000>; |
| 169 | } ; |
| 170 | |
Soren Brinkmann | f7b1e9b | 2014-05-05 10:16:08 -0700 | [diff] [blame] | 171 | sdhci1: sdhci@e0101000 { |
Soren Brinkmann | 3f7c730 | 2013-12-02 10:02:37 -0800 | [diff] [blame] | 172 | compatible = "arasan,sdhci-8.9a"; |
| 173 | status = "disabled"; |
| 174 | clock-names = "clk_xin", "clk_ahb"; |
| 175 | clocks = <&clkc 22>, <&clkc 33>; |
| 176 | interrupt-parent = <&intc>; |
| 177 | interrupts = <0 47 4>; |
| 178 | reg = <0xe0101000 0x1000>; |
| 179 | } ; |
| 180 | |
Josh Cartwright | 0f586fb | 2012-11-08 12:04:26 -0600 | [diff] [blame] | 181 | slcr: slcr@f8000000 { |
Michal Simek | b0504e3 | 2013-11-18 16:48:19 +0100 | [diff] [blame] | 182 | #address-cells = <1>; |
| 183 | #size-cells = <1>; |
Michal Simek | 016f4dc | 2013-11-26 15:41:31 +0100 | [diff] [blame] | 184 | compatible = "xlnx,zynq-slcr", "syscon"; |
Josh Cartwright | 0f586fb | 2012-11-08 12:04:26 -0600 | [diff] [blame] | 185 | reg = <0xF8000000 0x1000>; |
Michal Simek | b0504e3 | 2013-11-18 16:48:19 +0100 | [diff] [blame] | 186 | ranges; |
| 187 | clkc: clkc@100 { |
| 188 | #clock-cells = <1>; |
| 189 | compatible = "xlnx,ps7-clkc"; |
| 190 | ps-clk-frequency = <33333333>; |
| 191 | fclk-enable = <0>; |
| 192 | clock-output-names = "armpll", "ddrpll", "iopll", "cpu_6or4x", |
| 193 | "cpu_3or2x", "cpu_2x", "cpu_1x", "ddr2x", "ddr3x", |
| 194 | "dci", "lqspi", "smc", "pcap", "gem0", "gem1", |
| 195 | "fclk0", "fclk1", "fclk2", "fclk3", "can0", "can1", |
| 196 | "sdio0", "sdio1", "uart0", "uart1", "spi0", "spi1", |
| 197 | "dma", "usb0_aper", "usb1_aper", "gem0_aper", |
| 198 | "gem1_aper", "sdio0_aper", "sdio1_aper", |
| 199 | "spi0_aper", "spi1_aper", "can0_aper", "can1_aper", |
| 200 | "i2c0_aper", "i2c1_aper", "uart0_aper", "uart1_aper", |
| 201 | "gpio_aper", "lqspi_aper", "smc_aper", "swdt", |
| 202 | "dbg_trc", "dbg_apb"; |
| 203 | reg = <0x100 0x100>; |
Josh Cartwright | 0f586fb | 2012-11-08 12:04:26 -0600 | [diff] [blame] | 204 | }; |
| 205 | }; |
Josh Cartwright | 91dc985 | 2012-10-31 13:56:14 -0600 | [diff] [blame] | 206 | |
Michal Simek | 00f7dc6 | 2013-07-31 09:19:59 +0200 | [diff] [blame] | 207 | devcfg: devcfg@f8007000 { |
| 208 | compatible = "xlnx,zynq-devcfg-1.0"; |
| 209 | reg = <0xf8007000 0x100>; |
| 210 | } ; |
| 211 | |
Soren Brinkmann | fa94bd5 | 2013-09-18 11:48:38 -0700 | [diff] [blame] | 212 | global_timer: timer@f8f00200 { |
| 213 | compatible = "arm,cortex-a9-global-timer"; |
| 214 | reg = <0xf8f00200 0x20>; |
| 215 | interrupts = <1 11 0x301>; |
| 216 | interrupt-parent = <&intc>; |
| 217 | clocks = <&clkc 4>; |
| 218 | }; |
| 219 | |
Soren Brinkmann | f7b1e9b | 2014-05-05 10:16:08 -0700 | [diff] [blame] | 220 | ttc0: timer@f8001000 { |
Michal Simek | e932900 | 2013-03-20 10:15:28 +0100 | [diff] [blame] | 221 | interrupt-parent = <&intc>; |
Soren Brinkmann | f7b1e9b | 2014-05-05 10:16:08 -0700 | [diff] [blame] | 222 | interrupts = <0 10 4>, <0 11 4>, <0 12 4>; |
Michal Simek | e932900 | 2013-03-20 10:15:28 +0100 | [diff] [blame] | 223 | compatible = "cdns,ttc"; |
Soren Brinkmann | 30e1e28 | 2013-05-13 10:46:38 -0700 | [diff] [blame] | 224 | clocks = <&clkc 6>; |
Josh Cartwright | 91dc985 | 2012-10-31 13:56:14 -0600 | [diff] [blame] | 225 | reg = <0xF8001000 0x1000>; |
Josh Cartwright | 91dc985 | 2012-10-31 13:56:14 -0600 | [diff] [blame] | 226 | }; |
| 227 | |
Soren Brinkmann | f7b1e9b | 2014-05-05 10:16:08 -0700 | [diff] [blame] | 228 | ttc1: timer@f8002000 { |
Michal Simek | e932900 | 2013-03-20 10:15:28 +0100 | [diff] [blame] | 229 | interrupt-parent = <&intc>; |
Soren Brinkmann | f7b1e9b | 2014-05-05 10:16:08 -0700 | [diff] [blame] | 230 | interrupts = <0 37 4>, <0 38 4>, <0 39 4>; |
Michal Simek | e932900 | 2013-03-20 10:15:28 +0100 | [diff] [blame] | 231 | compatible = "cdns,ttc"; |
Soren Brinkmann | 30e1e28 | 2013-05-13 10:46:38 -0700 | [diff] [blame] | 232 | clocks = <&clkc 6>; |
Josh Cartwright | 91dc985 | 2012-10-31 13:56:14 -0600 | [diff] [blame] | 233 | reg = <0xF8002000 0x1000>; |
Josh Cartwright | 91dc985 | 2012-10-31 13:56:14 -0600 | [diff] [blame] | 234 | }; |
Soren Brinkmann | f7b1e9b | 2014-05-05 10:16:08 -0700 | [diff] [blame] | 235 | |
| 236 | scutimer: timer@f8f00600 { |
Michal Simek | 2f34e0a | 2013-03-27 13:36:39 +0100 | [diff] [blame] | 237 | interrupt-parent = <&intc>; |
Soren Brinkmann | f7b1e9b | 2014-05-05 10:16:08 -0700 | [diff] [blame] | 238 | interrupts = <1 13 0x301>; |
Michal Simek | 2f34e0a | 2013-03-27 13:36:39 +0100 | [diff] [blame] | 239 | compatible = "arm,cortex-a9-twd-timer"; |
Soren Brinkmann | f7b1e9b | 2014-05-05 10:16:08 -0700 | [diff] [blame] | 240 | reg = <0xf8f00600 0x20>; |
Soren Brinkmann | 30e1e28 | 2013-05-13 10:46:38 -0700 | [diff] [blame] | 241 | clocks = <&clkc 4>; |
Michal Simek | 2f34e0a | 2013-03-27 13:36:39 +0100 | [diff] [blame] | 242 | } ; |
John Linn | b85a3ef | 2011-06-20 11:47:27 -0600 | [diff] [blame] | 243 | }; |
| 244 | }; |