1/* 2 * Abilis Systems TB100 SOC device tree 3 * 4 * Copyright (C) Abilis Systems 2013 5 * 6 * Author: Christian Ruppert <christian.ruppert@abilis.com> 7 * 8 * This program is free software; you can redistribute it and/or modify 9 * it under the terms of the GNU General Public License version 2 as 10 * published by the Free Software Foundation. 11 * 12 * This program is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * GNU General Public License for more details. 16 * 17 * You should have received a copy of the GNU General Public License 18 * along with this program; if not, write to the Free Software 19 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 20 */ 21 22/include/ "abilis_tb10x.dtsi" 23 24 25/ { 26 soc100 { 27 bus-frequency = <166666666>; 28 29 pll0: oscillator { 30 clock-frequency = <1000000000>; 31 }; 32 cpu_clk: clkdiv_cpu { 33 clock-mult = <1>; 34 clock-div = <2>; 35 }; 36 ahb_clk: clkdiv_ahb { 37 clock-mult = <1>; 38 clock-div = <6>; 39 }; 40 41 iomux: iomux@ff10601c { 42 /* Port 1 */ 43 pctl_tsin_s0: pctl-tsin-s0 { /* Serial TS-in 0 */ 44 abilis,function = "mis0"; 45 }; 46 pctl_tsin_s1: pctl-tsin-s1 { /* Serial TS-in 1 */ 47 abilis,function = "mis1"; 48 }; 49 pctl_gpio_a: pctl-gpio-a { /* GPIO bank A */ 50 abilis,function = "gpioa"; 51 }; 52 pctl_tsin_p1: pctl-tsin-p1 { /* Parallel TS-in 1 */ 53 abilis,function = "mip1"; 54 }; 55 /* Port 2 */ 56 pctl_tsin_s2: pctl-tsin-s2 { /* Serial TS-in 2 */ 57 abilis,function = "mis2"; 58 }; 59 pctl_tsin_s3: pctl-tsin-s3 { /* Serial TS-in 3 */ 60 abilis,function = "mis3"; 61 }; 62 pctl_gpio_c: pctl-gpio-c { /* GPIO bank C */ 63 abilis,function = "gpioc"; 64 }; 65 pctl_tsin_p3: pctl-tsin-p3 { /* Parallel TS-in 3 */ 66 abilis,function = "mip3"; 67 }; 68 /* Port 3 */ 69 pctl_tsin_s4: pctl-tsin-s4 { /* Serial TS-in 4 */ 70 abilis,function = "mis4"; 71 }; 72 pctl_tsin_s5: pctl-tsin-s5 { /* Serial TS-in 5 */ 73 abilis,function = "mis5"; 74 }; 75 pctl_gpio_e: pctl-gpio-e { /* GPIO bank E */ 76 abilis,function = "gpioe"; 77 }; 78 pctl_tsin_p5: pctl-tsin-p5 { /* Parallel TS-in 5 */ 79 abilis,function = "mip5"; 80 }; 81 /* Port 4 */ 82 pctl_tsin_s6: pctl-tsin-s6 { /* Serial TS-in 6 */ 83 abilis,function = "mis6"; 84 }; 85 pctl_tsin_s7: pctl-tsin-s7 { /* Serial TS-in 7 */ 86 abilis,function = "mis7"; 87 }; 88 pctl_gpio_g: pctl-gpio-g { /* GPIO bank G */ 89 abilis,function = "gpiog"; 90 }; 91 pctl_tsin_p7: pctl-tsin-p7 { /* Parallel TS-in 7 */ 92 abilis,function = "mip7"; 93 }; 94 /* Port 5 */ 95 pctl_gpio_j: pctl-gpio-j { /* GPIO bank J */ 96 abilis,function = "gpioj"; 97 }; 98 pctl_gpio_k: pctl-gpio-k { /* GPIO bank K */ 99 abilis,function = "gpiok"; 100 }; 101 pctl_ciplus: pctl-ciplus { /* CI+ interface */ 102 abilis,function = "ciplus"; 103 }; 104 pctl_mcard: pctl-mcard { /* M-Card interface */ 105 abilis,function = "mcard"; 106 }; 107 /* Port 6 */ 108 pctl_tsout_p: pctl-tsout-p { /* Parallel TS-out */ 109 abilis,function = "mop"; 110 }; 111 pctl_tsout_s0: pctl-tsout-s0 { /* Serial TS-out 0 */ 112 abilis,function = "mos0"; 113 }; 114 pctl_tsout_s1: pctl-tsout-s1 { /* Serial TS-out 1 */ 115 abilis,function = "mos1"; 116 }; 117 pctl_tsout_s2: pctl-tsout-s2 { /* Serial TS-out 2 */ 118 abilis,function = "mos2"; 119 }; 120 pctl_tsout_s3: pctl-tsout-s3 { /* Serial TS-out 3 */ 121 abilis,function = "mos3"; 122 }; 123 /* Port 7 */ 124 pctl_uart0: pctl-uart0 { /* UART 0 */ 125 abilis,function = "uart0"; 126 }; 127 pctl_uart1: pctl-uart1 { /* UART 1 */ 128 abilis,function = "uart1"; 129 }; 130 pctl_gpio_l: pctl-gpio-l { /* GPIO bank L */ 131 abilis,function = "gpiol"; 132 }; 133 pctl_gpio_m: pctl-gpio-m { /* GPIO bank M */ 134 abilis,function = "gpiom"; 135 }; 136 /* Port 8 */ 137 pctl_spi3: pctl-spi3 { 138 abilis,function = "spi3"; 139 }; 140 /* Port 9 */ 141 pctl_spi1: pctl-spi1 { 142 abilis,function = "spi1"; 143 }; 144 pctl_gpio_n: pctl-gpio-n { 145 abilis,function = "gpion"; 146 }; 147 /* Unmuxed GPIOs */ 148 pctl_gpio_b: pctl-gpio-b { 149 abilis,function = "gpiob"; 150 }; 151 pctl_gpio_d: pctl-gpio-d { 152 abilis,function = "gpiod"; 153 }; 154 pctl_gpio_f: pctl-gpio-f { 155 abilis,function = "gpiof"; 156 }; 157 pctl_gpio_h: pctl-gpio-h { 158 abilis,function = "gpioh"; 159 }; 160 pctl_gpio_i: pctl-gpio-i { 161 abilis,function = "gpioi"; 162 }; 163 }; 164 165 gpioa: gpio@ff140000 { 166 compatible = "abilis,tb10x-gpio"; 167 interrupt-controller; 168 #interrupt-cells = <1>; 169 interrupt-parent = <&tb10x_ictl>; 170 interrupts = <27 2>; 171 reg = <0xff140000 0x1000>; 172 gpio-controller; 173 #gpio-cells = <2>; 174 abilis,ngpio = <3>; 175 gpio-ranges = <&iomux 0 0 0>; 176 gpio-ranges-group-names = "gpioa"; 177 }; 178 gpiob: gpio@ff141000 { 179 compatible = "abilis,tb10x-gpio"; 180 interrupt-controller; 181 #interrupt-cells = <1>; 182 interrupt-parent = <&tb10x_ictl>; 183 interrupts = <27 2>; 184 reg = <0xff141000 0x1000>; 185 gpio-controller; 186 #gpio-cells = <2>; 187 abilis,ngpio = <2>; 188 gpio-ranges = <&iomux 0 0 0>; 189 gpio-ranges-group-names = "gpiob"; 190 }; 191 gpioc: gpio@ff142000 { 192 compatible = "abilis,tb10x-gpio"; 193 interrupt-controller; 194 #interrupt-cells = <1>; 195 interrupt-parent = <&tb10x_ictl>; 196 interrupts = <27 2>; 197 reg = <0xff142000 0x1000>; 198 gpio-controller; 199 #gpio-cells = <2>; 200 abilis,ngpio = <3>; 201 gpio-ranges = <&iomux 0 0 0>; 202 gpio-ranges-group-names = "gpioc"; 203 }; 204 gpiod: gpio@ff143000 { 205 compatible = "abilis,tb10x-gpio"; 206 interrupt-controller; 207 #interrupt-cells = <1>; 208 interrupt-parent = <&tb10x_ictl>; 209 interrupts = <27 2>; 210 reg = <0xff143000 0x1000>; 211 gpio-controller; 212 #gpio-cells = <2>; 213 abilis,ngpio = <2>; 214 gpio-ranges = <&iomux 0 0 0>; 215 gpio-ranges-group-names = "gpiod"; 216 }; 217 gpioe: gpio@ff144000 { 218 compatible = "abilis,tb10x-gpio"; 219 interrupt-controller; 220 #interrupt-cells = <1>; 221 interrupt-parent = <&tb10x_ictl>; 222 interrupts = <27 2>; 223 reg = <0xff144000 0x1000>; 224 gpio-controller; 225 #gpio-cells = <2>; 226 abilis,ngpio = <3>; 227 gpio-ranges = <&iomux 0 0 0>; 228 gpio-ranges-group-names = "gpioe"; 229 }; 230 gpiof: gpio@ff145000 { 231 compatible = "abilis,tb10x-gpio"; 232 interrupt-controller; 233 #interrupt-cells = <1>; 234 interrupt-parent = <&tb10x_ictl>; 235 interrupts = <27 2>; 236 reg = <0xff145000 0x1000>; 237 gpio-controller; 238 #gpio-cells = <2>; 239 abilis,ngpio = <2>; 240 gpio-ranges = <&iomux 0 0 0>; 241 gpio-ranges-group-names = "gpiof"; 242 }; 243 gpiog: gpio@ff146000 { 244 compatible = "abilis,tb10x-gpio"; 245 interrupt-controller; 246 #interrupt-cells = <1>; 247 interrupt-parent = <&tb10x_ictl>; 248 interrupts = <27 2>; 249 reg = <0xff146000 0x1000>; 250 gpio-controller; 251 #gpio-cells = <2>; 252 abilis,ngpio = <3>; 253 gpio-ranges = <&iomux 0 0 0>; 254 gpio-ranges-group-names = "gpiog"; 255 }; 256 gpioh: gpio@ff147000 { 257 compatible = "abilis,tb10x-gpio"; 258 interrupt-controller; 259 #interrupt-cells = <1>; 260 interrupt-parent = <&tb10x_ictl>; 261 interrupts = <27 2>; 262 reg = <0xff147000 0x1000>; 263 gpio-controller; 264 #gpio-cells = <2>; 265 abilis,ngpio = <2>; 266 gpio-ranges = <&iomux 0 0 0>; 267 gpio-ranges-group-names = "gpioh"; 268 }; 269 gpioi: gpio@ff148000 { 270 compatible = "abilis,tb10x-gpio"; 271 interrupt-controller; 272 #interrupt-cells = <1>; 273 interrupt-parent = <&tb10x_ictl>; 274 interrupts = <27 2>; 275 reg = <0xff148000 0x1000>; 276 gpio-controller; 277 #gpio-cells = <2>; 278 abilis,ngpio = <12>; 279 gpio-ranges = <&iomux 0 0 0>; 280 gpio-ranges-group-names = "gpioi"; 281 }; 282 gpioj: gpio@ff149000 { 283 compatible = "abilis,tb10x-gpio"; 284 interrupt-controller; 285 #interrupt-cells = <1>; 286 interrupt-parent = <&tb10x_ictl>; 287 interrupts = <27 2>; 288 reg = <0xff149000 0x1000>; 289 gpio-controller; 290 #gpio-cells = <2>; 291 abilis,ngpio = <32>; 292 gpio-ranges = <&iomux 0 0 0>; 293 gpio-ranges-group-names = "gpioj"; 294 }; 295 gpiok: gpio@ff14a000 { 296 compatible = "abilis,tb10x-gpio"; 297 interrupt-controller; 298 #interrupt-cells = <1>; 299 interrupt-parent = <&tb10x_ictl>; 300 interrupts = <27 2>; 301 reg = <0xff14a000 0x1000>; 302 gpio-controller; 303 #gpio-cells = <2>; 304 abilis,ngpio = <22>; 305 gpio-ranges = <&iomux 0 0 0>; 306 gpio-ranges-group-names = "gpiok"; 307 }; 308 gpiol: gpio@ff14b000 { 309 compatible = "abilis,tb10x-gpio"; 310 interrupt-controller; 311 #interrupt-cells = <1>; 312 interrupt-parent = <&tb10x_ictl>; 313 interrupts = <27 2>; 314 reg = <0xff14b000 0x1000>; 315 gpio-controller; 316 #gpio-cells = <2>; 317 abilis,ngpio = <4>; 318 gpio-ranges = <&iomux 0 0 0>; 319 gpio-ranges-group-names = "gpiol"; 320 }; 321 gpiom: gpio@ff14c000 { 322 compatible = "abilis,tb10x-gpio"; 323 interrupt-controller; 324 #interrupt-cells = <1>; 325 interrupt-parent = <&tb10x_ictl>; 326 interrupts = <27 2>; 327 reg = <0xff14c000 0x1000>; 328 gpio-controller; 329 #gpio-cells = <2>; 330 abilis,ngpio = <4>; 331 gpio-ranges = <&iomux 0 0 0>; 332 gpio-ranges-group-names = "gpiom"; 333 }; 334 gpion: gpio@ff14d000 { 335 compatible = "abilis,tb10x-gpio"; 336 interrupt-controller; 337 #interrupt-cells = <1>; 338 interrupt-parent = <&tb10x_ictl>; 339 interrupts = <27 2>; 340 reg = <0xff14d000 0x1000>; 341 gpio-controller; 342 #gpio-cells = <2>; 343 abilis,ngpio = <5>; 344 gpio-ranges = <&iomux 0 0 0>; 345 gpio-ranges-group-names = "gpion"; 346 }; 347 }; 348}; 349