1*724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0-only 2*724ba675SRob Herring/* 3*724ba675SRob Herring * Device Tree Source for OMAP243x SoC 4*724ba675SRob Herring * 5*724ba675SRob Herring * Copyright (C) 2012 Texas Instruments Incorporated - https://www.ti.com/ 6*724ba675SRob Herring */ 7*724ba675SRob Herring 8*724ba675SRob Herring#include "omap2.dtsi" 9*724ba675SRob Herring 10*724ba675SRob Herring/ { 11*724ba675SRob Herring compatible = "ti,omap2430", "ti,omap2"; 12*724ba675SRob Herring 13*724ba675SRob Herring ocp { 14*724ba675SRob Herring l4_wkup: l4_wkup@49000000 { 15*724ba675SRob Herring compatible = "ti,omap2-l4-wkup", "simple-bus"; 16*724ba675SRob Herring #address-cells = <1>; 17*724ba675SRob Herring #size-cells = <1>; 18*724ba675SRob Herring ranges = <0 0x49000000 0x31000>; 19*724ba675SRob Herring 20*724ba675SRob Herring prcm: prcm@6000 { 21*724ba675SRob Herring compatible = "ti,omap2-prcm"; 22*724ba675SRob Herring reg = <0x6000 0x1000>; 23*724ba675SRob Herring 24*724ba675SRob Herring prcm_clocks: clocks { 25*724ba675SRob Herring #address-cells = <1>; 26*724ba675SRob Herring #size-cells = <0>; 27*724ba675SRob Herring }; 28*724ba675SRob Herring 29*724ba675SRob Herring prcm_clockdomains: clockdomains { 30*724ba675SRob Herring }; 31*724ba675SRob Herring }; 32*724ba675SRob Herring 33*724ba675SRob Herring scm: scm@2000 { 34*724ba675SRob Herring compatible = "ti,omap2-scm", "simple-bus"; 35*724ba675SRob Herring reg = <0x2000 0x1000>; 36*724ba675SRob Herring #address-cells = <1>; 37*724ba675SRob Herring #size-cells = <1>; 38*724ba675SRob Herring #pinctrl-cells = <1>; 39*724ba675SRob Herring ranges = <0 0x2000 0x1000>; 40*724ba675SRob Herring 41*724ba675SRob Herring omap2430_pmx: pinmux@30 { 42*724ba675SRob Herring compatible = "ti,omap2430-padconf", 43*724ba675SRob Herring "pinctrl-single"; 44*724ba675SRob Herring reg = <0x30 0x0154>; 45*724ba675SRob Herring #address-cells = <1>; 46*724ba675SRob Herring #size-cells = <0>; 47*724ba675SRob Herring #pinctrl-cells = <1>; 48*724ba675SRob Herring pinctrl-single,register-width = <8>; 49*724ba675SRob Herring pinctrl-single,function-mask = <0x3f>; 50*724ba675SRob Herring }; 51*724ba675SRob Herring 52*724ba675SRob Herring scm_conf: scm_conf@270 { 53*724ba675SRob Herring compatible = "syscon", 54*724ba675SRob Herring "simple-bus"; 55*724ba675SRob Herring reg = <0x270 0x240>; 56*724ba675SRob Herring #address-cells = <1>; 57*724ba675SRob Herring #size-cells = <1>; 58*724ba675SRob Herring ranges = <0 0x270 0x240>; 59*724ba675SRob Herring 60*724ba675SRob Herring scm_clocks: clocks { 61*724ba675SRob Herring #address-cells = <1>; 62*724ba675SRob Herring #size-cells = <0>; 63*724ba675SRob Herring }; 64*724ba675SRob Herring 65*724ba675SRob Herring pbias_regulator: pbias_regulator@230 { 66*724ba675SRob Herring compatible = "ti,pbias-omap2", "ti,pbias-omap"; 67*724ba675SRob Herring reg = <0x230 0x4>; 68*724ba675SRob Herring syscon = <&scm_conf>; 69*724ba675SRob Herring pbias_mmc_reg: pbias_mmc_omap2430 { 70*724ba675SRob Herring regulator-name = "pbias_mmc_omap2430"; 71*724ba675SRob Herring regulator-min-microvolt = <1800000>; 72*724ba675SRob Herring regulator-max-microvolt = <3000000>; 73*724ba675SRob Herring }; 74*724ba675SRob Herring }; 75*724ba675SRob Herring }; 76*724ba675SRob Herring 77*724ba675SRob Herring scm_clockdomains: clockdomains { 78*724ba675SRob Herring }; 79*724ba675SRob Herring }; 80*724ba675SRob Herring 81*724ba675SRob Herring target-module@20000 { 82*724ba675SRob Herring compatible = "ti,sysc-omap2", "ti,sysc"; 83*724ba675SRob Herring reg = <0x20000 0x4>, 84*724ba675SRob Herring <0x20004 0x4>; 85*724ba675SRob Herring reg-names = "rev", "sysc"; 86*724ba675SRob Herring ti,sysc-sidle = <SYSC_IDLE_FORCE>, 87*724ba675SRob Herring <SYSC_IDLE_NO>; 88*724ba675SRob Herring clocks = <&func_32k_ck>; 89*724ba675SRob Herring clock-names = "fck"; 90*724ba675SRob Herring #address-cells = <1>; 91*724ba675SRob Herring #size-cells = <1>; 92*724ba675SRob Herring ranges = <0x0 0x20000 0x1000>; 93*724ba675SRob Herring 94*724ba675SRob Herring counter32k: counter@0 { 95*724ba675SRob Herring compatible = "ti,omap-counter32k"; 96*724ba675SRob Herring reg = <0 0x20>; 97*724ba675SRob Herring }; 98*724ba675SRob Herring }; 99*724ba675SRob Herring }; 100*724ba675SRob Herring 101*724ba675SRob Herring gpio1: gpio@4900c000 { 102*724ba675SRob Herring compatible = "ti,omap2-gpio"; 103*724ba675SRob Herring reg = <0x4900c000 0x200>; 104*724ba675SRob Herring interrupts = <29>; 105*724ba675SRob Herring ti,hwmods = "gpio1"; 106*724ba675SRob Herring ti,gpio-always-on; 107*724ba675SRob Herring #gpio-cells = <2>; 108*724ba675SRob Herring gpio-controller; 109*724ba675SRob Herring #interrupt-cells = <2>; 110*724ba675SRob Herring interrupt-controller; 111*724ba675SRob Herring }; 112*724ba675SRob Herring 113*724ba675SRob Herring gpio2: gpio@4900e000 { 114*724ba675SRob Herring compatible = "ti,omap2-gpio"; 115*724ba675SRob Herring reg = <0x4900e000 0x200>; 116*724ba675SRob Herring interrupts = <30>; 117*724ba675SRob Herring ti,hwmods = "gpio2"; 118*724ba675SRob Herring ti,gpio-always-on; 119*724ba675SRob Herring #gpio-cells = <2>; 120*724ba675SRob Herring gpio-controller; 121*724ba675SRob Herring #interrupt-cells = <2>; 122*724ba675SRob Herring interrupt-controller; 123*724ba675SRob Herring }; 124*724ba675SRob Herring 125*724ba675SRob Herring gpio3: gpio@49010000 { 126*724ba675SRob Herring compatible = "ti,omap2-gpio"; 127*724ba675SRob Herring reg = <0x49010000 0x200>; 128*724ba675SRob Herring interrupts = <31>; 129*724ba675SRob Herring ti,hwmods = "gpio3"; 130*724ba675SRob Herring ti,gpio-always-on; 131*724ba675SRob Herring #gpio-cells = <2>; 132*724ba675SRob Herring gpio-controller; 133*724ba675SRob Herring #interrupt-cells = <2>; 134*724ba675SRob Herring interrupt-controller; 135*724ba675SRob Herring }; 136*724ba675SRob Herring 137*724ba675SRob Herring gpio4: gpio@49012000 { 138*724ba675SRob Herring compatible = "ti,omap2-gpio"; 139*724ba675SRob Herring reg = <0x49012000 0x200>; 140*724ba675SRob Herring interrupts = <32>; 141*724ba675SRob Herring ti,hwmods = "gpio4"; 142*724ba675SRob Herring ti,gpio-always-on; 143*724ba675SRob Herring #gpio-cells = <2>; 144*724ba675SRob Herring gpio-controller; 145*724ba675SRob Herring #interrupt-cells = <2>; 146*724ba675SRob Herring interrupt-controller; 147*724ba675SRob Herring }; 148*724ba675SRob Herring 149*724ba675SRob Herring gpio5: gpio@480b6000 { 150*724ba675SRob Herring compatible = "ti,omap2-gpio"; 151*724ba675SRob Herring reg = <0x480b6000 0x200>; 152*724ba675SRob Herring interrupts = <33>; 153*724ba675SRob Herring ti,hwmods = "gpio5"; 154*724ba675SRob Herring #gpio-cells = <2>; 155*724ba675SRob Herring gpio-controller; 156*724ba675SRob Herring #interrupt-cells = <2>; 157*724ba675SRob Herring interrupt-controller; 158*724ba675SRob Herring }; 159*724ba675SRob Herring 160*724ba675SRob Herring gpmc: gpmc@6e000000 { 161*724ba675SRob Herring compatible = "ti,omap2430-gpmc"; 162*724ba675SRob Herring reg = <0x6e000000 0x1000>; 163*724ba675SRob Herring #address-cells = <2>; 164*724ba675SRob Herring #size-cells = <1>; 165*724ba675SRob Herring interrupts = <20>; 166*724ba675SRob Herring gpmc,num-cs = <8>; 167*724ba675SRob Herring gpmc,num-waitpins = <4>; 168*724ba675SRob Herring ti,hwmods = "gpmc"; 169*724ba675SRob Herring interrupt-controller; 170*724ba675SRob Herring #interrupt-cells = <2>; 171*724ba675SRob Herring gpio-controller; 172*724ba675SRob Herring #gpio-cells = <2>; 173*724ba675SRob Herring }; 174*724ba675SRob Herring 175*724ba675SRob Herring mcbsp1: mcbsp@48074000 { 176*724ba675SRob Herring compatible = "ti,omap2430-mcbsp"; 177*724ba675SRob Herring reg = <0x48074000 0xff>; 178*724ba675SRob Herring reg-names = "mpu"; 179*724ba675SRob Herring interrupts = <64>, /* OCP compliant interrupt */ 180*724ba675SRob Herring <59>, /* TX interrupt */ 181*724ba675SRob Herring <60>, /* RX interrupt */ 182*724ba675SRob Herring <61>; /* RX overflow interrupt */ 183*724ba675SRob Herring interrupt-names = "common", "tx", "rx", "rx_overflow"; 184*724ba675SRob Herring ti,buffer-size = <128>; 185*724ba675SRob Herring ti,hwmods = "mcbsp1"; 186*724ba675SRob Herring dmas = <&sdma 31>, 187*724ba675SRob Herring <&sdma 32>; 188*724ba675SRob Herring dma-names = "tx", "rx"; 189*724ba675SRob Herring status = "disabled"; 190*724ba675SRob Herring }; 191*724ba675SRob Herring 192*724ba675SRob Herring mcbsp2: mcbsp@48076000 { 193*724ba675SRob Herring compatible = "ti,omap2430-mcbsp"; 194*724ba675SRob Herring reg = <0x48076000 0xff>; 195*724ba675SRob Herring reg-names = "mpu"; 196*724ba675SRob Herring interrupts = <16>, /* OCP compliant interrupt */ 197*724ba675SRob Herring <62>, /* TX interrupt */ 198*724ba675SRob Herring <63>; /* RX interrupt */ 199*724ba675SRob Herring interrupt-names = "common", "tx", "rx"; 200*724ba675SRob Herring ti,buffer-size = <128>; 201*724ba675SRob Herring ti,hwmods = "mcbsp2"; 202*724ba675SRob Herring dmas = <&sdma 33>, 203*724ba675SRob Herring <&sdma 34>; 204*724ba675SRob Herring dma-names = "tx", "rx"; 205*724ba675SRob Herring status = "disabled"; 206*724ba675SRob Herring }; 207*724ba675SRob Herring 208*724ba675SRob Herring mcbsp3: mcbsp@4808c000 { 209*724ba675SRob Herring compatible = "ti,omap2430-mcbsp"; 210*724ba675SRob Herring reg = <0x4808c000 0xff>; 211*724ba675SRob Herring reg-names = "mpu"; 212*724ba675SRob Herring interrupts = <17>, /* OCP compliant interrupt */ 213*724ba675SRob Herring <89>, /* TX interrupt */ 214*724ba675SRob Herring <90>; /* RX interrupt */ 215*724ba675SRob Herring interrupt-names = "common", "tx", "rx"; 216*724ba675SRob Herring ti,buffer-size = <128>; 217*724ba675SRob Herring ti,hwmods = "mcbsp3"; 218*724ba675SRob Herring dmas = <&sdma 17>, 219*724ba675SRob Herring <&sdma 18>; 220*724ba675SRob Herring dma-names = "tx", "rx"; 221*724ba675SRob Herring status = "disabled"; 222*724ba675SRob Herring }; 223*724ba675SRob Herring 224*724ba675SRob Herring mcbsp4: mcbsp@4808e000 { 225*724ba675SRob Herring compatible = "ti,omap2430-mcbsp"; 226*724ba675SRob Herring reg = <0x4808e000 0xff>; 227*724ba675SRob Herring reg-names = "mpu"; 228*724ba675SRob Herring interrupts = <18>, /* OCP compliant interrupt */ 229*724ba675SRob Herring <54>, /* TX interrupt */ 230*724ba675SRob Herring <55>; /* RX interrupt */ 231*724ba675SRob Herring interrupt-names = "common", "tx", "rx"; 232*724ba675SRob Herring ti,buffer-size = <128>; 233*724ba675SRob Herring ti,hwmods = "mcbsp4"; 234*724ba675SRob Herring dmas = <&sdma 19>, 235*724ba675SRob Herring <&sdma 20>; 236*724ba675SRob Herring dma-names = "tx", "rx"; 237*724ba675SRob Herring status = "disabled"; 238*724ba675SRob Herring }; 239*724ba675SRob Herring 240*724ba675SRob Herring mcbsp5: mcbsp@48096000 { 241*724ba675SRob Herring compatible = "ti,omap2430-mcbsp"; 242*724ba675SRob Herring reg = <0x48096000 0xff>; 243*724ba675SRob Herring reg-names = "mpu"; 244*724ba675SRob Herring interrupts = <19>, /* OCP compliant interrupt */ 245*724ba675SRob Herring <81>, /* TX interrupt */ 246*724ba675SRob Herring <82>; /* RX interrupt */ 247*724ba675SRob Herring interrupt-names = "common", "tx", "rx"; 248*724ba675SRob Herring ti,buffer-size = <128>; 249*724ba675SRob Herring ti,hwmods = "mcbsp5"; 250*724ba675SRob Herring dmas = <&sdma 21>, 251*724ba675SRob Herring <&sdma 22>; 252*724ba675SRob Herring dma-names = "tx", "rx"; 253*724ba675SRob Herring status = "disabled"; 254*724ba675SRob Herring }; 255*724ba675SRob Herring 256*724ba675SRob Herring mmc1: mmc@4809c000 { 257*724ba675SRob Herring compatible = "ti,omap2-hsmmc"; 258*724ba675SRob Herring reg = <0x4809c000 0x200>; 259*724ba675SRob Herring interrupts = <83>; 260*724ba675SRob Herring ti,hwmods = "mmc1"; 261*724ba675SRob Herring ti,dual-volt; 262*724ba675SRob Herring dmas = <&sdma 61>, <&sdma 62>; 263*724ba675SRob Herring dma-names = "tx", "rx"; 264*724ba675SRob Herring pbias-supply = <&pbias_mmc_reg>; 265*724ba675SRob Herring }; 266*724ba675SRob Herring 267*724ba675SRob Herring mmc2: mmc@480b4000 { 268*724ba675SRob Herring compatible = "ti,omap2-hsmmc"; 269*724ba675SRob Herring reg = <0x480b4000 0x200>; 270*724ba675SRob Herring interrupts = <86>; 271*724ba675SRob Herring ti,hwmods = "mmc2"; 272*724ba675SRob Herring dmas = <&sdma 47>, <&sdma 48>; 273*724ba675SRob Herring dma-names = "tx", "rx"; 274*724ba675SRob Herring }; 275*724ba675SRob Herring 276*724ba675SRob Herring mailbox: mailbox@48094000 { 277*724ba675SRob Herring compatible = "ti,omap2-mailbox"; 278*724ba675SRob Herring reg = <0x48094000 0x200>; 279*724ba675SRob Herring interrupts = <26>; 280*724ba675SRob Herring ti,hwmods = "mailbox"; 281*724ba675SRob Herring #mbox-cells = <1>; 282*724ba675SRob Herring ti,mbox-num-users = <4>; 283*724ba675SRob Herring ti,mbox-num-fifos = <6>; 284*724ba675SRob Herring mbox_dsp: mbox-dsp { 285*724ba675SRob Herring ti,mbox-tx = <0 0 0>; 286*724ba675SRob Herring ti,mbox-rx = <1 0 0>; 287*724ba675SRob Herring }; 288*724ba675SRob Herring }; 289*724ba675SRob Herring 290*724ba675SRob Herring timer1_target: target-module@49018000 { 291*724ba675SRob Herring compatible = "ti,sysc-omap2-timer", "ti,sysc"; 292*724ba675SRob Herring reg = <0x49018000 0x4>, 293*724ba675SRob Herring <0x49018010 0x4>, 294*724ba675SRob Herring <0x49018014 0x4>; 295*724ba675SRob Herring reg-names = "rev", "sysc", "syss"; 296*724ba675SRob Herring ti,sysc-mask = <(SYSC_OMAP2_CLOCKACTIVITY | 297*724ba675SRob Herring SYSC_OMAP2_EMUFREE | 298*724ba675SRob Herring SYSC_OMAP2_ENAWAKEUP | 299*724ba675SRob Herring SYSC_OMAP2_SOFTRESET | 300*724ba675SRob Herring SYSC_OMAP2_AUTOIDLE)>; 301*724ba675SRob Herring ti,sysc-sidle = <SYSC_IDLE_FORCE>, 302*724ba675SRob Herring <SYSC_IDLE_NO>, 303*724ba675SRob Herring <SYSC_IDLE_SMART>; 304*724ba675SRob Herring ti,syss-mask = <1>; 305*724ba675SRob Herring clocks = <&gpt1_fck>, <&gpt1_ick>; 306*724ba675SRob Herring clock-names = "fck", "ick"; 307*724ba675SRob Herring #address-cells = <1>; 308*724ba675SRob Herring #size-cells = <1>; 309*724ba675SRob Herring ranges = <0x0 0x49018000 0x1000>; 310*724ba675SRob Herring 311*724ba675SRob Herring timer1: timer@0 { 312*724ba675SRob Herring compatible = "ti,omap2420-timer"; 313*724ba675SRob Herring reg = <0 0x400>; 314*724ba675SRob Herring interrupts = <37>; 315*724ba675SRob Herring ti,timer-alwon; 316*724ba675SRob Herring }; 317*724ba675SRob Herring }; 318*724ba675SRob Herring 319*724ba675SRob Herring mcspi3: spi@480b8000 { 320*724ba675SRob Herring compatible = "ti,omap2-mcspi"; 321*724ba675SRob Herring ti,hwmods = "mcspi3"; 322*724ba675SRob Herring reg = <0x480b8000 0x100>; 323*724ba675SRob Herring interrupts = <91>; 324*724ba675SRob Herring dmas = <&sdma 15 &sdma 16 &sdma 23 &sdma 24>; 325*724ba675SRob Herring dma-names = "tx0", "rx0", "tx1", "rx1"; 326*724ba675SRob Herring }; 327*724ba675SRob Herring 328*724ba675SRob Herring usb_otg_hs: usb_otg_hs@480ac000 { 329*724ba675SRob Herring compatible = "ti,omap2-musb"; 330*724ba675SRob Herring ti,hwmods = "usb_otg_hs"; 331*724ba675SRob Herring reg = <0x480ac000 0x1000>; 332*724ba675SRob Herring interrupts = <93>; 333*724ba675SRob Herring }; 334*724ba675SRob Herring 335*724ba675SRob Herring wd_timer2: wdt@49016000 { 336*724ba675SRob Herring compatible = "ti,omap2-wdt"; 337*724ba675SRob Herring ti,hwmods = "wd_timer2"; 338*724ba675SRob Herring reg = <0x49016000 0x80>; 339*724ba675SRob Herring }; 340*724ba675SRob Herring }; 341*724ba675SRob Herring}; 342*724ba675SRob Herring 343*724ba675SRob Herring&sdma { 344*724ba675SRob Herring compatible = "ti,omap2430-sdma", "ti,omap-sdma"; 345*724ba675SRob Herring}; 346*724ba675SRob Herring 347*724ba675SRob Herring&i2c1 { 348*724ba675SRob Herring compatible = "ti,omap2430-i2c"; 349*724ba675SRob Herring}; 350*724ba675SRob Herring 351*724ba675SRob Herring&i2c2 { 352*724ba675SRob Herring compatible = "ti,omap2430-i2c"; 353*724ba675SRob Herring}; 354*724ba675SRob Herring 355*724ba675SRob Herring#include "omap24xx-clocks.dtsi" 356*724ba675SRob Herring#include "omap2430-clocks.dtsi" 357*724ba675SRob Herring 358*724ba675SRob Herring/* Preferred always-on timer for clockevent */ 359*724ba675SRob Herring&timer1_target { 360*724ba675SRob Herring ti,no-reset-on-init; 361*724ba675SRob Herring ti,no-idle; 362*724ba675SRob Herring timer@0 { 363*724ba675SRob Herring assigned-clocks = <&gpt1_fck>; 364*724ba675SRob Herring assigned-clock-parents = <&func_32k_ck>; 365*724ba675SRob Herring }; 366*724ba675SRob Herring}; 367