cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

dra7.dtsi (36425B)


      1// SPDX-License-Identifier: GPL-2.0-only
      2/*
      3 * Copyright (C) 2013 Texas Instruments Incorporated - https://www.ti.com/
      4 *
      5 * Based on "omap4.dtsi"
      6 */
      7
      8#include <dt-bindings/bus/ti-sysc.h>
      9#include <dt-bindings/clock/dra7.h>
     10#include <dt-bindings/interrupt-controller/arm-gic.h>
     11#include <dt-bindings/pinctrl/dra.h>
     12#include <dt-bindings/clock/dra7.h>
     13
     14#define MAX_SOURCES 400
     15
     16/ {
     17	#address-cells = <2>;
     18	#size-cells = <2>;
     19
     20	compatible = "ti,dra7xx";
     21	interrupt-parent = <&crossbar_mpu>;
     22	chosen { };
     23
     24	aliases {
     25		i2c0 = &i2c1;
     26		i2c1 = &i2c2;
     27		i2c2 = &i2c3;
     28		i2c3 = &i2c4;
     29		i2c4 = &i2c5;
     30		serial0 = &uart1;
     31		serial1 = &uart2;
     32		serial2 = &uart3;
     33		serial3 = &uart4;
     34		serial4 = &uart5;
     35		serial5 = &uart6;
     36		serial6 = &uart7;
     37		serial7 = &uart8;
     38		serial8 = &uart9;
     39		serial9 = &uart10;
     40		ethernet0 = &cpsw_port1;
     41		ethernet1 = &cpsw_port2;
     42		d_can0 = &dcan1;
     43		d_can1 = &dcan2;
     44		spi0 = &qspi;
     45	};
     46
     47	timer {
     48		compatible = "arm,armv7-timer";
     49		status = "disabled";	/* See ARM architected timer wrap erratum i940 */
     50		interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
     51			     <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
     52			     <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
     53			     <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>;
     54		interrupt-parent = <&gic>;
     55	};
     56
     57	gic: interrupt-controller@48211000 {
     58		compatible = "arm,cortex-a15-gic";
     59		interrupt-controller;
     60		#interrupt-cells = <3>;
     61		reg = <0x0 0x48211000 0x0 0x1000>,
     62		      <0x0 0x48212000 0x0 0x2000>,
     63		      <0x0 0x48214000 0x0 0x2000>,
     64		      <0x0 0x48216000 0x0 0x2000>;
     65		interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_HIGH)>;
     66		interrupt-parent = <&gic>;
     67	};
     68
     69	wakeupgen: interrupt-controller@48281000 {
     70		compatible = "ti,omap5-wugen-mpu", "ti,omap4-wugen-mpu";
     71		interrupt-controller;
     72		#interrupt-cells = <3>;
     73		reg = <0x0 0x48281000 0x0 0x1000>;
     74		interrupt-parent = <&gic>;
     75	};
     76
     77	cpus {
     78		#address-cells = <1>;
     79		#size-cells = <0>;
     80
     81		cpu0: cpu@0 {
     82			device_type = "cpu";
     83			compatible = "arm,cortex-a15";
     84			reg = <0>;
     85
     86			operating-points-v2 = <&cpu0_opp_table>;
     87
     88			clocks = <&dpll_mpu_ck>;
     89			clock-names = "cpu";
     90
     91			clock-latency = <300000>; /* From omap-cpufreq driver */
     92
     93			/* cooling options */
     94			#cooling-cells = <2>; /* min followed by max */
     95
     96			vbb-supply = <&abb_mpu>;
     97		};
     98	};
     99
    100	cpu0_opp_table: opp-table {
    101		compatible = "operating-points-v2-ti-cpu";
    102		syscon = <&scm_wkup>;
    103
    104		opp_nom-1000000000 {
    105			opp-hz = /bits/ 64 <1000000000>;
    106			opp-microvolt = <1060000 850000 1150000>,
    107					<1060000 850000 1150000>;
    108			opp-supported-hw = <0xFF 0x01>;
    109			opp-suspend;
    110		};
    111
    112		opp_od-1176000000 {
    113			opp-hz = /bits/ 64 <1176000000>;
    114			opp-microvolt = <1160000 885000 1160000>,
    115					<1160000 885000 1160000>;
    116
    117			opp-supported-hw = <0xFF 0x02>;
    118		};
    119
    120		opp_high@1500000000 {
    121			opp-hz = /bits/ 64 <1500000000>;
    122			opp-microvolt = <1210000 950000 1250000>,
    123					<1210000 950000 1250000>;
    124			opp-supported-hw = <0xFF 0x04>;
    125		};
    126	};
    127
    128	/*
    129	 * XXX: Use a flat representation of the SOC interconnect.
    130	 * The real OMAP interconnect network is quite complex.
    131	 * Since it will not bring real advantage to represent that in DT for
    132	 * the moment, just use a fake OCP bus entry to represent the whole bus
    133	 * hierarchy.
    134	 */
    135	ocp: ocp {
    136		compatible = "simple-pm-bus";
    137		power-domains = <&prm_core>;
    138		clocks = <&l3main1_clkctrl DRA7_L3MAIN1_L3_MAIN_1_CLKCTRL 0>,
    139			 <&l3instr_clkctrl DRA7_L3INSTR_L3_MAIN_2_CLKCTRL 0>;
    140		#address-cells = <1>;
    141		#size-cells = <1>;
    142		ranges = <0x0 0x0 0x0 0xc0000000>;
    143		dma-ranges = <0x80000000 0x0 0x80000000 0x80000000>;
    144
    145		l3-noc@44000000 {
    146			compatible = "ti,dra7-l3-noc";
    147			reg = <0x44000000 0x1000>,
    148			      <0x45000000 0x1000>;
    149			interrupts-extended = <&crossbar_mpu GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>,
    150					      <&wakeupgen GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
    151		};
    152
    153		l4_cfg: interconnect@4a000000 {
    154		};
    155		l4_wkup: interconnect@4ae00000 {
    156		};
    157		l4_per1: interconnect@48000000 {
    158		};
    159
    160		target-module@48210000 {
    161			compatible = "ti,sysc-omap4-simple", "ti,sysc";
    162			power-domains = <&prm_mpu>;
    163			clocks = <&mpu_clkctrl DRA7_MPU_MPU_CLKCTRL 0>;
    164			clock-names = "fck";
    165			#address-cells = <1>;
    166			#size-cells = <1>;
    167			ranges = <0 0x48210000 0x1f0000>;
    168
    169			mpu {
    170				compatible = "ti,omap5-mpu";
    171			};
    172		};
    173
    174		l4_per2: interconnect@48400000 {
    175		};
    176		l4_per3: interconnect@48800000 {
    177		};
    178
    179		/*
    180		 * Register access seems to have complex dependencies and also
    181		 * seems to need an enabled phy. See the TRM chapter for "Table
    182		 * 26-678. Main Sequence PCIe Controller Global Initialization"
    183		 * and also dra7xx_pcie_probe().
    184		 */
    185		axi0: target-module@51000000 {
    186			compatible = "ti,sysc-omap4", "ti,sysc";
    187			power-domains = <&prm_l3init>;
    188			resets = <&prm_l3init 0>;
    189			reset-names = "rstctrl";
    190			clocks = <&pcie_clkctrl DRA7_PCIE_PCIE1_CLKCTRL 0>,
    191				 <&pcie_clkctrl DRA7_PCIE_PCIE1_CLKCTRL 9>,
    192				 <&pcie_clkctrl DRA7_PCIE_PCIE1_CLKCTRL 10>;
    193			clock-names = "fck", "phy-clk", "phy-clk-div";
    194			#size-cells = <1>;
    195			#address-cells = <1>;
    196			ranges = <0x51000000 0x51000000 0x3000>,
    197				 <0x20000000 0x20000000 0x10000000>;
    198			dma-ranges;
    199			/**
    200			 * To enable PCI endpoint mode, disable the pcie1_rc
    201			 * node and enable pcie1_ep mode.
    202			 */
    203			pcie1_rc: pcie@51000000 {
    204				reg = <0x51000000 0x2000>,
    205				      <0x51002000 0x14c>,
    206				      <0x20001000 0x2000>;
    207				reg-names = "rc_dbics", "ti_conf", "config";
    208				interrupts = <0 232 0x4>, <0 233 0x4>;
    209				#address-cells = <3>;
    210				#size-cells = <2>;
    211				device_type = "pci";
    212				ranges = <0x81000000 0 0x00000000 0x20003000 0 0x00010000>,
    213					 <0x82000000 0 0x20013000 0x20013000 0 0x0ffed000>;
    214				bus-range = <0x00 0xff>;
    215				#interrupt-cells = <1>;
    216				num-lanes = <1>;
    217				linux,pci-domain = <0>;
    218				phys = <&pcie1_phy>;
    219				phy-names = "pcie-phy0";
    220				ti,syscon-lane-sel = <&scm_conf_pcie 0x18>;
    221				interrupt-map-mask = <0 0 0 7>;
    222				interrupt-map = <0 0 0 1 &pcie1_intc 1>,
    223						<0 0 0 2 &pcie1_intc 2>,
    224						<0 0 0 3 &pcie1_intc 3>,
    225						<0 0 0 4 &pcie1_intc 4>;
    226				ti,syscon-unaligned-access = <&scm_conf1 0x14 1>;
    227				status = "disabled";
    228				pcie1_intc: interrupt-controller {
    229					interrupt-controller;
    230					#address-cells = <0>;
    231					#interrupt-cells = <1>;
    232				};
    233			};
    234
    235			pcie1_ep: pcie_ep@51000000 {
    236				reg = <0x51000000 0x28>,
    237				      <0x51002000 0x14c>,
    238				      <0x51001000 0x28>,
    239				      <0x20001000 0x10000000>;
    240				reg-names = "ep_dbics", "ti_conf", "ep_dbics2", "addr_space";
    241				interrupts = <0 232 0x4>;
    242				num-lanes = <1>;
    243				num-ib-windows = <4>;
    244				num-ob-windows = <16>;
    245				phys = <&pcie1_phy>;
    246				phy-names = "pcie-phy0";
    247				ti,syscon-unaligned-access = <&scm_conf1 0x14 1>;
    248				ti,syscon-lane-sel = <&scm_conf_pcie 0x18>;
    249				status = "disabled";
    250			};
    251		};
    252
    253		/*
    254		 * Register access seems to have complex dependencies and also
    255		 * seems to need an enabled phy. See the TRM chapter for "Table
    256		 * 26-678. Main Sequence PCIe Controller Global Initialization"
    257		 * and also dra7xx_pcie_probe().
    258		 */
    259		axi1: target-module@51800000 {
    260			compatible = "ti,sysc-omap4", "ti,sysc";
    261			clocks = <&pcie_clkctrl DRA7_PCIE_PCIE2_CLKCTRL 0>,
    262				 <&pcie_clkctrl DRA7_PCIE_PCIE2_CLKCTRL 9>,
    263				 <&pcie_clkctrl DRA7_PCIE_PCIE2_CLKCTRL 10>;
    264			clock-names = "fck", "phy-clk", "phy-clk-div";
    265			power-domains = <&prm_l3init>;
    266			resets = <&prm_l3init 1>;
    267			reset-names = "rstctrl";
    268			#size-cells = <1>;
    269			#address-cells = <1>;
    270			ranges = <0x51800000 0x51800000 0x3000>,
    271				 <0x30000000 0x30000000 0x10000000>;
    272			dma-ranges;
    273			status = "disabled";
    274			pcie2_rc: pcie@51800000 {
    275				reg = <0x51800000 0x2000>,
    276				      <0x51802000 0x14c>,
    277				      <0x30001000 0x2000>;
    278				reg-names = "rc_dbics", "ti_conf", "config";
    279				interrupts = <0 355 0x4>, <0 356 0x4>;
    280				#address-cells = <3>;
    281				#size-cells = <2>;
    282				device_type = "pci";
    283				ranges = <0x81000000 0 0x00000000 0x30003000 0 0x00010000>,
    284					 <0x82000000 0 0x30013000 0x30013000 0 0x0ffed000>;
    285				bus-range = <0x00 0xff>;
    286				#interrupt-cells = <1>;
    287				num-lanes = <1>;
    288				linux,pci-domain = <1>;
    289				phys = <&pcie2_phy>;
    290				phy-names = "pcie-phy0";
    291				interrupt-map-mask = <0 0 0 7>;
    292				interrupt-map = <0 0 0 1 &pcie2_intc 1>,
    293						<0 0 0 2 &pcie2_intc 2>,
    294						<0 0 0 3 &pcie2_intc 3>,
    295						<0 0 0 4 &pcie2_intc 4>;
    296				ti,syscon-unaligned-access = <&scm_conf1 0x14 2>;
    297				pcie2_intc: interrupt-controller {
    298					interrupt-controller;
    299					#address-cells = <0>;
    300					#interrupt-cells = <1>;
    301				};
    302			};
    303		};
    304
    305		ocmcram1: ocmcram@40300000 {
    306			compatible = "mmio-sram";
    307			reg = <0x40300000 0x80000>;
    308			ranges = <0x0 0x40300000 0x80000>;
    309			#address-cells = <1>;
    310			#size-cells = <1>;
    311			/*
    312			 * This is a placeholder for an optional reserved
    313			 * region for use by secure software. The size
    314			 * of this region is not known until runtime so it
    315			 * is set as zero to either be updated to reserve
    316			 * space or left unchanged to leave all SRAM for use.
    317			 * On HS parts that that require the reserved region
    318			 * either the bootloader can update the size to
    319			 * the required amount or the node can be overridden
    320			 * from the board dts file for the secure platform.
    321			 */
    322			sram-hs@0 {
    323				compatible = "ti,secure-ram";
    324				reg = <0x0 0x0>;
    325			};
    326		};
    327
    328		/*
    329		 * NOTE: ocmcram2 and ocmcram3 are not available on all
    330		 * DRA7xx and AM57xx variants. Confirm availability in
    331		 * the data manual for the exact part number in use
    332		 * before enabling these nodes in the board dts file.
    333		 */
    334		ocmcram2: ocmcram@40400000 {
    335			status = "disabled";
    336			compatible = "mmio-sram";
    337			reg = <0x40400000 0x100000>;
    338			ranges = <0x0 0x40400000 0x100000>;
    339			#address-cells = <1>;
    340			#size-cells = <1>;
    341		};
    342
    343		ocmcram3: ocmcram@40500000 {
    344			status = "disabled";
    345			compatible = "mmio-sram";
    346			reg = <0x40500000 0x100000>;
    347			ranges = <0x0 0x40500000 0x100000>;
    348			#address-cells = <1>;
    349			#size-cells = <1>;
    350		};
    351
    352		bandgap: bandgap@4a0021e0 {
    353			reg = <0x4a0021e0 0xc
    354				0x4a00232c 0xc
    355				0x4a002380 0x2c
    356				0x4a0023C0 0x3c
    357				0x4a002564 0x8
    358				0x4a002574 0x50>;
    359				compatible = "ti,dra752-bandgap";
    360				interrupts = <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>;
    361				#thermal-sensor-cells = <1>;
    362		};
    363
    364		dsp1_system: dsp_system@40d00000 {
    365			compatible = "syscon";
    366			reg = <0x40d00000 0x100>;
    367		};
    368
    369		dra7_iodelay_core: padconf@4844a000 {
    370			compatible = "ti,dra7-iodelay";
    371			reg = <0x4844a000 0x0d1c>;
    372			#address-cells = <1>;
    373			#size-cells = <0>;
    374			#pinctrl-cells = <2>;
    375		};
    376
    377		target-module@43300000 {
    378			compatible = "ti,sysc-omap4", "ti,sysc";
    379			reg = <0x43300000 0x4>,
    380			      <0x43300010 0x4>;
    381			reg-names = "rev", "sysc";
    382			ti,sysc-midle = <SYSC_IDLE_FORCE>,
    383					<SYSC_IDLE_NO>,
    384					<SYSC_IDLE_SMART>;
    385			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
    386					<SYSC_IDLE_NO>,
    387					<SYSC_IDLE_SMART>;
    388			clocks = <&l3main1_clkctrl DRA7_L3MAIN1_TPCC_CLKCTRL 0>;
    389			clock-names = "fck";
    390			#address-cells = <1>;
    391			#size-cells = <1>;
    392			ranges = <0x0 0x43300000 0x100000>;
    393
    394			edma: dma@0 {
    395				compatible = "ti,edma3-tpcc";
    396				reg = <0 0x100000>;
    397				reg-names = "edma3_cc";
    398				interrupts = <GIC_SPI 361 IRQ_TYPE_LEVEL_HIGH>,
    399					     <GIC_SPI 360 IRQ_TYPE_LEVEL_HIGH>,
    400					     <GIC_SPI 359 IRQ_TYPE_LEVEL_HIGH>;
    401				interrupt-names = "edma3_ccint", "edma3_mperr",
    402						  "edma3_ccerrint";
    403				dma-requests = <64>;
    404				#dma-cells = <2>;
    405
    406				ti,tptcs = <&edma_tptc0 7>, <&edma_tptc1 0>;
    407
    408				/*
    409				* memcpy is disabled, can be enabled with:
    410				* ti,edma-memcpy-channels = <20 21>;
    411				* for example. Note that these channels need to be
    412				* masked in the xbar as well.
    413				*/
    414			};
    415		};
    416
    417		target-module@43400000 {
    418			compatible = "ti,sysc-omap4", "ti,sysc";
    419			reg = <0x43400000 0x4>,
    420			      <0x43400010 0x4>;
    421			reg-names = "rev", "sysc";
    422			ti,sysc-midle = <SYSC_IDLE_FORCE>,
    423					<SYSC_IDLE_NO>,
    424					<SYSC_IDLE_SMART>;
    425			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
    426					<SYSC_IDLE_NO>,
    427					<SYSC_IDLE_SMART>;
    428			clocks = <&l3main1_clkctrl DRA7_L3MAIN1_TPTC0_CLKCTRL 0>;
    429			clock-names = "fck";
    430			#address-cells = <1>;
    431			#size-cells = <1>;
    432			ranges = <0x0 0x43400000 0x100000>;
    433
    434			edma_tptc0: dma@0 {
    435				compatible = "ti,edma3-tptc";
    436				reg = <0 0x100000>;
    437				interrupts = <GIC_SPI 370 IRQ_TYPE_LEVEL_HIGH>;
    438				interrupt-names = "edma3_tcerrint";
    439			};
    440		};
    441
    442		target-module@43500000 {
    443			compatible = "ti,sysc-omap4", "ti,sysc";
    444			reg = <0x43500000 0x4>,
    445			      <0x43500010 0x4>;
    446			reg-names = "rev", "sysc";
    447			ti,sysc-midle = <SYSC_IDLE_FORCE>,
    448					<SYSC_IDLE_NO>,
    449					<SYSC_IDLE_SMART>;
    450			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
    451					<SYSC_IDLE_NO>,
    452					<SYSC_IDLE_SMART>;
    453			clocks = <&l3main1_clkctrl DRA7_L3MAIN1_TPTC1_CLKCTRL 0>;
    454			clock-names = "fck";
    455			#address-cells = <1>;
    456			#size-cells = <1>;
    457			ranges = <0x0 0x43500000 0x100000>;
    458
    459			edma_tptc1: dma@0 {
    460				compatible = "ti,edma3-tptc";
    461				reg = <0 0x100000>;
    462				interrupts = <GIC_SPI 371 IRQ_TYPE_LEVEL_HIGH>;
    463				interrupt-names = "edma3_tcerrint";
    464			};
    465		};
    466
    467		target-module@4e000000 {
    468			compatible = "ti,sysc-omap2", "ti,sysc";
    469			reg = <0x4e000000 0x4>,
    470			      <0x4e000010 0x4>;
    471			reg-names = "rev", "sysc";
    472			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
    473					<SYSC_IDLE_NO>,
    474					<SYSC_IDLE_SMART>;
    475			ranges = <0x0 0x4e000000 0x2000000>;
    476			#size-cells = <1>;
    477			#address-cells = <1>;
    478
    479			dmm@0 {
    480				compatible = "ti,omap5-dmm";
    481				reg = <0 0x800>;
    482				interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>;
    483			};
    484		};
    485
    486		ipu1: ipu@58820000 {
    487			compatible = "ti,dra7-ipu";
    488			reg = <0x58820000 0x10000>;
    489			reg-names = "l2ram";
    490			iommus = <&mmu_ipu1>;
    491			status = "disabled";
    492			resets = <&prm_ipu 0>, <&prm_ipu 1>;
    493			clocks = <&ipu1_clkctrl DRA7_IPU1_MMU_IPU1_CLKCTRL 0>;
    494			firmware-name = "dra7-ipu1-fw.xem4";
    495		};
    496
    497		ipu2: ipu@55020000 {
    498			compatible = "ti,dra7-ipu";
    499			reg = <0x55020000 0x10000>;
    500			reg-names = "l2ram";
    501			iommus = <&mmu_ipu2>;
    502			status = "disabled";
    503			resets = <&prm_core 0>, <&prm_core 1>;
    504			clocks = <&ipu2_clkctrl DRA7_IPU2_MMU_IPU2_CLKCTRL 0>;
    505			firmware-name = "dra7-ipu2-fw.xem4";
    506		};
    507
    508		dsp1: dsp@40800000 {
    509			compatible = "ti,dra7-dsp";
    510			reg = <0x40800000 0x48000>,
    511			      <0x40e00000 0x8000>,
    512			      <0x40f00000 0x8000>;
    513			reg-names = "l2ram", "l1pram", "l1dram";
    514			ti,bootreg = <&scm_conf 0x55c 10>;
    515			iommus = <&mmu0_dsp1>, <&mmu1_dsp1>;
    516			status = "disabled";
    517			resets = <&prm_dsp1 0>;
    518			clocks = <&dsp1_clkctrl DRA7_DSP1_MMU0_DSP1_CLKCTRL 0>;
    519			firmware-name = "dra7-dsp1-fw.xe66";
    520		};
    521
    522		target-module@40d01000 {
    523			compatible = "ti,sysc-omap2", "ti,sysc";
    524			reg = <0x40d01000 0x4>,
    525			      <0x40d01010 0x4>,
    526			      <0x40d01014 0x4>;
    527			reg-names = "rev", "sysc", "syss";
    528			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
    529					<SYSC_IDLE_NO>,
    530					<SYSC_IDLE_SMART>;
    531			ti,sysc-mask = <(SYSC_OMAP2_CLOCKACTIVITY |
    532					 SYSC_OMAP2_SOFTRESET |
    533					 SYSC_OMAP2_AUTOIDLE)>;
    534			clocks = <&dsp1_clkctrl DRA7_DSP1_MMU0_DSP1_CLKCTRL 0>;
    535			clock-names = "fck";
    536			resets = <&prm_dsp1 1>;
    537			reset-names = "rstctrl";
    538			ranges = <0x0 0x40d01000 0x1000>;
    539			#size-cells = <1>;
    540			#address-cells = <1>;
    541
    542			mmu0_dsp1: mmu@0 {
    543				compatible = "ti,dra7-dsp-iommu";
    544				reg = <0x0 0x100>;
    545				interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
    546				#iommu-cells = <0>;
    547				ti,syscon-mmuconfig = <&dsp1_system 0x0>;
    548			};
    549		};
    550
    551		target-module@40d02000 {
    552			compatible = "ti,sysc-omap2", "ti,sysc";
    553			reg = <0x40d02000 0x4>,
    554			      <0x40d02010 0x4>,
    555			      <0x40d02014 0x4>;
    556			reg-names = "rev", "sysc", "syss";
    557			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
    558					<SYSC_IDLE_NO>,
    559					<SYSC_IDLE_SMART>;
    560			ti,sysc-mask = <(SYSC_OMAP2_CLOCKACTIVITY |
    561					 SYSC_OMAP2_SOFTRESET |
    562					 SYSC_OMAP2_AUTOIDLE)>;
    563			clocks = <&dsp1_clkctrl DRA7_DSP1_MMU0_DSP1_CLKCTRL 0>;
    564			clock-names = "fck";
    565			resets = <&prm_dsp1 1>;
    566			reset-names = "rstctrl";
    567			ranges = <0x0 0x40d02000 0x1000>;
    568			#size-cells = <1>;
    569			#address-cells = <1>;
    570
    571			mmu1_dsp1: mmu@0 {
    572				compatible = "ti,dra7-dsp-iommu";
    573				reg = <0x0 0x100>;
    574				interrupts = <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>;
    575				#iommu-cells = <0>;
    576				ti,syscon-mmuconfig = <&dsp1_system 0x1>;
    577			};
    578		};
    579
    580		target-module@58882000 {
    581			compatible = "ti,sysc-omap2", "ti,sysc";
    582			reg = <0x58882000 0x4>,
    583			      <0x58882010 0x4>,
    584			      <0x58882014 0x4>;
    585			reg-names = "rev", "sysc", "syss";
    586			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
    587					<SYSC_IDLE_NO>,
    588					<SYSC_IDLE_SMART>;
    589			ti,sysc-mask = <(SYSC_OMAP2_CLOCKACTIVITY |
    590					 SYSC_OMAP2_SOFTRESET |
    591					 SYSC_OMAP2_AUTOIDLE)>;
    592			clocks = <&ipu1_clkctrl DRA7_IPU1_MMU_IPU1_CLKCTRL 0>;
    593			clock-names = "fck";
    594			resets = <&prm_ipu 2>;
    595			reset-names = "rstctrl";
    596			#address-cells = <1>;
    597			#size-cells = <1>;
    598			ranges = <0x0 0x58882000 0x100>;
    599
    600			mmu_ipu1: mmu@0 {
    601				compatible = "ti,dra7-iommu";
    602				reg = <0x0 0x100>;
    603				interrupts = <GIC_SPI 395 IRQ_TYPE_LEVEL_HIGH>;
    604				#iommu-cells = <0>;
    605				ti,iommu-bus-err-back;
    606			};
    607		};
    608
    609		target-module@55082000 {
    610			compatible = "ti,sysc-omap2", "ti,sysc";
    611			reg = <0x55082000 0x4>,
    612			      <0x55082010 0x4>,
    613			      <0x55082014 0x4>;
    614			reg-names = "rev", "sysc", "syss";
    615			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
    616					<SYSC_IDLE_NO>,
    617					<SYSC_IDLE_SMART>;
    618			ti,sysc-mask = <(SYSC_OMAP2_CLOCKACTIVITY |
    619					 SYSC_OMAP2_SOFTRESET |
    620					 SYSC_OMAP2_AUTOIDLE)>;
    621			clocks = <&ipu2_clkctrl DRA7_IPU2_MMU_IPU2_CLKCTRL 0>;
    622			clock-names = "fck";
    623			resets = <&prm_core 2>;
    624			reset-names = "rstctrl";
    625			#address-cells = <1>;
    626			#size-cells = <1>;
    627			ranges = <0x0 0x55082000 0x100>;
    628
    629			mmu_ipu2: mmu@0 {
    630				compatible = "ti,dra7-iommu";
    631				reg = <0x0 0x100>;
    632				interrupts = <GIC_SPI 396 IRQ_TYPE_LEVEL_HIGH>;
    633				#iommu-cells = <0>;
    634				ti,iommu-bus-err-back;
    635			};
    636		};
    637
    638		abb_mpu: regulator-abb-mpu {
    639			compatible = "ti,abb-v3";
    640			regulator-name = "abb_mpu";
    641			#address-cells = <0>;
    642			#size-cells = <0>;
    643			clocks = <&sys_clkin1>;
    644			ti,settling-time = <50>;
    645			ti,clock-cycles = <16>;
    646
    647			reg = <0x4ae07ddc 0x4>, <0x4ae07de0 0x4>,
    648			      <0x4ae06014 0x4>, <0x4a003b20 0xc>,
    649			      <0x4ae0c158 0x4>;
    650			reg-names = "setup-address", "control-address",
    651				    "int-address", "efuse-address",
    652				    "ldo-address";
    653			ti,tranxdone-status-mask = <0x80>;
    654			/* LDOVBBMPU_FBB_MUX_CTRL */
    655			ti,ldovbb-override-mask = <0x400>;
    656			/* LDOVBBMPU_FBB_VSET_OUT */
    657			ti,ldovbb-vset-mask = <0x1F>;
    658
    659			/*
    660			 * NOTE: only FBB mode used but actual vset will
    661			 * determine final biasing
    662			 */
    663			ti,abb_info = <
    664			/*uV		ABB	efuse	rbb_m fbb_m	vset_m*/
    665			1060000		0	0x0	0 0x02000000 0x01F00000
    666			1160000		0	0x4	0 0x02000000 0x01F00000
    667			1210000		0	0x8	0 0x02000000 0x01F00000
    668			>;
    669		};
    670
    671		abb_ivahd: regulator-abb-ivahd {
    672			compatible = "ti,abb-v3";
    673			regulator-name = "abb_ivahd";
    674			#address-cells = <0>;
    675			#size-cells = <0>;
    676			clocks = <&sys_clkin1>;
    677			ti,settling-time = <50>;
    678			ti,clock-cycles = <16>;
    679
    680			reg = <0x4ae07e34 0x4>, <0x4ae07e24 0x4>,
    681			      <0x4ae06010 0x4>, <0x4a0025cc 0xc>,
    682			      <0x4a002470 0x4>;
    683			reg-names = "setup-address", "control-address",
    684				    "int-address", "efuse-address",
    685				    "ldo-address";
    686			ti,tranxdone-status-mask = <0x40000000>;
    687			/* LDOVBBIVA_FBB_MUX_CTRL */
    688			ti,ldovbb-override-mask = <0x400>;
    689			/* LDOVBBIVA_FBB_VSET_OUT */
    690			ti,ldovbb-vset-mask = <0x1F>;
    691
    692			/*
    693			 * NOTE: only FBB mode used but actual vset will
    694			 * determine final biasing
    695			 */
    696			ti,abb_info = <
    697			/*uV		ABB	efuse	rbb_m fbb_m	vset_m*/
    698			1055000		0	0x0	0 0x02000000 0x01F00000
    699			1150000		0	0x4	0 0x02000000 0x01F00000
    700			1250000		0	0x8	0 0x02000000 0x01F00000
    701			>;
    702		};
    703
    704		abb_dspeve: regulator-abb-dspeve {
    705			compatible = "ti,abb-v3";
    706			regulator-name = "abb_dspeve";
    707			#address-cells = <0>;
    708			#size-cells = <0>;
    709			clocks = <&sys_clkin1>;
    710			ti,settling-time = <50>;
    711			ti,clock-cycles = <16>;
    712
    713			reg = <0x4ae07e30 0x4>, <0x4ae07e20 0x4>,
    714			      <0x4ae06010 0x4>, <0x4a0025e0 0xc>,
    715			      <0x4a00246c 0x4>;
    716			reg-names = "setup-address", "control-address",
    717				    "int-address", "efuse-address",
    718				    "ldo-address";
    719			ti,tranxdone-status-mask = <0x20000000>;
    720			/* LDOVBBDSPEVE_FBB_MUX_CTRL */
    721			ti,ldovbb-override-mask = <0x400>;
    722			/* LDOVBBDSPEVE_FBB_VSET_OUT */
    723			ti,ldovbb-vset-mask = <0x1F>;
    724
    725			/*
    726			 * NOTE: only FBB mode used but actual vset will
    727			 * determine final biasing
    728			 */
    729			ti,abb_info = <
    730			/*uV		ABB	efuse	rbb_m fbb_m	vset_m*/
    731			1055000		0	0x0	0 0x02000000 0x01F00000
    732			1150000		0	0x4	0 0x02000000 0x01F00000
    733			1250000		0	0x8	0 0x02000000 0x01F00000
    734			>;
    735		};
    736
    737		abb_gpu: regulator-abb-gpu {
    738			compatible = "ti,abb-v3";
    739			regulator-name = "abb_gpu";
    740			#address-cells = <0>;
    741			#size-cells = <0>;
    742			clocks = <&sys_clkin1>;
    743			ti,settling-time = <50>;
    744			ti,clock-cycles = <16>;
    745
    746			reg = <0x4ae07de4 0x4>, <0x4ae07de8 0x4>,
    747			      <0x4ae06010 0x4>, <0x4a003b08 0xc>,
    748			      <0x4ae0c154 0x4>;
    749			reg-names = "setup-address", "control-address",
    750				    "int-address", "efuse-address",
    751				    "ldo-address";
    752			ti,tranxdone-status-mask = <0x10000000>;
    753			/* LDOVBBGPU_FBB_MUX_CTRL */
    754			ti,ldovbb-override-mask = <0x400>;
    755			/* LDOVBBGPU_FBB_VSET_OUT */
    756			ti,ldovbb-vset-mask = <0x1F>;
    757
    758			/*
    759			 * NOTE: only FBB mode used but actual vset will
    760			 * determine final biasing
    761			 */
    762			ti,abb_info = <
    763			/*uV		ABB	efuse	rbb_m fbb_m	vset_m*/
    764			1090000		0	0x0	0 0x02000000 0x01F00000
    765			1210000		0	0x4	0 0x02000000 0x01F00000
    766			1280000		0	0x8	0 0x02000000 0x01F00000
    767			>;
    768		};
    769
    770		target-module@4b300000 {
    771			compatible = "ti,sysc-omap4", "ti,sysc";
    772			reg = <0x4b300000 0x4>,
    773			      <0x4b300010 0x4>;
    774			reg-names = "rev", "sysc";
    775			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
    776					<SYSC_IDLE_NO>,
    777					<SYSC_IDLE_SMART>,
    778					<SYSC_IDLE_SMART_WKUP>;
    779			clocks = <&l4per2_clkctrl DRA7_L4PER2_QSPI_CLKCTRL 0>;
    780			clock-names = "fck";
    781			#address-cells = <1>;
    782			#size-cells = <1>;
    783			ranges = <0x0 0x4b300000 0x1000>,
    784				 <0x5c000000 0x5c000000 0x4000000>;
    785
    786			qspi: spi@0 {
    787				compatible = "ti,dra7xxx-qspi";
    788				reg = <0 0x100>,
    789				      <0x5c000000 0x4000000>;
    790				reg-names = "qspi_base", "qspi_mmap";
    791				syscon-chipselects = <&scm_conf 0x558>;
    792				#address-cells = <1>;
    793				#size-cells = <0>;
    794				clocks = <&l4per2_clkctrl DRA7_L4PER2_QSPI_CLKCTRL 25>;
    795				clock-names = "fck";
    796				num-cs = <4>;
    797				interrupts = <GIC_SPI 343 IRQ_TYPE_LEVEL_HIGH>;
    798				status = "disabled";
    799			};
    800		};
    801
    802		/* OCP2SCP1 */
    803		/* IRQ for DWC3_3 and DWC3_4 need IRQ crossbar */
    804
    805		target-module@50000000 {
    806			compatible = "ti,sysc-omap2", "ti,sysc";
    807			reg = <0x50000000 4>,
    808			      <0x50000010 4>,
    809			      <0x50000014 4>;
    810			reg-names = "rev", "sysc", "syss";
    811			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
    812					<SYSC_IDLE_NO>,
    813					<SYSC_IDLE_SMART>;
    814			ti,syss-mask = <1>;
    815			clocks = <&l3main1_clkctrl DRA7_L3MAIN1_GPMC_CLKCTRL 0>;
    816			clock-names = "fck";
    817			#address-cells = <1>;
    818			#size-cells = <1>;
    819			ranges = <0x50000000 0x50000000 0x00001000>, /* regs */
    820				 <0x00000000 0x00000000 0x40000000>; /* data */
    821
    822			gpmc: gpmc@50000000 {
    823				compatible = "ti,am3352-gpmc";
    824				reg = <0x50000000 0x37c>;      /* device IO registers */
    825				interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
    826				dmas = <&edma_xbar 4 0>;
    827				dma-names = "rxtx";
    828				gpmc,num-cs = <8>;
    829				gpmc,num-waitpins = <2>;
    830				#address-cells = <2>;
    831				#size-cells = <1>;
    832				interrupt-controller;
    833				#interrupt-cells = <2>;
    834				gpio-controller;
    835				#gpio-cells = <2>;
    836				status = "disabled";
    837			};
    838		};
    839
    840		target-module@56000000 {
    841			compatible = "ti,sysc-omap4", "ti,sysc";
    842			reg = <0x5600fe00 0x4>,
    843			      <0x5600fe10 0x4>;
    844			reg-names = "rev", "sysc";
    845			ti,sysc-midle = <SYSC_IDLE_FORCE>,
    846					<SYSC_IDLE_NO>,
    847					<SYSC_IDLE_SMART>;
    848			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
    849					<SYSC_IDLE_NO>,
    850					<SYSC_IDLE_SMART>;
    851			clocks = <&gpu_clkctrl DRA7_GPU_CLKCTRL 0>;
    852			clock-names = "fck";
    853			#address-cells = <1>;
    854			#size-cells = <1>;
    855			ranges = <0 0x56000000 0x2000000>;
    856		};
    857
    858		crossbar_mpu: crossbar@4a002a48 {
    859			compatible = "ti,irq-crossbar";
    860			reg = <0x4a002a48 0x130>;
    861			interrupt-controller;
    862			interrupt-parent = <&wakeupgen>;
    863			#interrupt-cells = <3>;
    864			ti,max-irqs = <160>;
    865			ti,max-crossbar-sources = <MAX_SOURCES>;
    866			ti,reg-size = <2>;
    867			ti,irqs-reserved = <0 1 2 3 5 6 131 132>;
    868			ti,irqs-skip = <10 133 139 140>;
    869			ti,irqs-safe-map = <0>;
    870		};
    871
    872		target-module@58000000 {
    873			compatible = "ti,sysc-omap2", "ti,sysc";
    874			reg = <0x58000000 4>,
    875			      <0x58000014 4>;
    876			reg-names = "rev", "syss";
    877			ti,syss-mask = <1>;
    878			clocks = <&dss_clkctrl DRA7_DSS_DSS_CORE_CLKCTRL 0>,
    879				 <&dss_clkctrl DRA7_DSS_DSS_CORE_CLKCTRL 9>,
    880				 <&dss_clkctrl DRA7_DSS_DSS_CORE_CLKCTRL 10>,
    881				 <&dss_clkctrl DRA7_DSS_DSS_CORE_CLKCTRL 11>;
    882			clock-names = "fck", "hdmi_clk", "sys_clk", "tv_clk";
    883			#address-cells = <1>;
    884			#size-cells = <1>;
    885			ranges = <0 0x58000000 0x800000>;
    886
    887			dss: dss@0 {
    888				compatible = "ti,dra7-dss";
    889				/* 'reg' defined in dra72x.dtsi and dra74x.dtsi */
    890				/* 'clocks' defined in dra72x.dtsi and dra74x.dtsi */
    891				status = "disabled";
    892				/* CTRL_CORE_DSS_PLL_CONTROL */
    893				syscon-pll-ctrl = <&scm_conf 0x538>;
    894				#address-cells = <1>;
    895				#size-cells = <1>;
    896				ranges = <0 0 0x800000>;
    897
    898				target-module@1000 {
    899					compatible = "ti,sysc-omap2", "ti,sysc";
    900					reg = <0x1000 0x4>,
    901					      <0x1010 0x4>,
    902					      <0x1014 0x4>;
    903					reg-names = "rev", "sysc", "syss";
    904					ti,sysc-sidle = <SYSC_IDLE_FORCE>,
    905							<SYSC_IDLE_NO>,
    906							<SYSC_IDLE_SMART>;
    907					ti,sysc-midle = <SYSC_IDLE_FORCE>,
    908							<SYSC_IDLE_NO>,
    909							<SYSC_IDLE_SMART>;
    910					ti,sysc-mask = <(SYSC_OMAP2_CLOCKACTIVITY |
    911							 SYSC_OMAP2_ENAWAKEUP |
    912							 SYSC_OMAP2_SOFTRESET |
    913							 SYSC_OMAP2_AUTOIDLE)>;
    914					ti,syss-mask = <1>;
    915					clocks = <&dss_clkctrl DRA7_DSS_DSS_CORE_CLKCTRL 8>;
    916					clock-names = "fck";
    917					#address-cells = <1>;
    918					#size-cells = <1>;
    919					ranges = <0 0x1000 0x1000>;
    920
    921					dispc@0 {
    922						compatible = "ti,dra7-dispc";
    923						reg = <0 0x1000>;
    924						interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
    925						clocks = <&dss_clkctrl DRA7_DSS_DSS_CORE_CLKCTRL 8>;
    926						clock-names = "fck";
    927						/* CTRL_CORE_SMA_SW_1 */
    928						syscon-pol = <&scm_conf 0x534>;
    929					};
    930				};
    931
    932				target-module@40000 {
    933					compatible = "ti,sysc-omap4", "ti,sysc";
    934					reg = <0x40000 0x4>,
    935					      <0x40010 0x4>;
    936					reg-names = "rev", "sysc";
    937					ti,sysc-sidle = <SYSC_IDLE_FORCE>,
    938							<SYSC_IDLE_NO>,
    939							<SYSC_IDLE_SMART>,
    940							<SYSC_IDLE_SMART_WKUP>;
    941					ti,sysc-mask = <(SYSC_OMAP4_SOFTRESET)>;
    942					clocks = <&dss_clkctrl DRA7_DSS_DSS_CORE_CLKCTRL 9>,
    943						 <&dss_clkctrl DRA7_DSS_DSS_CORE_CLKCTRL 8>;
    944					clock-names = "fck", "dss_clk";
    945					#address-cells = <1>;
    946					#size-cells = <1>;
    947					ranges = <0 0x40000 0x40000>;
    948
    949					hdmi: encoder@0 {
    950						compatible = "ti,dra7-hdmi";
    951						reg = <0 0x200>,
    952						      <0x200 0x80>,
    953						      <0x300 0x80>,
    954						      <0x20000 0x19000>;
    955						reg-names = "wp", "pll", "phy", "core";
    956						interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
    957						status = "disabled";
    958						clocks = <&dss_clkctrl DRA7_DSS_DSS_CORE_CLKCTRL 9>,
    959							 <&dss_clkctrl DRA7_DSS_DSS_CORE_CLKCTRL 10>;
    960						clock-names = "fck", "sys_clk";
    961						dmas = <&sdma_xbar 76>;
    962						dma-names = "audio_tx";
    963					};
    964				};
    965			};
    966		};
    967
    968		target-module@59000000 {
    969			compatible = "ti,sysc-omap4", "ti,sysc";
    970			reg = <0x59000020 0x4>;
    971			reg-names = "rev";
    972			clocks = <&dss_clkctrl DRA7_DSS_BB2D_CLKCTRL 0>;
    973			clock-names = "fck";
    974			#address-cells = <1>;
    975			#size-cells = <1>;
    976			ranges = <0x0 0x59000000 0x1000>;
    977
    978			bb2d: gpu@0 {
    979				compatible = "vivante,gc";
    980				reg = <0x0 0x700>;
    981				interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>;
    982				clocks = <&dss_clkctrl DRA7_DSS_BB2D_CLKCTRL 0>;
    983				clock-names = "core";
    984			};
    985		};
    986
    987		aes1_target: target-module@4b500000 {
    988			compatible = "ti,sysc-omap2", "ti,sysc";
    989			reg = <0x4b500080 0x4>,
    990			      <0x4b500084 0x4>,
    991			      <0x4b500088 0x4>;
    992			reg-names = "rev", "sysc", "syss";
    993			ti,sysc-mask = <(SYSC_OMAP2_SOFTRESET |
    994					 SYSC_OMAP2_AUTOIDLE)>;
    995			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
    996					<SYSC_IDLE_NO>,
    997					<SYSC_IDLE_SMART>,
    998					<SYSC_IDLE_SMART_WKUP>;
    999			ti,syss-mask = <1>;
   1000			/* Domains (P, C): per_pwrdm, l4sec_clkdm */
   1001			clocks = <&l4sec_clkctrl DRA7_L4SEC_AES1_CLKCTRL 0>;
   1002			clock-names = "fck";
   1003			#address-cells = <1>;
   1004			#size-cells = <1>;
   1005			ranges = <0x0 0x4b500000 0x1000>;
   1006
   1007			aes1: aes@0 {
   1008				compatible = "ti,omap4-aes";
   1009				reg = <0 0xa0>;
   1010				interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>;
   1011				dmas = <&edma_xbar 111 0>, <&edma_xbar 110 0>;
   1012				dma-names = "tx", "rx";
   1013				clocks = <&l3_iclk_div>;
   1014				clock-names = "fck";
   1015			};
   1016		};
   1017
   1018		aes2_target: target-module@4b700000 {
   1019			compatible = "ti,sysc-omap2", "ti,sysc";
   1020			reg = <0x4b700080 0x4>,
   1021			      <0x4b700084 0x4>,
   1022			      <0x4b700088 0x4>;
   1023			reg-names = "rev", "sysc", "syss";
   1024			ti,sysc-mask = <(SYSC_OMAP2_SOFTRESET |
   1025					 SYSC_OMAP2_AUTOIDLE)>;
   1026			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
   1027					<SYSC_IDLE_NO>,
   1028					<SYSC_IDLE_SMART>,
   1029					<SYSC_IDLE_SMART_WKUP>;
   1030			ti,syss-mask = <1>;
   1031			/* Domains (P, C): per_pwrdm, l4sec_clkdm */
   1032			clocks = <&l4sec_clkctrl DRA7_L4SEC_AES2_CLKCTRL 0>;
   1033			clock-names = "fck";
   1034			#address-cells = <1>;
   1035			#size-cells = <1>;
   1036			ranges = <0x0 0x4b700000 0x1000>;
   1037
   1038			aes2: aes@0 {
   1039				compatible = "ti,omap4-aes";
   1040				reg = <0 0xa0>;
   1041				interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>;
   1042				dmas = <&edma_xbar 114 0>, <&edma_xbar 113 0>;
   1043				dma-names = "tx", "rx";
   1044				clocks = <&l3_iclk_div>;
   1045				clock-names = "fck";
   1046			};
   1047		};
   1048
   1049		sham1_target: target-module@4b101000 {
   1050			compatible = "ti,sysc-omap3-sham", "ti,sysc";
   1051			reg = <0x4b101100 0x4>,
   1052			      <0x4b101110 0x4>,
   1053			      <0x4b101114 0x4>;
   1054			reg-names = "rev", "sysc", "syss";
   1055			ti,sysc-mask = <(SYSC_OMAP2_SOFTRESET |
   1056					 SYSC_OMAP2_AUTOIDLE)>;
   1057			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
   1058					<SYSC_IDLE_NO>,
   1059					<SYSC_IDLE_SMART>;
   1060			ti,syss-mask = <1>;
   1061			/* Domains (P, C): l4per_pwrdm, l4sec_clkdm */
   1062			clocks = <&l4sec_clkctrl DRA7_L4SEC_SHAM_CLKCTRL 0>;
   1063			clock-names = "fck";
   1064			#address-cells = <1>;
   1065			#size-cells = <1>;
   1066			ranges = <0x0 0x4b101000 0x1000>;
   1067
   1068			sham1: sham@0 {
   1069				compatible = "ti,omap5-sham";
   1070				reg = <0 0x300>;
   1071				interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
   1072				dmas = <&edma_xbar 119 0>;
   1073				dma-names = "rx";
   1074				clocks = <&l3_iclk_div>;
   1075				clock-names = "fck";
   1076			};
   1077		};
   1078
   1079		sham2_target: target-module@42701000 {
   1080			compatible = "ti,sysc-omap3-sham", "ti,sysc";
   1081			reg = <0x42701100 0x4>,
   1082			      <0x42701110 0x4>,
   1083			      <0x42701114 0x4>;
   1084			reg-names = "rev", "sysc", "syss";
   1085			ti,sysc-mask = <(SYSC_OMAP2_SOFTRESET |
   1086					 SYSC_OMAP2_AUTOIDLE)>;
   1087			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
   1088					<SYSC_IDLE_NO>,
   1089					<SYSC_IDLE_SMART>;
   1090			ti,syss-mask = <1>;
   1091			/* Domains (P, C): l4per_pwrdm, l4sec_clkdm */
   1092			clocks = <&l4sec_clkctrl DRA7_L4SEC_SHAM2_CLKCTRL 0>;
   1093			clock-names = "fck";
   1094			#address-cells = <1>;
   1095			#size-cells = <1>;
   1096			ranges = <0x0 0x42701000 0x1000>;
   1097
   1098			sham2: sham@0 {
   1099				compatible = "ti,omap5-sham";
   1100				reg = <0 0x300>;
   1101				interrupts = <GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>;
   1102				dmas = <&edma_xbar 165 0>;
   1103				dma-names = "rx";
   1104				clocks = <&l3_iclk_div>;
   1105				clock-names = "fck";
   1106			};
   1107		};
   1108
   1109		iva_hd_target: target-module@5a000000 {
   1110			compatible = "ti,sysc-omap4", "ti,sysc";
   1111			reg = <0x5a05a400 0x4>,
   1112			      <0x5a05a410 0x4>;
   1113			reg-names = "rev", "sysc";
   1114			ti,sysc-midle = <SYSC_IDLE_FORCE>,
   1115					<SYSC_IDLE_NO>,
   1116					<SYSC_IDLE_SMART>;
   1117			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
   1118					<SYSC_IDLE_NO>,
   1119					<SYSC_IDLE_SMART>;
   1120			power-domains = <&prm_iva>;
   1121			resets = <&prm_iva 2>;
   1122			reset-names = "rstctrl";
   1123			clocks = <&iva_clkctrl DRA7_IVA_CLKCTRL 0>;
   1124			clock-names = "fck";
   1125			#address-cells = <1>;
   1126			#size-cells = <1>;
   1127			ranges = <0x5a000000 0x5a000000 0x1000000>,
   1128				 <0x5b000000 0x5b000000 0x1000000>;
   1129
   1130			iva {
   1131				compatible = "ti,ivahd";
   1132			};
   1133		};
   1134
   1135		opp_supply_mpu: opp-supply@4a003b20 {
   1136			compatible = "ti,omap5-opp-supply";
   1137			reg = <0x4a003b20 0xc>;
   1138			ti,efuse-settings = <
   1139			/* uV   offset */
   1140			1060000 0x0
   1141			1160000 0x4
   1142			1210000 0x8
   1143			>;
   1144			ti,absolute-max-voltage-uv = <1500000>;
   1145		};
   1146
   1147	};
   1148
   1149	thermal_zones: thermal-zones {
   1150		#include "omap4-cpu-thermal.dtsi"
   1151		#include "omap5-gpu-thermal.dtsi"
   1152		#include "omap5-core-thermal.dtsi"
   1153		#include "dra7-dspeve-thermal.dtsi"
   1154		#include "dra7-iva-thermal.dtsi"
   1155	};
   1156
   1157};
   1158
   1159&cpu_thermal {
   1160	polling-delay = <500>; /* milliseconds */
   1161	coefficients = <0 2000>;
   1162};
   1163
   1164&gpu_thermal {
   1165	coefficients = <0 2000>;
   1166};
   1167
   1168&core_thermal {
   1169	coefficients = <0 2000>;
   1170};
   1171
   1172&dspeve_thermal {
   1173	coefficients = <0 2000>;
   1174};
   1175
   1176&iva_thermal {
   1177	coefficients = <0 2000>;
   1178};
   1179
   1180&cpu_crit {
   1181	temperature = <120000>; /* milli Celsius */
   1182};
   1183
   1184&core_crit {
   1185	temperature = <120000>; /* milli Celsius */
   1186};
   1187
   1188&gpu_crit {
   1189	temperature = <120000>; /* milli Celsius */
   1190};
   1191
   1192&dspeve_crit {
   1193	temperature = <120000>; /* milli Celsius */
   1194};
   1195
   1196&iva_crit {
   1197	temperature = <120000>; /* milli Celsius */
   1198};
   1199
   1200#include "dra7-l4.dtsi"
   1201#include "dra7xx-clocks.dtsi"
   1202
   1203&prm {
   1204	prm_mpu: prm@300 {
   1205		compatible = "ti,dra7-prm-inst", "ti,omap-prm-inst";
   1206		reg = <0x300 0x100>;
   1207		#power-domain-cells = <0>;
   1208	};
   1209
   1210	prm_dsp1: prm@400 {
   1211		compatible = "ti,dra7-prm-inst", "ti,omap-prm-inst";
   1212		reg = <0x400 0x100>;
   1213		#reset-cells = <1>;
   1214		#power-domain-cells = <0>;
   1215	};
   1216
   1217	prm_ipu: prm@500 {
   1218		compatible = "ti,dra7-prm-inst", "ti,omap-prm-inst";
   1219		reg = <0x500 0x100>;
   1220		#reset-cells = <1>;
   1221		#power-domain-cells = <0>;
   1222	};
   1223
   1224	prm_coreaon: prm@628 {
   1225		compatible = "ti,dra7-prm-inst", "ti,omap-prm-inst";
   1226		reg = <0x628 0xd8>;
   1227		#power-domain-cells = <0>;
   1228	};
   1229
   1230	prm_core: prm@700 {
   1231		compatible = "ti,dra7-prm-inst", "ti,omap-prm-inst";
   1232		reg = <0x700 0x100>;
   1233		#reset-cells = <1>;
   1234		#power-domain-cells = <0>;
   1235	};
   1236
   1237	prm_iva: prm@f00 {
   1238		compatible = "ti,dra7-prm-inst", "ti,omap-prm-inst";
   1239		reg = <0xf00 0x100>;
   1240		#reset-cells = <1>;
   1241		#power-domain-cells = <0>;
   1242	};
   1243
   1244	prm_cam: prm@1000 {
   1245		compatible = "ti,dra7-prm-inst", "ti,omap-prm-inst";
   1246		reg = <0x1000 0x100>;
   1247		#power-domain-cells = <0>;
   1248	};
   1249
   1250	prm_dss: prm@1100 {
   1251		compatible = "ti,dra7-prm-inst", "ti,omap-prm-inst";
   1252		reg = <0x1100 0x100>;
   1253		#power-domain-cells = <0>;
   1254	};
   1255
   1256	prm_gpu: prm@1200 {
   1257		compatible = "ti,dra7-prm-inst", "ti,omap-prm-inst";
   1258		reg = <0x1200 0x100>;
   1259		#power-domain-cells = <0>;
   1260	};
   1261
   1262	prm_l3init: prm@1300 {
   1263		compatible = "ti,dra7-prm-inst", "ti,omap-prm-inst";
   1264		reg = <0x1300 0x100>;
   1265		#reset-cells = <1>;
   1266		#power-domain-cells = <0>;
   1267	};
   1268
   1269	prm_l4per: prm@1400 {
   1270		compatible = "ti,dra7-prm-inst", "ti,omap-prm-inst";
   1271		reg = <0x1400 0x100>;
   1272		#power-domain-cells = <0>;
   1273	};
   1274
   1275	prm_custefuse: prm@1600 {
   1276		compatible = "ti,dra7-prm-inst", "ti,omap-prm-inst";
   1277		reg = <0x1600 0x100>;
   1278		#power-domain-cells = <0>;
   1279	};
   1280
   1281	prm_wkupaon: prm@1724 {
   1282		compatible = "ti,dra7-prm-inst", "ti,omap-prm-inst";
   1283		reg = <0x1724 0x100>;
   1284		#power-domain-cells = <0>;
   1285	};
   1286
   1287	prm_dsp2: prm@1b00 {
   1288		compatible = "ti,dra7-prm-inst", "ti,omap-prm-inst";
   1289		reg = <0x1b00 0x40>;
   1290		#reset-cells = <1>;
   1291		#power-domain-cells = <0>;
   1292	};
   1293
   1294	prm_eve1: prm@1b40 {
   1295		compatible = "ti,dra7-prm-inst", "ti,omap-prm-inst";
   1296		reg = <0x1b40 0x40>;
   1297		#power-domain-cells = <0>;
   1298	};
   1299
   1300	prm_eve2: prm@1b80 {
   1301		compatible = "ti,dra7-prm-inst", "ti,omap-prm-inst";
   1302		reg = <0x1b80 0x40>;
   1303		#power-domain-cells = <0>;
   1304	};
   1305
   1306	prm_eve3: prm@1bc0 {
   1307		compatible = "ti,dra7-prm-inst", "ti,omap-prm-inst";
   1308		reg = <0x1bc0 0x40>;
   1309		#power-domain-cells = <0>;
   1310	};
   1311
   1312	prm_eve4: prm@1c00 {
   1313		compatible = "ti,dra7-prm-inst", "ti,omap-prm-inst";
   1314		reg = <0x1c00 0x60>;
   1315		#power-domain-cells = <0>;
   1316	};
   1317
   1318	prm_rtc: prm@1c60 {
   1319		compatible = "ti,dra7-prm-inst", "ti,omap-prm-inst";
   1320		reg = <0x1c60 0x20>;
   1321		#power-domain-cells = <0>;
   1322	};
   1323
   1324	prm_vpe: prm@1c80 {
   1325		compatible = "ti,dra7-prm-inst", "ti,omap-prm-inst";
   1326		reg = <0x1c80 0x80>;
   1327		#power-domain-cells = <0>;
   1328	};
   1329};
   1330
   1331/* Preferred always-on timer for clockevent */
   1332&timer1_target {
   1333	ti,no-reset-on-init;
   1334	ti,no-idle;
   1335	timer@0 {
   1336		assigned-clocks = <&wkupaon_clkctrl DRA7_WKUPAON_TIMER1_CLKCTRL 24>;
   1337		assigned-clock-parents = <&sys_32k_ck>;
   1338	};
   1339};
   1340
   1341/* Local timers, see ARM architected timer wrap erratum i940 */
   1342&timer15_target {
   1343	ti,no-reset-on-init;
   1344	ti,no-idle;
   1345	timer@0 {
   1346		assigned-clocks = <&l4per3_clkctrl DRA7_L4PER3_TIMER15_CLKCTRL 24>;
   1347		assigned-clock-parents = <&timer_sys_clk_div>;
   1348	};
   1349};
   1350
   1351&timer16_target {
   1352	ti,no-reset-on-init;
   1353	ti,no-idle;
   1354	timer@0 {
   1355		assigned-clocks = <&l4per3_clkctrl DRA7_L4PER3_TIMER16_CLKCTRL 24>;
   1356		assigned-clock-parents = <&timer_sys_clk_div>;
   1357	};
   1358};