Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: GPL-2.0-only
0002 /*
0003  * Copyright (C) 2012 Texas Instruments Incorporated - https://www.ti.com/
0004  *
0005  * Based on "omap4.dtsi"
0006  */
0007 
0008 #include <dt-bindings/bus/ti-sysc.h>
0009 #include <dt-bindings/gpio/gpio.h>
0010 #include <dt-bindings/interrupt-controller/arm-gic.h>
0011 #include <dt-bindings/pinctrl/omap.h>
0012 #include <dt-bindings/clock/omap5.h>
0013 
0014 / {
0015         #address-cells = <2>;
0016         #size-cells = <2>;
0017 
0018         compatible = "ti,omap5";
0019         interrupt-parent = <&wakeupgen>;
0020         chosen { };
0021 
0022         aliases {
0023                 i2c0 = &i2c1;
0024                 i2c1 = &i2c2;
0025                 i2c2 = &i2c3;
0026                 i2c3 = &i2c4;
0027                 i2c4 = &i2c5;
0028                 mmc0 = &mmc1;
0029                 mmc1 = &mmc2;
0030                 mmc2 = &mmc3;
0031                 mmc3 = &mmc4;
0032                 mmc4 = &mmc5;
0033                 serial0 = &uart1;
0034                 serial1 = &uart2;
0035                 serial2 = &uart3;
0036                 serial3 = &uart4;
0037                 serial4 = &uart5;
0038                 serial5 = &uart6;
0039                 rproc0 = &dsp;
0040                 rproc1 = &ipu;
0041         };
0042 
0043         cpus {
0044                 #address-cells = <1>;
0045                 #size-cells = <0>;
0046 
0047                 cpu0: cpu@0 {
0048                         device_type = "cpu";
0049                         compatible = "arm,cortex-a15";
0050                         reg = <0x0>;
0051 
0052                         operating-points = <
0053                                 /* kHz    uV */
0054                                 1000000 1060000
0055                                 1500000 1250000
0056                         >;
0057 
0058                         clocks = <&dpll_mpu_ck>;
0059                         clock-names = "cpu";
0060 
0061                         clock-latency = <300000>; /* From omap-cpufreq driver */
0062 
0063                         /* cooling options */
0064                         #cooling-cells = <2>; /* min followed by max */
0065                 };
0066                 cpu@1 {
0067                         device_type = "cpu";
0068                         compatible = "arm,cortex-a15";
0069                         reg = <0x1>;
0070 
0071                         operating-points = <
0072                                 /* kHz    uV */
0073                                 1000000 1060000
0074                                 1500000 1250000
0075                         >;
0076 
0077                         clocks = <&dpll_mpu_ck>;
0078                         clock-names = "cpu";
0079 
0080                         clock-latency = <300000>; /* From omap-cpufreq driver */
0081 
0082                         /* cooling options */
0083                         #cooling-cells = <2>; /* min followed by max */
0084                 };
0085         };
0086 
0087         thermal-zones {
0088                 #include "omap4-cpu-thermal.dtsi"
0089                 #include "omap5-gpu-thermal.dtsi"
0090                 #include "omap5-core-thermal.dtsi"
0091         };
0092 
0093         timer {
0094                 compatible = "arm,armv7-timer";
0095                 /* PPI secure/nonsecure IRQ */
0096                 interrupts = <GIC_PPI 13 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_LOW)>,
0097                              <GIC_PPI 14 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_LOW)>,
0098                              <GIC_PPI 11 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_LOW)>,
0099                              <GIC_PPI 10 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_LOW)>;
0100                 interrupt-parent = <&gic>;
0101         };
0102 
0103         pmu {
0104                 compatible = "arm,cortex-a15-pmu";
0105                 interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>,
0106                              <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>;
0107         };
0108 
0109         /*
0110          * Needed early by omap4_sram_init() for barrier, do not move to l3
0111          * interconnect as simple-pm-bus probes at module_init() time.
0112          */
0113         ocmcram: sram@40300000 {
0114                 compatible = "mmio-sram";
0115                 reg = <0 0x40300000 0 0x20000>; /* 128k */
0116         };
0117 
0118         gic: interrupt-controller@48211000 {
0119                 compatible = "arm,cortex-a15-gic";
0120                 interrupt-controller;
0121                 #interrupt-cells = <3>;
0122                 reg = <0 0x48211000 0 0x1000>,
0123                       <0 0x48212000 0 0x2000>,
0124                       <0 0x48214000 0 0x2000>,
0125                       <0 0x48216000 0 0x2000>;
0126                 interrupt-parent = <&gic>;
0127         };
0128 
0129         wakeupgen: interrupt-controller@48281000 {
0130                 compatible = "ti,omap5-wugen-mpu", "ti,omap4-wugen-mpu";
0131                 interrupt-controller;
0132                 #interrupt-cells = <3>;
0133                 reg = <0 0x48281000 0 0x1000>;
0134                 interrupt-parent = <&gic>;
0135         };
0136 
0137         /*
0138          * XXX: Use a flat representation of the OMAP3 interconnect.
0139          * The real OMAP interconnect network is quite complex.
0140          * Since it will not bring real advantage to represent that in DT for
0141          * the moment, just use a fake OCP bus entry to represent the whole bus
0142          * hierarchy.
0143          */
0144         ocp {
0145                 compatible = "simple-pm-bus";
0146                 power-domains = <&prm_core>;
0147                 clocks = <&l3main1_clkctrl OMAP5_L3_MAIN_1_CLKCTRL 0>,
0148                          <&l3main2_clkctrl OMAP5_L3_MAIN_2_CLKCTRL 0>,
0149                          <&l3instr_clkctrl OMAP5_L3_MAIN_3_CLKCTRL 0>;
0150                 #address-cells = <1>;
0151                 #size-cells = <1>;
0152                 ranges = <0 0 0 0xc0000000>;
0153                 dma-ranges = <0x80000000 0x0 0x80000000 0x80000000>;
0154 
0155                 l3-noc@44000000 {
0156                         compatible = "ti,omap5-l3-noc";
0157                         reg = <0x44000000 0x2000>,
0158                               <0x44800000 0x3000>,
0159                               <0x45000000 0x4000>;
0160                         interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
0161                                      <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
0162                 };
0163 
0164                 l4_wkup: interconnect@4ae00000 {
0165                 };
0166 
0167                 l4_cfg: interconnect@4a000000 {
0168                 };
0169 
0170                 l4_per: interconnect@48000000 {
0171                 };
0172 
0173                 target-module@48210000 {
0174                         compatible = "ti,sysc-omap4-simple", "ti,sysc";
0175                         power-domains = <&prm_mpu>;
0176                         clocks = <&mpu_clkctrl OMAP5_MPU_CLKCTRL 0>;
0177                         clock-names = "fck";
0178                         #address-cells = <1>;
0179                         #size-cells = <1>;
0180                         ranges = <0 0x48210000 0x1f0000>;
0181 
0182                         mpu {
0183                                 compatible = "ti,omap4-mpu";
0184                                 sram = <&ocmcram>;
0185                         };
0186                 };
0187 
0188                 l4_abe: interconnect@40100000 {
0189                 };
0190 
0191                 target-module@50000000 {
0192                         compatible = "ti,sysc-omap2", "ti,sysc";
0193                         reg = <0x50000000 4>,
0194                               <0x50000010 4>,
0195                               <0x50000014 4>;
0196                         reg-names = "rev", "sysc", "syss";
0197                         ti,sysc-sidle = <SYSC_IDLE_FORCE>,
0198                                         <SYSC_IDLE_NO>,
0199                                         <SYSC_IDLE_SMART>;
0200                         ti,syss-mask = <1>;
0201                         ti,no-idle-on-init;
0202                         clocks = <&l3main2_clkctrl OMAP5_L3_MAIN_2_GPMC_CLKCTRL 0>;
0203                         clock-names = "fck";
0204                         #address-cells = <1>;
0205                         #size-cells = <1>;
0206                         ranges = <0x50000000 0x50000000 0x00001000>, /* regs */
0207                                  <0x00000000 0x00000000 0x40000000>; /* data */
0208 
0209                         gpmc: gpmc@50000000 {
0210                                 compatible = "ti,omap4430-gpmc";
0211                                 reg = <0x50000000 0x1000>;
0212                                 #address-cells = <2>;
0213                                 #size-cells = <1>;
0214                                 interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
0215                                 dmas = <&sdma 4>;
0216                                 dma-names = "rxtx";
0217                                 gpmc,num-cs = <8>;
0218                                 gpmc,num-waitpins = <4>;
0219                                 clock-names = "fck";
0220                                 interrupt-controller;
0221                                 #interrupt-cells = <2>;
0222                                 gpio-controller;
0223                                 #gpio-cells = <2>;
0224                         };
0225                 };
0226 
0227                 target-module@55082000 {
0228                         compatible = "ti,sysc-omap2", "ti,sysc";
0229                         reg = <0x55082000 0x4>,
0230                               <0x55082010 0x4>,
0231                               <0x55082014 0x4>;
0232                         reg-names = "rev", "sysc", "syss";
0233                         ti,sysc-sidle = <SYSC_IDLE_FORCE>,
0234                                         <SYSC_IDLE_NO>,
0235                                         <SYSC_IDLE_SMART>;
0236                         ti,sysc-mask = <(SYSC_OMAP2_CLOCKACTIVITY |
0237                                          SYSC_OMAP2_SOFTRESET |
0238                                          SYSC_OMAP2_AUTOIDLE)>;
0239                         clocks = <&ipu_clkctrl OMAP5_MMU_IPU_CLKCTRL 0>;
0240                         clock-names = "fck";
0241                         resets = <&prm_core 2>;
0242                         reset-names = "rstctrl";
0243                         ranges = <0x0 0x55082000 0x100>;
0244                         #size-cells = <1>;
0245                         #address-cells = <1>;
0246 
0247                         mmu_ipu: mmu@0 {
0248                                 compatible = "ti,omap4-iommu";
0249                                 reg = <0x0 0x100>;
0250                                 interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
0251                                 #iommu-cells = <0>;
0252                                 ti,iommu-bus-err-back;
0253                         };
0254                 };
0255 
0256                 dsp: dsp {
0257                         compatible = "ti,omap5-dsp";
0258                         ti,bootreg = <&scm_conf 0x304 0>;
0259                         iommus = <&mmu_dsp>;
0260                         resets = <&prm_dsp 0>;
0261                         clocks = <&dsp_clkctrl OMAP5_MMU_DSP_CLKCTRL 0>;
0262                         firmware-name = "omap5-dsp-fw.xe64T";
0263                         mboxes = <&mailbox &mbox_dsp>;
0264                         status = "disabled";
0265                 };
0266 
0267                 ipu: ipu@55020000 {
0268                         compatible = "ti,omap5-ipu";
0269                         reg = <0x55020000 0x10000>;
0270                         reg-names = "l2ram";
0271                         iommus = <&mmu_ipu>;
0272                         resets = <&prm_core 0>, <&prm_core 1>;
0273                         clocks = <&ipu_clkctrl OMAP5_MMU_IPU_CLKCTRL 0>;
0274                         firmware-name = "omap5-ipu-fw.xem4";
0275                         mboxes = <&mailbox &mbox_ipu>;
0276                         status = "disabled";
0277                 };
0278 
0279                 target-module@4e000000 {
0280                         compatible = "ti,sysc-omap2", "ti,sysc";
0281                         reg = <0x4e000000 0x4>,
0282                               <0x4e000010 0x4>;
0283                         reg-names = "rev", "sysc";
0284                         ti,sysc-sidle = <SYSC_IDLE_FORCE>,
0285                                         <SYSC_IDLE_NO>,
0286                                         <SYSC_IDLE_SMART>;
0287                         ranges = <0x0 0x4e000000 0x2000000>;
0288                         #size-cells = <1>;
0289                         #address-cells = <1>;
0290 
0291                         dmm@0 {
0292                                 compatible = "ti,omap5-dmm";
0293                                 reg = <0 0x800>;
0294                                 interrupts = <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>;
0295                         };
0296                 };
0297 
0298                 target-module@4c000000 {
0299                         compatible = "ti,sysc-omap4-simple", "ti,sysc";
0300                         reg = <0x4c000000 0x4>;
0301                         reg-names = "rev";
0302                         clocks = <&emif_clkctrl OMAP5_EMIF1_CLKCTRL 0>;
0303                         clock-names = "fck";
0304                         ti,no-idle;
0305                         #address-cells = <1>;
0306                         #size-cells = <1>;
0307                         ranges = <0x0 0x4c000000 0x1000000>;
0308 
0309                         emif1: emif@0 {
0310                                 compatible = "ti,emif-4d5";
0311                                 reg = <0 0x400>;
0312                                 interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
0313                                 phy-type = <2>; /* DDR PHY type: Intelli PHY */
0314                                 hw-caps-read-idle-ctrl;
0315                                 hw-caps-ll-interface;
0316                                 hw-caps-temp-alert;
0317                         };
0318                 };
0319 
0320                 target-module@4d000000 {
0321                         compatible = "ti,sysc-omap4-simple", "ti,sysc";
0322                         reg = <0x4d000000 0x4>;
0323                         reg-names = "rev";
0324                         clocks = <&emif_clkctrl OMAP5_EMIF2_CLKCTRL 0>;
0325                         clock-names = "fck";
0326                         ti,no-idle;
0327                         #address-cells = <1>;
0328                         #size-cells = <1>;
0329                         ranges = <0x0 0x4d000000 0x1000000>;
0330 
0331                         emif2: emif@0 {
0332                                 compatible = "ti,emif-4d5";
0333                                 reg = <0 0x400>;
0334                                 interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>;
0335                                 phy-type = <2>; /* DDR PHY type: Intelli PHY */
0336                                 hw-caps-read-idle-ctrl;
0337                                 hw-caps-ll-interface;
0338                                 hw-caps-temp-alert;
0339                         };
0340                 };
0341 
0342                 aes1_target: target-module@4b501000 {
0343                         compatible = "ti,sysc-omap2", "ti,sysc";
0344                         reg = <0x4b501080 0x4>,
0345                               <0x4b501084 0x4>,
0346                               <0x4b501088 0x4>;
0347                         reg-names = "rev", "sysc", "syss";
0348                         ti,sysc-mask = <(SYSC_OMAP2_SOFTRESET |
0349                                          SYSC_OMAP2_AUTOIDLE)>;
0350                         ti,sysc-sidle = <SYSC_IDLE_FORCE>,
0351                                         <SYSC_IDLE_NO>,
0352                                         <SYSC_IDLE_SMART>,
0353                                         <SYSC_IDLE_SMART_WKUP>;
0354                         ti,syss-mask = <1>;
0355                         /* Domains (P, C): l4per_pwrdm, l4sec_clkdm */
0356                         clocks = <&l4sec_clkctrl OMAP5_AES1_CLKCTRL 0>;
0357                         clock-names = "fck";
0358                         #address-cells = <1>;
0359                         #size-cells = <1>;
0360                         ranges = <0x0 0x4b501000 0x1000>;
0361 
0362                         aes1: aes@0 {
0363                                 compatible = "ti,omap4-aes";
0364                                 reg = <0 0xa0>;
0365                                 interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
0366                                 dmas = <&sdma 111>, <&sdma 110>;
0367                                 dma-names = "tx", "rx";
0368                         };
0369                 };
0370 
0371                 aes2_target: target-module@4b701000 {
0372                         compatible = "ti,sysc-omap2", "ti,sysc";
0373                         reg = <0x4b701080 0x4>,
0374                               <0x4b701084 0x4>,
0375                               <0x4b701088 0x4>;
0376                         reg-names = "rev", "sysc", "syss";
0377                         ti,sysc-mask = <(SYSC_OMAP2_SOFTRESET |
0378                                          SYSC_OMAP2_AUTOIDLE)>;
0379                         ti,sysc-sidle = <SYSC_IDLE_FORCE>,
0380                                         <SYSC_IDLE_NO>,
0381                                         <SYSC_IDLE_SMART>,
0382                                         <SYSC_IDLE_SMART_WKUP>;
0383                         ti,syss-mask = <1>;
0384                         /* Domains (P, C): l4per_pwrdm, l4sec_clkdm */
0385                         clocks = <&l4sec_clkctrl OMAP5_AES2_CLKCTRL 0>;
0386                         clock-names = "fck";
0387                         #address-cells = <1>;
0388                         #size-cells = <1>;
0389                         ranges = <0x0 0x4b701000 0x1000>;
0390 
0391                         aes2: aes@0 {
0392                                 compatible = "ti,omap4-aes";
0393                                 reg = <0 0xa0>;
0394                                 interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>;
0395                                 dmas = <&sdma 114>, <&sdma 113>;
0396                                 dma-names = "tx", "rx";
0397                         };
0398                 };
0399 
0400                 sham_target: target-module@4b100000 {
0401                         compatible = "ti,sysc-omap3-sham", "ti,sysc";
0402                         reg = <0x4b100100 0x4>,
0403                               <0x4b100110 0x4>,
0404                               <0x4b100114 0x4>;
0405                         reg-names = "rev", "sysc", "syss";
0406                         ti,sysc-mask = <(SYSC_OMAP2_SOFTRESET |
0407                                          SYSC_OMAP2_AUTOIDLE)>;
0408                         ti,sysc-sidle = <SYSC_IDLE_FORCE>,
0409                                         <SYSC_IDLE_NO>,
0410                                         <SYSC_IDLE_SMART>;
0411                         ti,syss-mask = <1>;
0412                         /* Domains (P, C): l4per_pwrdm, l4sec_clkdm */
0413                         clocks = <&l4sec_clkctrl OMAP5_SHA2MD5_CLKCTRL 0>;
0414                         clock-names = "fck";
0415                         #address-cells = <1>;
0416                         #size-cells = <1>;
0417                         ranges = <0x0 0x4b100000 0x1000>;
0418 
0419                         sham: sham@0 {
0420                                 compatible = "ti,omap4-sham";
0421                                 reg = <0 0x300>;
0422                                 interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>;
0423                                 dmas = <&sdma 119>;
0424                                 dma-names = "rx";
0425                         };
0426                 };
0427 
0428                 bandgap: bandgap@4a0021e0 {
0429                         reg = <0x4a0021e0 0xc
0430                                0x4a00232c 0xc
0431                                0x4a002380 0x2c
0432                                0x4a0023C0 0x3c>;
0433                         interrupts = <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>;
0434                         compatible = "ti,omap5430-bandgap";
0435 
0436                         #thermal-sensor-cells = <1>;
0437                 };
0438 
0439                 target-module@56000000 {
0440                         compatible = "ti,sysc-omap4", "ti,sysc";
0441                         reg = <0x5600fe00 0x4>,
0442                               <0x5600fe10 0x4>;
0443                         reg-names = "rev", "sysc";
0444                         ti,sysc-midle = <SYSC_IDLE_FORCE>,
0445                                         <SYSC_IDLE_NO>,
0446                                         <SYSC_IDLE_SMART>;
0447                         ti,sysc-sidle = <SYSC_IDLE_FORCE>,
0448                                         <SYSC_IDLE_NO>,
0449                                         <SYSC_IDLE_SMART>;
0450                         clocks = <&gpu_clkctrl OMAP5_GPU_CLKCTRL 0>;
0451                         clock-names = "fck";
0452                         #address-cells = <1>;
0453                         #size-cells = <1>;
0454                         ranges = <0 0x56000000 0x2000000>;
0455 
0456                         /*
0457                          * Closed source PowerVR driver, no child device
0458                          * binding or driver in mainline
0459                          */
0460                 };
0461 
0462                 target-module@58000000 {
0463                         compatible = "ti,sysc-omap2", "ti,sysc";
0464                         reg = <0x58000000 4>,
0465                               <0x58000014 4>;
0466                         reg-names = "rev", "syss";
0467                         ti,syss-mask = <1>;
0468                         power-domains = <&prm_dss>;
0469                         clocks = <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 0>,
0470                                  <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 9>,
0471                                  <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 10>,
0472                                  <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 11>;
0473                         clock-names = "fck", "hdmi_clk", "sys_clk", "tv_clk";
0474                         #address-cells = <1>;
0475                         #size-cells = <1>;
0476                         ranges = <0 0x58000000 0x1000000>;
0477 
0478                         dss: dss@0 {
0479                                 compatible = "ti,omap5-dss";
0480                                 reg = <0 0x80>;
0481                                 status = "disabled";
0482                                 clocks = <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 8>;
0483                                 clock-names = "fck";
0484                                 #address-cells = <1>;
0485                                 #size-cells = <1>;
0486                                 ranges = <0 0 0x1000000>;
0487 
0488                                 target-module@1000 {
0489                                         compatible = "ti,sysc-omap2", "ti,sysc";
0490                                         reg = <0x1000 0x4>,
0491                                               <0x1010 0x4>,
0492                                               <0x1014 0x4>;
0493                                         reg-names = "rev", "sysc", "syss";
0494                                         ti,sysc-sidle = <SYSC_IDLE_FORCE>,
0495                                                         <SYSC_IDLE_NO>,
0496                                                         <SYSC_IDLE_SMART>;
0497                                         ti,sysc-midle = <SYSC_IDLE_FORCE>,
0498                                                         <SYSC_IDLE_NO>,
0499                                                         <SYSC_IDLE_SMART>;
0500                                         ti,sysc-mask = <(SYSC_OMAP2_CLOCKACTIVITY |
0501                                                          SYSC_OMAP2_ENAWAKEUP |
0502                                                          SYSC_OMAP2_SOFTRESET |
0503                                                          SYSC_OMAP2_AUTOIDLE)>;
0504                                         ti,syss-mask = <1>;
0505                                         clocks = <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 8>;
0506                                         clock-names = "fck";
0507                                         #address-cells = <1>;
0508                                         #size-cells = <1>;
0509                                         ranges = <0 0x1000 0x1000>;
0510 
0511                                         dispc@0 {
0512                                                 compatible = "ti,omap5-dispc";
0513                                                 reg = <0 0x1000>;
0514                                                 interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
0515                                                 clocks = <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 8>;
0516                                                 clock-names = "fck";
0517                                         };
0518                                 };
0519 
0520                                 target-module@2000 {
0521                                         compatible = "ti,sysc-omap2", "ti,sysc";
0522                                         reg = <0x2000 0x4>,
0523                                               <0x2010 0x4>,
0524                                               <0x2014 0x4>;
0525                                         reg-names = "rev", "sysc", "syss";
0526                                         ti,sysc-sidle = <SYSC_IDLE_FORCE>,
0527                                                         <SYSC_IDLE_NO>,
0528                                                         <SYSC_IDLE_SMART>;
0529                                         ti,sysc-mask = <(SYSC_OMAP2_SOFTRESET |
0530                                                          SYSC_OMAP2_AUTOIDLE)>;
0531                                         ti,syss-mask = <1>;
0532                                         clocks = <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 8>;
0533                                         clock-names = "fck";
0534                                         #address-cells = <1>;
0535                                         #size-cells = <1>;
0536                                         ranges = <0 0x2000 0x1000>;
0537 
0538                                         rfbi: encoder@0  {
0539                                                 compatible = "ti,omap5-rfbi";
0540                                                 reg = <0 0x100>;
0541                                                 status = "disabled";
0542                                                 clocks = <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 8>, <&l3_iclk_div>;
0543                                                 clock-names = "fck", "ick";
0544                                         };
0545                                 };
0546 
0547                                 target-module@4000 {
0548                                         compatible = "ti,sysc-omap2", "ti,sysc";
0549                                         reg = <0x4000 0x4>,
0550                                               <0x4010 0x4>,
0551                                               <0x4014 0x4>;
0552                                         reg-names = "rev", "sysc", "syss";
0553                                         ti,sysc-sidle = <SYSC_IDLE_FORCE>,
0554                                                         <SYSC_IDLE_NO>,
0555                                                         <SYSC_IDLE_SMART>;
0556                                         ti,sysc-mask = <(SYSC_OMAP2_CLOCKACTIVITY |
0557                                                          SYSC_OMAP2_ENAWAKEUP |
0558                                                          SYSC_OMAP2_SOFTRESET |
0559                                                          SYSC_OMAP2_AUTOIDLE)>;
0560                                         ti,syss-mask = <1>;
0561                                         #address-cells = <1>;
0562                                         #size-cells = <1>;
0563                                         ranges = <0 0x4000 0x1000>;
0564 
0565                                         dsi1: encoder@0 {
0566                                                 compatible = "ti,omap5-dsi";
0567                                                 reg = <0 0x200>,
0568                                                       <0x200 0x40>,
0569                                                       <0x300 0x40>;
0570                                                 reg-names = "proto", "phy", "pll";
0571                                                 interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
0572                                                 status = "disabled";
0573                                                 clocks = <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 8>,
0574                                                          <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 10>;
0575                                                 clock-names = "fck", "sys_clk";
0576 
0577                                                 #address-cells = <1>;
0578                                                 #size-cells = <0>;
0579                                         };
0580                                 };
0581 
0582                                 target-module@9000 {
0583                                         compatible = "ti,sysc-omap2", "ti,sysc";
0584                                         reg = <0x9000 0x4>,
0585                                               <0x9010 0x4>,
0586                                               <0x9014 0x4>;
0587                                         reg-names = "rev", "sysc", "syss";
0588                                         ti,sysc-sidle = <SYSC_IDLE_FORCE>,
0589                                                         <SYSC_IDLE_NO>,
0590                                                         <SYSC_IDLE_SMART>;
0591                                         ti,sysc-mask = <(SYSC_OMAP2_CLOCKACTIVITY |
0592                                                          SYSC_OMAP2_ENAWAKEUP |
0593                                                          SYSC_OMAP2_SOFTRESET |
0594                                                          SYSC_OMAP2_AUTOIDLE)>;
0595                                         ti,syss-mask = <1>;
0596                                         #address-cells = <1>;
0597                                         #size-cells = <1>;
0598                                         ranges = <0 0x9000 0x1000>;
0599 
0600                                         dsi2: encoder@0 {
0601                                                 compatible = "ti,omap5-dsi";
0602                                                 reg = <0 0x200>,
0603                                                       <0x200 0x40>,
0604                                                       <0x300 0x40>;
0605                                                 reg-names = "proto", "phy", "pll";
0606                                                 interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
0607                                                 status = "disabled";
0608                                                 clocks = <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 8>,
0609                                                          <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 10>;
0610                                                 clock-names = "fck", "sys_clk";
0611 
0612                                                 #address-cells = <1>;
0613                                                 #size-cells = <0>;
0614                                         };
0615                                 };
0616 
0617                                 target-module@40000 {
0618                                         compatible = "ti,sysc-omap4", "ti,sysc";
0619                                         reg = <0x40000 0x4>,
0620                                               <0x40010 0x4>;
0621                                         reg-names = "rev", "sysc";
0622                                         ti,sysc-sidle = <SYSC_IDLE_FORCE>,
0623                                                         <SYSC_IDLE_NO>,
0624                                                         <SYSC_IDLE_SMART>,
0625                                                         <SYSC_IDLE_SMART_WKUP>;
0626                                         ti,sysc-mask = <(SYSC_OMAP4_SOFTRESET)>;
0627                                         clocks = <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 9>,
0628                                                  <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 8>;
0629                                         clock-names = "fck", "dss_clk";
0630                                         #address-cells = <1>;
0631                                         #size-cells = <1>;
0632                                         ranges = <0 0x40000 0x40000>;
0633 
0634                                         hdmi: encoder@0 {
0635                                                 compatible = "ti,omap5-hdmi";
0636                                                 reg = <0 0x200>,
0637                                                       <0x200 0x80>,
0638                                                       <0x300 0x80>,
0639                                                       <0x20000 0x19000>;
0640                                                 reg-names = "wp", "pll", "phy", "core";
0641                                                 interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
0642                                                 status = "disabled";
0643                                                 clocks = <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 9>,
0644                                                          <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 10>;
0645                                                 clock-names = "fck", "sys_clk";
0646                                                 dmas = <&sdma 76>;
0647                                                 dma-names = "audio_tx";
0648                                         };
0649                                 };
0650                         };
0651                 };
0652 
0653                 abb_mpu: regulator-abb-mpu {
0654                         compatible = "ti,abb-v2";
0655                         regulator-name = "abb_mpu";
0656                         #address-cells = <0>;
0657                         #size-cells = <0>;
0658                         clocks = <&sys_clkin>;
0659                         ti,settling-time = <50>;
0660                         ti,clock-cycles = <16>;
0661 
0662                         reg = <0x4ae07cdc 0x8>, <0x4ae06014 0x4>,
0663                               <0x4a0021c4 0x8>, <0x4ae0c318 0x4>;
0664                         reg-names = "base-address", "int-address",
0665                                     "efuse-address", "ldo-address";
0666                         ti,tranxdone-status-mask = <0x80>;
0667                         /* LDOVBBMPU_MUX_CTRL */
0668                         ti,ldovbb-override-mask = <0x400>;
0669                         /* LDOVBBMPU_VSET_OUT */
0670                         ti,ldovbb-vset-mask = <0x1F>;
0671 
0672                         /*
0673                          * NOTE: only FBB mode used but actual vset will
0674                          * determine final biasing
0675                          */
0676                         ti,abb_info = <
0677                         /*uV            ABB     efuse   rbb_m fbb_m     vset_m*/
0678                         1060000         0       0x0     0 0x02000000 0x01F00000
0679                         1250000         0       0x4     0 0x02000000 0x01F00000
0680                         >;
0681                 };
0682 
0683                 abb_mm: regulator-abb-mm {
0684                         compatible = "ti,abb-v2";
0685                         regulator-name = "abb_mm";
0686                         #address-cells = <0>;
0687                         #size-cells = <0>;
0688                         clocks = <&sys_clkin>;
0689                         ti,settling-time = <50>;
0690                         ti,clock-cycles = <16>;
0691 
0692                         reg = <0x4ae07ce4 0x8>, <0x4ae06010 0x4>,
0693                               <0x4a0021a4 0x8>, <0x4ae0c314 0x4>;
0694                         reg-names = "base-address", "int-address",
0695                                     "efuse-address", "ldo-address";
0696                         ti,tranxdone-status-mask = <0x80000000>;
0697                         /* LDOVBBMM_MUX_CTRL */
0698                         ti,ldovbb-override-mask = <0x400>;
0699                         /* LDOVBBMM_VSET_OUT */
0700                         ti,ldovbb-vset-mask = <0x1F>;
0701 
0702                         /*
0703                          * NOTE: only FBB mode used but actual vset will
0704                          * determine final biasing
0705                          */
0706                         ti,abb_info = <
0707                         /*uV            ABB     efuse   rbb_m fbb_m     vset_m*/
0708                         1025000         0       0x0     0 0x02000000 0x01F00000
0709                         1120000         0       0x4     0 0x02000000 0x01F00000
0710                         >;
0711                 };
0712         };
0713 };
0714 
0715 &cpu_thermal {
0716         polling-delay = <500>; /* milliseconds */
0717         coefficients = <65 (-1791)>;
0718 };
0719 
0720 #include "omap5-l4.dtsi"
0721 #include "omap54xx-clocks.dtsi"
0722 
0723 &gpu_thermal {
0724         coefficients = <117 (-2992)>;
0725 };
0726 
0727 &core_thermal {
0728         coefficients = <0 2000>;
0729 };
0730 
0731 #include "omap5-l4-abe.dtsi"
0732 #include "omap54xx-clocks.dtsi"
0733 
0734 &prm {
0735         prm_mpu: prm@300 {
0736                 compatible = "ti,omap5-prm-inst", "ti,omap-prm-inst";
0737                 reg = <0x300 0x100>;
0738                 #power-domain-cells = <0>;
0739         };
0740 
0741         prm_dsp: prm@400 {
0742                 compatible = "ti,omap5-prm-inst", "ti,omap-prm-inst";
0743                 reg = <0x400 0x100>;
0744                 #reset-cells = <1>;
0745                 #power-domain-cells = <0>;
0746         };
0747 
0748         prm_abe: prm@500 {
0749                 compatible = "ti,omap5-prm-inst", "ti,omap-prm-inst";
0750                 reg = <0x500 0x100>;
0751                 #power-domain-cells = <0>;
0752         };
0753 
0754         prm_coreaon: prm@600 {
0755                 compatible = "ti,omap5-prm-inst", "ti,omap-prm-inst";
0756                 reg = <0x600 0x100>;
0757                 #power-domain-cells = <0>;
0758         };
0759 
0760         prm_core: prm@700 {
0761                 compatible = "ti,omap5-prm-inst", "ti,omap-prm-inst";
0762                 reg = <0x700 0x100>;
0763                 #reset-cells = <1>;
0764                 #power-domain-cells = <0>;
0765         };
0766 
0767         prm_iva: prm@1200 {
0768                 compatible = "ti,omap5-prm-inst", "ti,omap-prm-inst";
0769                 reg = <0x1200 0x100>;
0770                 #reset-cells = <1>;
0771                 #power-domain-cells = <0>;
0772         };
0773 
0774         prm_cam: prm@1300 {
0775                 compatible = "ti,omap5-prm-inst", "ti,omap-prm-inst";
0776                 reg = <0x1300 0x100>;
0777                 #power-domain-cells = <0>;
0778         };
0779 
0780         prm_dss: prm@1400 {
0781                 compatible = "ti,omap5-prm-inst", "ti,omap-prm-inst";
0782                 reg = <0x1400 0x100>;
0783                 #power-domain-cells = <0>;
0784         };
0785 
0786         prm_gpu: prm@1500 {
0787                 compatible = "ti,omap5-prm-inst", "ti,omap-prm-inst";
0788                 reg = <0x1500 0x100>;
0789                 #power-domain-cells = <0>;
0790         };
0791 
0792         prm_l3init: prm@1600 {
0793                 compatible = "ti,omap5-prm-inst", "ti,omap-prm-inst";
0794                 reg = <0x1600 0x100>;
0795                 #power-domain-cells = <0>;
0796         };
0797 
0798         prm_custefuse: prm@1700 {
0799                 compatible = "ti,omap5-prm-inst", "ti,omap-prm-inst";
0800                 reg = <0x1700 0x100>;
0801                 #power-domain-cells = <0>;
0802         };
0803 
0804         prm_wkupaon: prm@1800 {
0805                 compatible = "ti,omap5-prm-inst", "ti,omap-prm-inst";
0806                 reg = <0x1800 0x100>;
0807                 #power-domain-cells = <0>;
0808         };
0809 
0810         prm_emu: prm@1a00 {
0811                 compatible = "ti,omap5-prm-inst", "ti,omap-prm-inst";
0812                 reg = <0x1a00 0x100>;
0813                 #power-domain-cells = <0>;
0814         };
0815 
0816         prm_device: prm@1c00 {
0817                 compatible = "ti,omap5-prm-inst", "ti,omap-prm-inst";
0818                 reg = <0x1c00 0x100>;
0819                 #reset-cells = <1>;
0820         };
0821 };
0822 
0823 /* Preferred always-on timer for clockevent */
0824 &timer1_target {
0825         ti,no-reset-on-init;
0826         ti,no-idle;
0827         timer@0 {
0828                 assigned-clocks = <&wkupaon_clkctrl OMAP5_TIMER1_CLKCTRL 24>;
0829                 assigned-clock-parents = <&sys_32k_ck>;
0830         };
0831 };