162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0-only
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * Copyright (C) 2011 Texas Instruments Incorporated - https://www.ti.com/
462306a36Sopenharmony_ci */
562306a36Sopenharmony_ci
662306a36Sopenharmony_ci#include <dt-bindings/bus/ti-sysc.h>
762306a36Sopenharmony_ci#include <dt-bindings/clock/omap4.h>
862306a36Sopenharmony_ci#include <dt-bindings/gpio/gpio.h>
962306a36Sopenharmony_ci#include <dt-bindings/interrupt-controller/arm-gic.h>
1062306a36Sopenharmony_ci#include <dt-bindings/pinctrl/omap.h>
1162306a36Sopenharmony_ci#include <dt-bindings/clock/omap4.h>
1262306a36Sopenharmony_ci
1362306a36Sopenharmony_ci/ {
1462306a36Sopenharmony_ci	compatible = "ti,omap4430", "ti,omap4";
1562306a36Sopenharmony_ci	interrupt-parent = <&wakeupgen>;
1662306a36Sopenharmony_ci	#address-cells = <1>;
1762306a36Sopenharmony_ci	#size-cells = <1>;
1862306a36Sopenharmony_ci	chosen { };
1962306a36Sopenharmony_ci
2062306a36Sopenharmony_ci	aliases {
2162306a36Sopenharmony_ci		i2c0 = &i2c1;
2262306a36Sopenharmony_ci		i2c1 = &i2c2;
2362306a36Sopenharmony_ci		i2c2 = &i2c3;
2462306a36Sopenharmony_ci		i2c3 = &i2c4;
2562306a36Sopenharmony_ci		mmc0 = &mmc1;
2662306a36Sopenharmony_ci		mmc1 = &mmc2;
2762306a36Sopenharmony_ci		mmc2 = &mmc3;
2862306a36Sopenharmony_ci		mmc3 = &mmc4;
2962306a36Sopenharmony_ci		mmc4 = &mmc5;
3062306a36Sopenharmony_ci		serial0 = &uart1;
3162306a36Sopenharmony_ci		serial1 = &uart2;
3262306a36Sopenharmony_ci		serial2 = &uart3;
3362306a36Sopenharmony_ci		serial3 = &uart4;
3462306a36Sopenharmony_ci		rproc0 = &dsp;
3562306a36Sopenharmony_ci		rproc1 = &ipu;
3662306a36Sopenharmony_ci	};
3762306a36Sopenharmony_ci
3862306a36Sopenharmony_ci	cpus {
3962306a36Sopenharmony_ci		#address-cells = <1>;
4062306a36Sopenharmony_ci		#size-cells = <0>;
4162306a36Sopenharmony_ci
4262306a36Sopenharmony_ci		cpu@0 {
4362306a36Sopenharmony_ci			compatible = "arm,cortex-a9";
4462306a36Sopenharmony_ci			device_type = "cpu";
4562306a36Sopenharmony_ci			next-level-cache = <&L2>;
4662306a36Sopenharmony_ci			reg = <0x0>;
4762306a36Sopenharmony_ci
4862306a36Sopenharmony_ci			clocks = <&dpll_mpu_ck>;
4962306a36Sopenharmony_ci			clock-names = "cpu";
5062306a36Sopenharmony_ci
5162306a36Sopenharmony_ci			clock-latency = <300000>; /* From omap-cpufreq driver */
5262306a36Sopenharmony_ci		};
5362306a36Sopenharmony_ci		cpu@1 {
5462306a36Sopenharmony_ci			compatible = "arm,cortex-a9";
5562306a36Sopenharmony_ci			device_type = "cpu";
5662306a36Sopenharmony_ci			next-level-cache = <&L2>;
5762306a36Sopenharmony_ci			reg = <0x1>;
5862306a36Sopenharmony_ci		};
5962306a36Sopenharmony_ci	};
6062306a36Sopenharmony_ci
6162306a36Sopenharmony_ci	/*
6262306a36Sopenharmony_ci	 * Needed early by omap4_sram_init() for barrier, do not move to l3
6362306a36Sopenharmony_ci	 * interconnect as simple-pm-bus probes at module_init() time.
6462306a36Sopenharmony_ci	 */
6562306a36Sopenharmony_ci	ocmcram: sram@40304000 {
6662306a36Sopenharmony_ci		compatible = "mmio-sram";
6762306a36Sopenharmony_ci		reg = <0x40304000 0xa000>; /* 40k */
6862306a36Sopenharmony_ci	};
6962306a36Sopenharmony_ci
7062306a36Sopenharmony_ci	gic: interrupt-controller@48241000 {
7162306a36Sopenharmony_ci		compatible = "arm,cortex-a9-gic";
7262306a36Sopenharmony_ci		interrupt-controller;
7362306a36Sopenharmony_ci		#interrupt-cells = <3>;
7462306a36Sopenharmony_ci		reg = <0x48241000 0x1000>,
7562306a36Sopenharmony_ci		      <0x48240100 0x0100>;
7662306a36Sopenharmony_ci		interrupt-parent = <&gic>;
7762306a36Sopenharmony_ci	};
7862306a36Sopenharmony_ci
7962306a36Sopenharmony_ci	L2: cache-controller@48242000 {
8062306a36Sopenharmony_ci		compatible = "arm,pl310-cache";
8162306a36Sopenharmony_ci		reg = <0x48242000 0x1000>;
8262306a36Sopenharmony_ci		cache-unified;
8362306a36Sopenharmony_ci		cache-level = <2>;
8462306a36Sopenharmony_ci	};
8562306a36Sopenharmony_ci
8662306a36Sopenharmony_ci	local-timer@48240600 {
8762306a36Sopenharmony_ci		compatible = "arm,cortex-a9-twd-timer";
8862306a36Sopenharmony_ci		clocks = <&mpu_periphclk>;
8962306a36Sopenharmony_ci		reg = <0x48240600 0x20>;
9062306a36Sopenharmony_ci		interrupts = <GIC_PPI 13 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_EDGE_RISING)>;
9162306a36Sopenharmony_ci		interrupt-parent = <&gic>;
9262306a36Sopenharmony_ci	};
9362306a36Sopenharmony_ci
9462306a36Sopenharmony_ci	wakeupgen: interrupt-controller@48281000 {
9562306a36Sopenharmony_ci		compatible = "ti,omap4-wugen-mpu";
9662306a36Sopenharmony_ci		interrupt-controller;
9762306a36Sopenharmony_ci		#interrupt-cells = <3>;
9862306a36Sopenharmony_ci		reg = <0x48281000 0x1000>;
9962306a36Sopenharmony_ci		interrupt-parent = <&gic>;
10062306a36Sopenharmony_ci	};
10162306a36Sopenharmony_ci
10262306a36Sopenharmony_ci	/*
10362306a36Sopenharmony_ci	 * XXX: Use a flat representation of the OMAP4 interconnect.
10462306a36Sopenharmony_ci	 * The real OMAP interconnect network is quite complex.
10562306a36Sopenharmony_ci	 * Since it will not bring real advantage to represent that in DT for
10662306a36Sopenharmony_ci	 * the moment, just use a fake OCP bus entry to represent the whole bus
10762306a36Sopenharmony_ci	 * hierarchy.
10862306a36Sopenharmony_ci	 */
10962306a36Sopenharmony_ci	ocp {
11062306a36Sopenharmony_ci		compatible = "simple-pm-bus";
11162306a36Sopenharmony_ci		power-domains = <&prm_l4per>;
11262306a36Sopenharmony_ci		clocks = <&l3_1_clkctrl OMAP4_L3_MAIN_1_CLKCTRL 0>,
11362306a36Sopenharmony_ci			 <&l3_2_clkctrl OMAP4_L3_MAIN_2_CLKCTRL 0>,
11462306a36Sopenharmony_ci			 <&l3_instr_clkctrl OMAP4_L3_MAIN_3_CLKCTRL 0>;
11562306a36Sopenharmony_ci		#address-cells = <1>;
11662306a36Sopenharmony_ci		#size-cells = <1>;
11762306a36Sopenharmony_ci		ranges;
11862306a36Sopenharmony_ci
11962306a36Sopenharmony_ci		l3-noc@44000000 {
12062306a36Sopenharmony_ci			compatible = "ti,omap4-l3-noc";
12162306a36Sopenharmony_ci			reg = <0x44000000 0x1000>,
12262306a36Sopenharmony_ci			      <0x44800000 0x2000>,
12362306a36Sopenharmony_ci			      <0x45000000 0x1000>;
12462306a36Sopenharmony_ci			interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
12562306a36Sopenharmony_ci				     <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
12662306a36Sopenharmony_ci		};
12762306a36Sopenharmony_ci
12862306a36Sopenharmony_ci		l4_wkup: interconnect@4a300000 {
12962306a36Sopenharmony_ci		};
13062306a36Sopenharmony_ci
13162306a36Sopenharmony_ci		l4_cfg: interconnect@4a000000 {
13262306a36Sopenharmony_ci		};
13362306a36Sopenharmony_ci
13462306a36Sopenharmony_ci		l4_per: interconnect@48000000 {
13562306a36Sopenharmony_ci		};
13662306a36Sopenharmony_ci
13762306a36Sopenharmony_ci		target-module@48210000 {
13862306a36Sopenharmony_ci			compatible = "ti,sysc-omap4-simple", "ti,sysc";
13962306a36Sopenharmony_ci			power-domains = <&prm_mpu>;
14062306a36Sopenharmony_ci			clocks = <&mpuss_clkctrl OMAP4_MPU_CLKCTRL 0>;
14162306a36Sopenharmony_ci			clock-names = "fck";
14262306a36Sopenharmony_ci			#address-cells = <1>;
14362306a36Sopenharmony_ci			#size-cells = <1>;
14462306a36Sopenharmony_ci			ranges = <0 0x48210000 0x1f0000>;
14562306a36Sopenharmony_ci
14662306a36Sopenharmony_ci			mpu {
14762306a36Sopenharmony_ci				compatible = "ti,omap4-mpu";
14862306a36Sopenharmony_ci				sram = <&ocmcram>;
14962306a36Sopenharmony_ci			};
15062306a36Sopenharmony_ci		};
15162306a36Sopenharmony_ci
15262306a36Sopenharmony_ci		l4_abe: interconnect@40100000 {
15362306a36Sopenharmony_ci		};
15462306a36Sopenharmony_ci
15562306a36Sopenharmony_ci		target-module@50000000 {
15662306a36Sopenharmony_ci			compatible = "ti,sysc-omap2", "ti,sysc";
15762306a36Sopenharmony_ci			reg = <0x50000000 4>,
15862306a36Sopenharmony_ci			      <0x50000010 4>,
15962306a36Sopenharmony_ci			      <0x50000014 4>;
16062306a36Sopenharmony_ci			reg-names = "rev", "sysc", "syss";
16162306a36Sopenharmony_ci			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
16262306a36Sopenharmony_ci					<SYSC_IDLE_NO>,
16362306a36Sopenharmony_ci					<SYSC_IDLE_SMART>;
16462306a36Sopenharmony_ci			ti,syss-mask = <1>;
16562306a36Sopenharmony_ci			ti,no-idle-on-init;
16662306a36Sopenharmony_ci			clocks = <&l3_2_clkctrl OMAP4_GPMC_CLKCTRL 0>;
16762306a36Sopenharmony_ci			clock-names = "fck";
16862306a36Sopenharmony_ci			#address-cells = <1>;
16962306a36Sopenharmony_ci			#size-cells = <1>;
17062306a36Sopenharmony_ci			ranges = <0x50000000 0x50000000 0x00001000>, /* regs */
17162306a36Sopenharmony_ci				 <0x00000000 0x00000000 0x40000000>; /* data */
17262306a36Sopenharmony_ci
17362306a36Sopenharmony_ci			gpmc: gpmc@50000000 {
17462306a36Sopenharmony_ci				compatible = "ti,omap4430-gpmc";
17562306a36Sopenharmony_ci				reg = <0x50000000 0x1000>;
17662306a36Sopenharmony_ci				#address-cells = <2>;
17762306a36Sopenharmony_ci				#size-cells = <1>;
17862306a36Sopenharmony_ci				interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
17962306a36Sopenharmony_ci				dmas = <&sdma 4>;
18062306a36Sopenharmony_ci				dma-names = "rxtx";
18162306a36Sopenharmony_ci				gpmc,num-cs = <8>;
18262306a36Sopenharmony_ci				gpmc,num-waitpins = <4>;
18362306a36Sopenharmony_ci				clocks = <&l3_div_ck>;
18462306a36Sopenharmony_ci				clock-names = "fck";
18562306a36Sopenharmony_ci				interrupt-controller;
18662306a36Sopenharmony_ci				#interrupt-cells = <2>;
18762306a36Sopenharmony_ci				gpio-controller;
18862306a36Sopenharmony_ci				#gpio-cells = <2>;
18962306a36Sopenharmony_ci			};
19062306a36Sopenharmony_ci		};
19162306a36Sopenharmony_ci
19262306a36Sopenharmony_ci		target-module@52000000 {
19362306a36Sopenharmony_ci			compatible = "ti,sysc-omap4", "ti,sysc";
19462306a36Sopenharmony_ci			reg = <0x52000000 0x4>,
19562306a36Sopenharmony_ci			      <0x52000010 0x4>;
19662306a36Sopenharmony_ci			reg-names = "rev", "sysc";
19762306a36Sopenharmony_ci			ti,sysc-mask = <SYSC_OMAP4_SOFTRESET>;
19862306a36Sopenharmony_ci			ti,sysc-midle = <SYSC_IDLE_FORCE>,
19962306a36Sopenharmony_ci					<SYSC_IDLE_NO>,
20062306a36Sopenharmony_ci					<SYSC_IDLE_SMART>,
20162306a36Sopenharmony_ci					<SYSC_IDLE_SMART_WKUP>;
20262306a36Sopenharmony_ci			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
20362306a36Sopenharmony_ci					<SYSC_IDLE_NO>,
20462306a36Sopenharmony_ci					<SYSC_IDLE_SMART>,
20562306a36Sopenharmony_ci					<SYSC_IDLE_SMART_WKUP>;
20662306a36Sopenharmony_ci			ti,sysc-delay-us = <2>;
20762306a36Sopenharmony_ci			power-domains = <&prm_cam>;
20862306a36Sopenharmony_ci			clocks = <&iss_clkctrl OMAP4_ISS_CLKCTRL 0>;
20962306a36Sopenharmony_ci			clock-names = "fck";
21062306a36Sopenharmony_ci			#address-cells = <1>;
21162306a36Sopenharmony_ci			#size-cells = <1>;
21262306a36Sopenharmony_ci			ranges = <0 0x52000000 0x1000000>;
21362306a36Sopenharmony_ci
21462306a36Sopenharmony_ci			/* No child device binding, driver in staging */
21562306a36Sopenharmony_ci		};
21662306a36Sopenharmony_ci
21762306a36Sopenharmony_ci		/*
21862306a36Sopenharmony_ci		 * Note that 4430 needs cross trigger interface (CTI) supported
21962306a36Sopenharmony_ci		 * before we can configure the interrupts. This means sampling
22062306a36Sopenharmony_ci		 * events are not supported for pmu. Note that 4460 does not use
22162306a36Sopenharmony_ci		 * CTI, see also 4460.dtsi.
22262306a36Sopenharmony_ci		 */
22362306a36Sopenharmony_ci		target-module@54000000 {
22462306a36Sopenharmony_ci			compatible = "ti,sysc-omap4-simple", "ti,sysc";
22562306a36Sopenharmony_ci			power-domains = <&prm_emu>;
22662306a36Sopenharmony_ci			clocks = <&emu_sys_clkctrl OMAP4_DEBUGSS_CLKCTRL 0>;
22762306a36Sopenharmony_ci			clock-names = "fck";
22862306a36Sopenharmony_ci			#address-cells = <1>;
22962306a36Sopenharmony_ci			#size-cells = <1>;
23062306a36Sopenharmony_ci			ranges = <0x0 0x54000000 0x1000000>;
23162306a36Sopenharmony_ci
23262306a36Sopenharmony_ci			pmu: pmu {
23362306a36Sopenharmony_ci				compatible = "arm,cortex-a9-pmu";
23462306a36Sopenharmony_ci			};
23562306a36Sopenharmony_ci		};
23662306a36Sopenharmony_ci
23762306a36Sopenharmony_ci		target-module@55082000 {
23862306a36Sopenharmony_ci			compatible = "ti,sysc-omap2", "ti,sysc";
23962306a36Sopenharmony_ci			reg = <0x55082000 0x4>,
24062306a36Sopenharmony_ci			      <0x55082010 0x4>,
24162306a36Sopenharmony_ci			      <0x55082014 0x4>;
24262306a36Sopenharmony_ci			reg-names = "rev", "sysc", "syss";
24362306a36Sopenharmony_ci			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
24462306a36Sopenharmony_ci					<SYSC_IDLE_NO>,
24562306a36Sopenharmony_ci					<SYSC_IDLE_SMART>;
24662306a36Sopenharmony_ci			ti,sysc-mask = <(SYSC_OMAP2_CLOCKACTIVITY |
24762306a36Sopenharmony_ci					 SYSC_OMAP2_SOFTRESET |
24862306a36Sopenharmony_ci					 SYSC_OMAP2_AUTOIDLE)>;
24962306a36Sopenharmony_ci			clocks = <&ducati_clkctrl OMAP4_IPU_CLKCTRL 0>;
25062306a36Sopenharmony_ci			clock-names = "fck";
25162306a36Sopenharmony_ci			resets = <&prm_core 2>;
25262306a36Sopenharmony_ci			reset-names = "rstctrl";
25362306a36Sopenharmony_ci			ranges = <0x0 0x55082000 0x100>;
25462306a36Sopenharmony_ci			#size-cells = <1>;
25562306a36Sopenharmony_ci			#address-cells = <1>;
25662306a36Sopenharmony_ci
25762306a36Sopenharmony_ci			mmu_ipu: mmu@0 {
25862306a36Sopenharmony_ci				compatible = "ti,omap4-iommu";
25962306a36Sopenharmony_ci				reg = <0x0 0x100>;
26062306a36Sopenharmony_ci				interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
26162306a36Sopenharmony_ci				#iommu-cells = <0>;
26262306a36Sopenharmony_ci				ti,iommu-bus-err-back;
26362306a36Sopenharmony_ci			};
26462306a36Sopenharmony_ci		};
26562306a36Sopenharmony_ci
26662306a36Sopenharmony_ci		target-module@4012c000 {
26762306a36Sopenharmony_ci			compatible = "ti,sysc-omap4", "ti,sysc";
26862306a36Sopenharmony_ci			reg = <0x4012c000 0x4>,
26962306a36Sopenharmony_ci			      <0x4012c010 0x4>;
27062306a36Sopenharmony_ci			reg-names = "rev", "sysc";
27162306a36Sopenharmony_ci			ti,sysc-mask = <SYSC_OMAP4_SOFTRESET>;
27262306a36Sopenharmony_ci			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
27362306a36Sopenharmony_ci					<SYSC_IDLE_NO>,
27462306a36Sopenharmony_ci					<SYSC_IDLE_SMART>,
27562306a36Sopenharmony_ci					<SYSC_IDLE_SMART_WKUP>;
27662306a36Sopenharmony_ci			clocks = <&abe_clkctrl OMAP4_SLIMBUS1_CLKCTRL 0>;
27762306a36Sopenharmony_ci			clock-names = "fck";
27862306a36Sopenharmony_ci			#address-cells = <1>;
27962306a36Sopenharmony_ci			#size-cells = <1>;
28062306a36Sopenharmony_ci			ranges = <0x00000000 0x4012c000 0x1000>, /* MPU */
28162306a36Sopenharmony_ci				 <0x4902c000 0x4902c000 0x1000>; /* L3 */
28262306a36Sopenharmony_ci
28362306a36Sopenharmony_ci			/* No child device binding or driver in mainline */
28462306a36Sopenharmony_ci		};
28562306a36Sopenharmony_ci
28662306a36Sopenharmony_ci		target-module@4e000000 {
28762306a36Sopenharmony_ci			compatible = "ti,sysc-omap2", "ti,sysc";
28862306a36Sopenharmony_ci			reg = <0x4e000000 0x4>,
28962306a36Sopenharmony_ci			      <0x4e000010 0x4>;
29062306a36Sopenharmony_ci			reg-names = "rev", "sysc";
29162306a36Sopenharmony_ci			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
29262306a36Sopenharmony_ci					<SYSC_IDLE_NO>,
29362306a36Sopenharmony_ci					<SYSC_IDLE_SMART>;
29462306a36Sopenharmony_ci			ranges = <0x0 0x4e000000 0x2000000>;
29562306a36Sopenharmony_ci			#size-cells = <1>;
29662306a36Sopenharmony_ci			#address-cells = <1>;
29762306a36Sopenharmony_ci
29862306a36Sopenharmony_ci			dmm@0 {
29962306a36Sopenharmony_ci				compatible = "ti,omap4-dmm";
30062306a36Sopenharmony_ci				reg = <0 0x800>;
30162306a36Sopenharmony_ci				interrupts = <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>;
30262306a36Sopenharmony_ci			};
30362306a36Sopenharmony_ci		};
30462306a36Sopenharmony_ci
30562306a36Sopenharmony_ci		target-module@4c000000 {
30662306a36Sopenharmony_ci			compatible = "ti,sysc-omap4-simple", "ti,sysc";
30762306a36Sopenharmony_ci			reg = <0x4c000000 0x4>;
30862306a36Sopenharmony_ci			reg-names = "rev";
30962306a36Sopenharmony_ci			clocks = <&l3_emif_clkctrl OMAP4_EMIF1_CLKCTRL 0>;
31062306a36Sopenharmony_ci			clock-names = "fck";
31162306a36Sopenharmony_ci			ti,no-idle;
31262306a36Sopenharmony_ci			#address-cells = <1>;
31362306a36Sopenharmony_ci			#size-cells = <1>;
31462306a36Sopenharmony_ci			ranges = <0x0 0x4c000000 0x1000000>;
31562306a36Sopenharmony_ci
31662306a36Sopenharmony_ci			emif1: emif@0 {
31762306a36Sopenharmony_ci				compatible = "ti,emif-4d";
31862306a36Sopenharmony_ci				reg = <0 0x100>;
31962306a36Sopenharmony_ci				interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
32062306a36Sopenharmony_ci				phy-type = <1>;
32162306a36Sopenharmony_ci				hw-caps-read-idle-ctrl;
32262306a36Sopenharmony_ci				hw-caps-ll-interface;
32362306a36Sopenharmony_ci				hw-caps-temp-alert;
32462306a36Sopenharmony_ci			};
32562306a36Sopenharmony_ci		};
32662306a36Sopenharmony_ci
32762306a36Sopenharmony_ci		target-module@4d000000 {
32862306a36Sopenharmony_ci			compatible = "ti,sysc-omap4-simple", "ti,sysc";
32962306a36Sopenharmony_ci			reg = <0x4d000000 0x4>;
33062306a36Sopenharmony_ci			reg-names = "rev";
33162306a36Sopenharmony_ci			clocks = <&l3_emif_clkctrl OMAP4_EMIF2_CLKCTRL 0>;
33262306a36Sopenharmony_ci			clock-names = "fck";
33362306a36Sopenharmony_ci			ti,no-idle;
33462306a36Sopenharmony_ci			#address-cells = <1>;
33562306a36Sopenharmony_ci			#size-cells = <1>;
33662306a36Sopenharmony_ci			ranges = <0x0 0x4d000000 0x1000000>;
33762306a36Sopenharmony_ci
33862306a36Sopenharmony_ci			emif2: emif@0 {
33962306a36Sopenharmony_ci				compatible = "ti,emif-4d";
34062306a36Sopenharmony_ci				reg = <0 0x100>;
34162306a36Sopenharmony_ci				interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>;
34262306a36Sopenharmony_ci				phy-type = <1>;
34362306a36Sopenharmony_ci				hw-caps-read-idle-ctrl;
34462306a36Sopenharmony_ci				hw-caps-ll-interface;
34562306a36Sopenharmony_ci				hw-caps-temp-alert;
34662306a36Sopenharmony_ci			};
34762306a36Sopenharmony_ci		};
34862306a36Sopenharmony_ci
34962306a36Sopenharmony_ci		dsp: dsp {
35062306a36Sopenharmony_ci			compatible = "ti,omap4-dsp";
35162306a36Sopenharmony_ci			ti,bootreg = <&scm_conf 0x304 0>;
35262306a36Sopenharmony_ci			iommus = <&mmu_dsp>;
35362306a36Sopenharmony_ci			resets = <&prm_tesla 0>;
35462306a36Sopenharmony_ci			clocks = <&tesla_clkctrl OMAP4_DSP_CLKCTRL 0>;
35562306a36Sopenharmony_ci			firmware-name = "omap4-dsp-fw.xe64T";
35662306a36Sopenharmony_ci			mboxes = <&mailbox &mbox_dsp>;
35762306a36Sopenharmony_ci			status = "disabled";
35862306a36Sopenharmony_ci		};
35962306a36Sopenharmony_ci
36062306a36Sopenharmony_ci		ipu: ipu@55020000 {
36162306a36Sopenharmony_ci			compatible = "ti,omap4-ipu";
36262306a36Sopenharmony_ci			reg = <0x55020000 0x10000>;
36362306a36Sopenharmony_ci			reg-names = "l2ram";
36462306a36Sopenharmony_ci			iommus = <&mmu_ipu>;
36562306a36Sopenharmony_ci			resets = <&prm_core 0>, <&prm_core 1>;
36662306a36Sopenharmony_ci			clocks = <&ducati_clkctrl OMAP4_IPU_CLKCTRL 0>;
36762306a36Sopenharmony_ci			firmware-name = "omap4-ipu-fw.xem3";
36862306a36Sopenharmony_ci			mboxes = <&mailbox &mbox_ipu>;
36962306a36Sopenharmony_ci			status = "disabled";
37062306a36Sopenharmony_ci		};
37162306a36Sopenharmony_ci
37262306a36Sopenharmony_ci		aes1_target: target-module@4b501000 {
37362306a36Sopenharmony_ci			compatible = "ti,sysc-omap2", "ti,sysc";
37462306a36Sopenharmony_ci			reg = <0x4b501080 0x4>,
37562306a36Sopenharmony_ci			      <0x4b501084 0x4>,
37662306a36Sopenharmony_ci			      <0x4b501088 0x4>;
37762306a36Sopenharmony_ci			reg-names = "rev", "sysc", "syss";
37862306a36Sopenharmony_ci			ti,sysc-mask = <(SYSC_OMAP2_SOFTRESET |
37962306a36Sopenharmony_ci					 SYSC_OMAP2_AUTOIDLE)>;
38062306a36Sopenharmony_ci			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
38162306a36Sopenharmony_ci					<SYSC_IDLE_NO>,
38262306a36Sopenharmony_ci					<SYSC_IDLE_SMART>,
38362306a36Sopenharmony_ci					<SYSC_IDLE_SMART_WKUP>;
38462306a36Sopenharmony_ci			ti,syss-mask = <1>;
38562306a36Sopenharmony_ci			/* Domains (P, C): l4per_pwrdm, l4_secure_clkdm */
38662306a36Sopenharmony_ci			clocks = <&l4_secure_clkctrl OMAP4_AES1_CLKCTRL 0>;
38762306a36Sopenharmony_ci			clock-names = "fck";
38862306a36Sopenharmony_ci			#address-cells = <1>;
38962306a36Sopenharmony_ci			#size-cells = <1>;
39062306a36Sopenharmony_ci			ranges = <0x0 0x4b501000 0x1000>;
39162306a36Sopenharmony_ci
39262306a36Sopenharmony_ci			aes1: aes@0 {
39362306a36Sopenharmony_ci				compatible = "ti,omap4-aes";
39462306a36Sopenharmony_ci				reg = <0 0xa0>;
39562306a36Sopenharmony_ci				interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
39662306a36Sopenharmony_ci				dmas = <&sdma 111>, <&sdma 110>;
39762306a36Sopenharmony_ci				dma-names = "tx", "rx";
39862306a36Sopenharmony_ci			};
39962306a36Sopenharmony_ci		};
40062306a36Sopenharmony_ci
40162306a36Sopenharmony_ci		aes2_target: target-module@4b701000 {
40262306a36Sopenharmony_ci			compatible = "ti,sysc-omap2", "ti,sysc";
40362306a36Sopenharmony_ci			reg = <0x4b701080 0x4>,
40462306a36Sopenharmony_ci			      <0x4b701084 0x4>,
40562306a36Sopenharmony_ci			      <0x4b701088 0x4>;
40662306a36Sopenharmony_ci			reg-names = "rev", "sysc", "syss";
40762306a36Sopenharmony_ci			ti,sysc-mask = <(SYSC_OMAP2_SOFTRESET |
40862306a36Sopenharmony_ci					 SYSC_OMAP2_AUTOIDLE)>;
40962306a36Sopenharmony_ci			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
41062306a36Sopenharmony_ci					<SYSC_IDLE_NO>,
41162306a36Sopenharmony_ci					<SYSC_IDLE_SMART>,
41262306a36Sopenharmony_ci					<SYSC_IDLE_SMART_WKUP>;
41362306a36Sopenharmony_ci			ti,syss-mask = <1>;
41462306a36Sopenharmony_ci			/* Domains (P, C): l4per_pwrdm, l4_secure_clkdm */
41562306a36Sopenharmony_ci			clocks = <&l4_secure_clkctrl OMAP4_AES2_CLKCTRL 0>;
41662306a36Sopenharmony_ci			clock-names = "fck";
41762306a36Sopenharmony_ci			#address-cells = <1>;
41862306a36Sopenharmony_ci			#size-cells = <1>;
41962306a36Sopenharmony_ci			ranges = <0x0 0x4b701000 0x1000>;
42062306a36Sopenharmony_ci
42162306a36Sopenharmony_ci			aes2: aes@0 {
42262306a36Sopenharmony_ci				compatible = "ti,omap4-aes";
42362306a36Sopenharmony_ci				reg = <0 0xa0>;
42462306a36Sopenharmony_ci				interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>;
42562306a36Sopenharmony_ci				dmas = <&sdma 114>, <&sdma 113>;
42662306a36Sopenharmony_ci				dma-names = "tx", "rx";
42762306a36Sopenharmony_ci			};
42862306a36Sopenharmony_ci		};
42962306a36Sopenharmony_ci
43062306a36Sopenharmony_ci		sham_target: target-module@4b100000 {
43162306a36Sopenharmony_ci			compatible = "ti,sysc-omap3-sham", "ti,sysc";
43262306a36Sopenharmony_ci			reg = <0x4b100100 0x4>,
43362306a36Sopenharmony_ci			      <0x4b100110 0x4>,
43462306a36Sopenharmony_ci			      <0x4b100114 0x4>;
43562306a36Sopenharmony_ci			reg-names = "rev", "sysc", "syss";
43662306a36Sopenharmony_ci			ti,sysc-mask = <(SYSC_OMAP2_SOFTRESET |
43762306a36Sopenharmony_ci					 SYSC_OMAP2_AUTOIDLE)>;
43862306a36Sopenharmony_ci			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
43962306a36Sopenharmony_ci					<SYSC_IDLE_NO>,
44062306a36Sopenharmony_ci					<SYSC_IDLE_SMART>;
44162306a36Sopenharmony_ci			ti,syss-mask = <1>;
44262306a36Sopenharmony_ci			/* Domains (P, C): l4per_pwrdm, l4_secure_clkdm */
44362306a36Sopenharmony_ci			clocks = <&l4_secure_clkctrl OMAP4_SHA2MD5_CLKCTRL 0>;
44462306a36Sopenharmony_ci			clock-names = "fck";
44562306a36Sopenharmony_ci			#address-cells = <1>;
44662306a36Sopenharmony_ci			#size-cells = <1>;
44762306a36Sopenharmony_ci			ranges = <0x0 0x4b100000 0x1000>;
44862306a36Sopenharmony_ci
44962306a36Sopenharmony_ci			sham: sham@0 {
45062306a36Sopenharmony_ci				compatible = "ti,omap4-sham";
45162306a36Sopenharmony_ci				reg = <0 0x300>;
45262306a36Sopenharmony_ci				interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>;
45362306a36Sopenharmony_ci				dmas = <&sdma 119>;
45462306a36Sopenharmony_ci				dma-names = "rx";
45562306a36Sopenharmony_ci			};
45662306a36Sopenharmony_ci		};
45762306a36Sopenharmony_ci
45862306a36Sopenharmony_ci		abb_mpu: regulator-abb-mpu {
45962306a36Sopenharmony_ci			compatible = "ti,abb-v2";
46062306a36Sopenharmony_ci			regulator-name = "abb_mpu";
46162306a36Sopenharmony_ci			#address-cells = <0>;
46262306a36Sopenharmony_ci			#size-cells = <0>;
46362306a36Sopenharmony_ci			ti,tranxdone-status-mask = <0x80>;
46462306a36Sopenharmony_ci			clocks = <&sys_clkin_ck>;
46562306a36Sopenharmony_ci			ti,settling-time = <50>;
46662306a36Sopenharmony_ci			ti,clock-cycles = <16>;
46762306a36Sopenharmony_ci
46862306a36Sopenharmony_ci			status = "disabled";
46962306a36Sopenharmony_ci		};
47062306a36Sopenharmony_ci
47162306a36Sopenharmony_ci		abb_iva: regulator-abb-iva {
47262306a36Sopenharmony_ci			compatible = "ti,abb-v2";
47362306a36Sopenharmony_ci			regulator-name = "abb_iva";
47462306a36Sopenharmony_ci			#address-cells = <0>;
47562306a36Sopenharmony_ci			#size-cells = <0>;
47662306a36Sopenharmony_ci			ti,tranxdone-status-mask = <0x80000000>;
47762306a36Sopenharmony_ci			clocks = <&sys_clkin_ck>;
47862306a36Sopenharmony_ci			ti,settling-time = <50>;
47962306a36Sopenharmony_ci			ti,clock-cycles = <16>;
48062306a36Sopenharmony_ci
48162306a36Sopenharmony_ci			status = "disabled";
48262306a36Sopenharmony_ci		};
48362306a36Sopenharmony_ci
48462306a36Sopenharmony_ci		sgx_module: target-module@56000000 {
48562306a36Sopenharmony_ci			compatible = "ti,sysc-omap4", "ti,sysc";
48662306a36Sopenharmony_ci			reg = <0x5600fe00 0x4>,
48762306a36Sopenharmony_ci			      <0x5600fe10 0x4>;
48862306a36Sopenharmony_ci			reg-names = "rev", "sysc";
48962306a36Sopenharmony_ci			ti,sysc-midle = <SYSC_IDLE_FORCE>,
49062306a36Sopenharmony_ci					<SYSC_IDLE_NO>,
49162306a36Sopenharmony_ci					<SYSC_IDLE_SMART>,
49262306a36Sopenharmony_ci					<SYSC_IDLE_SMART_WKUP>;
49362306a36Sopenharmony_ci			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
49462306a36Sopenharmony_ci					<SYSC_IDLE_NO>,
49562306a36Sopenharmony_ci					<SYSC_IDLE_SMART>,
49662306a36Sopenharmony_ci					<SYSC_IDLE_SMART_WKUP>;
49762306a36Sopenharmony_ci			power-domains = <&prm_gfx>;
49862306a36Sopenharmony_ci			clocks = <&l3_gfx_clkctrl OMAP4_GPU_CLKCTRL 0>;
49962306a36Sopenharmony_ci			clock-names = "fck";
50062306a36Sopenharmony_ci			#address-cells = <1>;
50162306a36Sopenharmony_ci			#size-cells = <1>;
50262306a36Sopenharmony_ci			ranges = <0 0x56000000 0x2000000>;
50362306a36Sopenharmony_ci
50462306a36Sopenharmony_ci			/*
50562306a36Sopenharmony_ci			 * Closed source PowerVR driver, no child device
50662306a36Sopenharmony_ci			 * binding or driver in mainline
50762306a36Sopenharmony_ci			 */
50862306a36Sopenharmony_ci		};
50962306a36Sopenharmony_ci
51062306a36Sopenharmony_ci		/*
51162306a36Sopenharmony_ci		 * DSS is only using l3 mapping without l4 as noted in the TRM
51262306a36Sopenharmony_ci		 * "10.1.3 DSS Register Manual" for omap4460.
51362306a36Sopenharmony_ci		 */
51462306a36Sopenharmony_ci		target-module@58000000 {
51562306a36Sopenharmony_ci			compatible = "ti,sysc-omap2", "ti,sysc";
51662306a36Sopenharmony_ci			reg = <0x58000000 4>,
51762306a36Sopenharmony_ci			      <0x58000014 4>;
51862306a36Sopenharmony_ci			reg-names = "rev", "syss";
51962306a36Sopenharmony_ci			ti,syss-mask = <1>;
52062306a36Sopenharmony_ci			power-domains = <&prm_dss>;
52162306a36Sopenharmony_ci			clocks = <&l3_dss_clkctrl OMAP4_DSS_CORE_CLKCTRL 0>,
52262306a36Sopenharmony_ci				 <&l3_dss_clkctrl OMAP4_DSS_CORE_CLKCTRL 9>,
52362306a36Sopenharmony_ci				 <&l3_dss_clkctrl OMAP4_DSS_CORE_CLKCTRL 10>,
52462306a36Sopenharmony_ci				 <&l3_dss_clkctrl OMAP4_DSS_CORE_CLKCTRL 11>;
52562306a36Sopenharmony_ci			clock-names = "fck", "hdmi_clk", "sys_clk", "tv_clk";
52662306a36Sopenharmony_ci			#address-cells = <1>;
52762306a36Sopenharmony_ci			#size-cells = <1>;
52862306a36Sopenharmony_ci			ranges = <0 0x58000000 0x1000000>;
52962306a36Sopenharmony_ci
53062306a36Sopenharmony_ci			dss: dss@0 {
53162306a36Sopenharmony_ci				compatible = "ti,omap4-dss";
53262306a36Sopenharmony_ci				reg = <0 0x80>;
53362306a36Sopenharmony_ci				status = "disabled";
53462306a36Sopenharmony_ci				clocks = <&l3_dss_clkctrl OMAP4_DSS_CORE_CLKCTRL 8>;
53562306a36Sopenharmony_ci				clock-names = "fck";
53662306a36Sopenharmony_ci				#address-cells = <1>;
53762306a36Sopenharmony_ci				#size-cells = <1>;
53862306a36Sopenharmony_ci				ranges = <0 0 0x1000000>;
53962306a36Sopenharmony_ci
54062306a36Sopenharmony_ci				target-module@1000 {
54162306a36Sopenharmony_ci					compatible = "ti,sysc-omap2", "ti,sysc";
54262306a36Sopenharmony_ci					reg = <0x1000 0x4>,
54362306a36Sopenharmony_ci					      <0x1010 0x4>,
54462306a36Sopenharmony_ci					      <0x1014 0x4>;
54562306a36Sopenharmony_ci					reg-names = "rev", "sysc", "syss";
54662306a36Sopenharmony_ci					ti,sysc-sidle = <SYSC_IDLE_FORCE>,
54762306a36Sopenharmony_ci							<SYSC_IDLE_NO>,
54862306a36Sopenharmony_ci							<SYSC_IDLE_SMART>;
54962306a36Sopenharmony_ci					ti,sysc-midle = <SYSC_IDLE_FORCE>,
55062306a36Sopenharmony_ci							<SYSC_IDLE_NO>,
55162306a36Sopenharmony_ci							<SYSC_IDLE_SMART>;
55262306a36Sopenharmony_ci					ti,sysc-mask = <(SYSC_OMAP2_CLOCKACTIVITY |
55362306a36Sopenharmony_ci							 SYSC_OMAP2_ENAWAKEUP |
55462306a36Sopenharmony_ci							 SYSC_OMAP2_SOFTRESET |
55562306a36Sopenharmony_ci							 SYSC_OMAP2_AUTOIDLE)>;
55662306a36Sopenharmony_ci					ti,syss-mask = <1>;
55762306a36Sopenharmony_ci					clocks = <&l3_dss_clkctrl OMAP4_DSS_CORE_CLKCTRL 8>,
55862306a36Sopenharmony_ci						 <&l3_dss_clkctrl OMAP4_DSS_CORE_CLKCTRL 10>;
55962306a36Sopenharmony_ci					clock-names = "fck", "sys_clk";
56062306a36Sopenharmony_ci					#address-cells = <1>;
56162306a36Sopenharmony_ci					#size-cells = <1>;
56262306a36Sopenharmony_ci					ranges = <0 0x1000 0x1000>;
56362306a36Sopenharmony_ci
56462306a36Sopenharmony_ci					dispc@0 {
56562306a36Sopenharmony_ci						compatible = "ti,omap4-dispc";
56662306a36Sopenharmony_ci						reg = <0 0x1000>;
56762306a36Sopenharmony_ci						interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
56862306a36Sopenharmony_ci						clocks = <&l3_dss_clkctrl OMAP4_DSS_CORE_CLKCTRL 8>;
56962306a36Sopenharmony_ci						clock-names = "fck";
57062306a36Sopenharmony_ci					};
57162306a36Sopenharmony_ci				};
57262306a36Sopenharmony_ci
57362306a36Sopenharmony_ci				target-module@2000 {
57462306a36Sopenharmony_ci					compatible = "ti,sysc-omap2", "ti,sysc";
57562306a36Sopenharmony_ci					reg = <0x2000 0x4>,
57662306a36Sopenharmony_ci					      <0x2010 0x4>,
57762306a36Sopenharmony_ci					      <0x2014 0x4>;
57862306a36Sopenharmony_ci					reg-names = "rev", "sysc", "syss";
57962306a36Sopenharmony_ci					ti,sysc-sidle = <SYSC_IDLE_FORCE>,
58062306a36Sopenharmony_ci							<SYSC_IDLE_NO>,
58162306a36Sopenharmony_ci							<SYSC_IDLE_SMART>;
58262306a36Sopenharmony_ci					ti,sysc-mask = <(SYSC_OMAP2_SOFTRESET |
58362306a36Sopenharmony_ci							 SYSC_OMAP2_AUTOIDLE)>;
58462306a36Sopenharmony_ci					ti,syss-mask = <1>;
58562306a36Sopenharmony_ci					clocks = <&l3_dss_clkctrl OMAP4_DSS_CORE_CLKCTRL 8>,
58662306a36Sopenharmony_ci						 <&l3_dss_clkctrl OMAP4_DSS_CORE_CLKCTRL 10>;
58762306a36Sopenharmony_ci					clock-names = "fck", "sys_clk";
58862306a36Sopenharmony_ci					#address-cells = <1>;
58962306a36Sopenharmony_ci					#size-cells = <1>;
59062306a36Sopenharmony_ci					ranges = <0 0x2000 0x1000>;
59162306a36Sopenharmony_ci
59262306a36Sopenharmony_ci					rfbi: encoder@0  {
59362306a36Sopenharmony_ci						reg = <0 0x1000>;
59462306a36Sopenharmony_ci						status = "disabled";
59562306a36Sopenharmony_ci						clocks = <&l3_dss_clkctrl OMAP4_DSS_CORE_CLKCTRL 8>, <&l3_div_ck>;
59662306a36Sopenharmony_ci						clock-names = "fck", "ick";
59762306a36Sopenharmony_ci					};
59862306a36Sopenharmony_ci				};
59962306a36Sopenharmony_ci
60062306a36Sopenharmony_ci				target-module@3000 {
60162306a36Sopenharmony_ci					compatible = "ti,sysc-omap2", "ti,sysc";
60262306a36Sopenharmony_ci					reg = <0x3000 0x4>;
60362306a36Sopenharmony_ci					reg-names = "rev";
60462306a36Sopenharmony_ci					clocks = <&l3_dss_clkctrl OMAP4_DSS_CORE_CLKCTRL 10>;
60562306a36Sopenharmony_ci					clock-names = "sys_clk";
60662306a36Sopenharmony_ci					#address-cells = <1>;
60762306a36Sopenharmony_ci					#size-cells = <1>;
60862306a36Sopenharmony_ci					ranges = <0 0x3000 0x1000>;
60962306a36Sopenharmony_ci
61062306a36Sopenharmony_ci					venc: encoder@0 {
61162306a36Sopenharmony_ci						compatible = "ti,omap4-venc";
61262306a36Sopenharmony_ci						reg = <0 0x1000>;
61362306a36Sopenharmony_ci						status = "disabled";
61462306a36Sopenharmony_ci						clocks = <&l3_dss_clkctrl OMAP4_DSS_CORE_CLKCTRL 11>;
61562306a36Sopenharmony_ci						clock-names = "fck";
61662306a36Sopenharmony_ci					};
61762306a36Sopenharmony_ci				};
61862306a36Sopenharmony_ci
61962306a36Sopenharmony_ci				target-module@4000 {
62062306a36Sopenharmony_ci					compatible = "ti,sysc-omap2", "ti,sysc";
62162306a36Sopenharmony_ci					reg = <0x4000 0x4>,
62262306a36Sopenharmony_ci					      <0x4010 0x4>,
62362306a36Sopenharmony_ci					      <0x4014 0x4>;
62462306a36Sopenharmony_ci					reg-names = "rev", "sysc", "syss";
62562306a36Sopenharmony_ci					ti,sysc-sidle = <SYSC_IDLE_FORCE>,
62662306a36Sopenharmony_ci							<SYSC_IDLE_NO>,
62762306a36Sopenharmony_ci							<SYSC_IDLE_SMART>;
62862306a36Sopenharmony_ci					ti,sysc-mask = <(SYSC_OMAP2_CLOCKACTIVITY |
62962306a36Sopenharmony_ci							 SYSC_OMAP2_ENAWAKEUP |
63062306a36Sopenharmony_ci							 SYSC_OMAP2_SOFTRESET |
63162306a36Sopenharmony_ci							 SYSC_OMAP2_AUTOIDLE)>;
63262306a36Sopenharmony_ci					ti,syss-mask = <1>;
63362306a36Sopenharmony_ci					#address-cells = <1>;
63462306a36Sopenharmony_ci					#size-cells = <1>;
63562306a36Sopenharmony_ci					ranges = <0 0x4000 0x1000>;
63662306a36Sopenharmony_ci
63762306a36Sopenharmony_ci					dsi1: encoder@0 {
63862306a36Sopenharmony_ci						compatible = "ti,omap4-dsi";
63962306a36Sopenharmony_ci						reg = <0 0x200>,
64062306a36Sopenharmony_ci						      <0x200 0x40>,
64162306a36Sopenharmony_ci						      <0x300 0x20>;
64262306a36Sopenharmony_ci						reg-names = "proto", "phy", "pll";
64362306a36Sopenharmony_ci						interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
64462306a36Sopenharmony_ci						status = "disabled";
64562306a36Sopenharmony_ci						clocks = <&l3_dss_clkctrl OMAP4_DSS_CORE_CLKCTRL 8>,
64662306a36Sopenharmony_ci							 <&l3_dss_clkctrl OMAP4_DSS_CORE_CLKCTRL 10>;
64762306a36Sopenharmony_ci						clock-names = "fck", "sys_clk";
64862306a36Sopenharmony_ci
64962306a36Sopenharmony_ci						#address-cells = <1>;
65062306a36Sopenharmony_ci						#size-cells = <0>;
65162306a36Sopenharmony_ci					};
65262306a36Sopenharmony_ci				};
65362306a36Sopenharmony_ci
65462306a36Sopenharmony_ci				target-module@5000 {
65562306a36Sopenharmony_ci					compatible = "ti,sysc-omap2", "ti,sysc";
65662306a36Sopenharmony_ci					reg = <0x5000 0x4>,
65762306a36Sopenharmony_ci					      <0x5010 0x4>,
65862306a36Sopenharmony_ci					      <0x5014 0x4>;
65962306a36Sopenharmony_ci					reg-names = "rev", "sysc", "syss";
66062306a36Sopenharmony_ci					ti,sysc-sidle = <SYSC_IDLE_FORCE>,
66162306a36Sopenharmony_ci							<SYSC_IDLE_NO>,
66262306a36Sopenharmony_ci							<SYSC_IDLE_SMART>;
66362306a36Sopenharmony_ci					ti,sysc-mask = <(SYSC_OMAP2_CLOCKACTIVITY |
66462306a36Sopenharmony_ci							 SYSC_OMAP2_ENAWAKEUP |
66562306a36Sopenharmony_ci							 SYSC_OMAP2_SOFTRESET |
66662306a36Sopenharmony_ci							 SYSC_OMAP2_AUTOIDLE)>;
66762306a36Sopenharmony_ci					ti,syss-mask = <1>;
66862306a36Sopenharmony_ci					#address-cells = <1>;
66962306a36Sopenharmony_ci					#size-cells = <1>;
67062306a36Sopenharmony_ci					ranges = <0 0x5000 0x1000>;
67162306a36Sopenharmony_ci
67262306a36Sopenharmony_ci					dsi2: encoder@0 {
67362306a36Sopenharmony_ci						compatible = "ti,omap4-dsi";
67462306a36Sopenharmony_ci						reg = <0 0x200>,
67562306a36Sopenharmony_ci						      <0x200 0x40>,
67662306a36Sopenharmony_ci						      <0x300 0x20>;
67762306a36Sopenharmony_ci						reg-names = "proto", "phy", "pll";
67862306a36Sopenharmony_ci						interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>;
67962306a36Sopenharmony_ci						status = "disabled";
68062306a36Sopenharmony_ci						clocks = <&l3_dss_clkctrl OMAP4_DSS_CORE_CLKCTRL 8>,
68162306a36Sopenharmony_ci						         <&l3_dss_clkctrl OMAP4_DSS_CORE_CLKCTRL 10>;
68262306a36Sopenharmony_ci						clock-names = "fck", "sys_clk";
68362306a36Sopenharmony_ci
68462306a36Sopenharmony_ci						#address-cells = <1>;
68562306a36Sopenharmony_ci						#size-cells = <0>;
68662306a36Sopenharmony_ci					};
68762306a36Sopenharmony_ci				};
68862306a36Sopenharmony_ci
68962306a36Sopenharmony_ci				target-module@6000 {
69062306a36Sopenharmony_ci					compatible = "ti,sysc-omap4", "ti,sysc";
69162306a36Sopenharmony_ci					reg = <0x6000 0x4>,
69262306a36Sopenharmony_ci					      <0x6010 0x4>;
69362306a36Sopenharmony_ci					reg-names = "rev", "sysc";
69462306a36Sopenharmony_ci					/*
69562306a36Sopenharmony_ci					 * Has SYSC_IDLE_SMART and SYSC_IDLE_SMART_WKUP
69662306a36Sopenharmony_ci					 * but HDMI audio will fail with them.
69762306a36Sopenharmony_ci					 */
69862306a36Sopenharmony_ci					ti,sysc-sidle = <SYSC_IDLE_FORCE>,
69962306a36Sopenharmony_ci							<SYSC_IDLE_NO>;
70062306a36Sopenharmony_ci					ti,sysc-mask = <(SYSC_OMAP4_SOFTRESET)>;
70162306a36Sopenharmony_ci					clocks = <&l3_dss_clkctrl OMAP4_DSS_CORE_CLKCTRL 9>,
70262306a36Sopenharmony_ci						 <&l3_dss_clkctrl OMAP4_DSS_CORE_CLKCTRL 8>;
70362306a36Sopenharmony_ci					clock-names = "fck", "dss_clk";
70462306a36Sopenharmony_ci					#address-cells = <1>;
70562306a36Sopenharmony_ci					#size-cells = <1>;
70662306a36Sopenharmony_ci					ranges = <0 0x6000 0x2000>;
70762306a36Sopenharmony_ci
70862306a36Sopenharmony_ci					hdmi: encoder@0 {
70962306a36Sopenharmony_ci					compatible = "ti,omap4-hdmi";
71062306a36Sopenharmony_ci						reg = <0 0x200>,
71162306a36Sopenharmony_ci						      <0x200 0x100>,
71262306a36Sopenharmony_ci						      <0x300 0x100>,
71362306a36Sopenharmony_ci						      <0x400 0x1000>;
71462306a36Sopenharmony_ci						reg-names = "wp", "pll", "phy", "core";
71562306a36Sopenharmony_ci						interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
71662306a36Sopenharmony_ci						status = "disabled";
71762306a36Sopenharmony_ci						clocks = <&l3_dss_clkctrl OMAP4_DSS_CORE_CLKCTRL 9>,
71862306a36Sopenharmony_ci						         <&l3_dss_clkctrl OMAP4_DSS_CORE_CLKCTRL 10>;
71962306a36Sopenharmony_ci						clock-names = "fck", "sys_clk";
72062306a36Sopenharmony_ci						dmas = <&sdma 76>;
72162306a36Sopenharmony_ci						dma-names = "audio_tx";
72262306a36Sopenharmony_ci					};
72362306a36Sopenharmony_ci				};
72462306a36Sopenharmony_ci			};
72562306a36Sopenharmony_ci		};
72662306a36Sopenharmony_ci
72762306a36Sopenharmony_ci		iva_hd_target: target-module@5a000000 {
72862306a36Sopenharmony_ci			compatible = "ti,sysc-omap4", "ti,sysc";
72962306a36Sopenharmony_ci			reg = <0x5a05a400 0x4>,
73062306a36Sopenharmony_ci			      <0x5a05a410 0x4>;
73162306a36Sopenharmony_ci			reg-names = "rev", "sysc";
73262306a36Sopenharmony_ci			ti,sysc-midle = <SYSC_IDLE_FORCE>,
73362306a36Sopenharmony_ci					<SYSC_IDLE_NO>,
73462306a36Sopenharmony_ci					<SYSC_IDLE_SMART>;
73562306a36Sopenharmony_ci			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
73662306a36Sopenharmony_ci					<SYSC_IDLE_NO>,
73762306a36Sopenharmony_ci					<SYSC_IDLE_SMART>;
73862306a36Sopenharmony_ci			power-domains = <&prm_ivahd>;
73962306a36Sopenharmony_ci			resets = <&prm_ivahd 2>;
74062306a36Sopenharmony_ci			reset-names = "rstctrl";
74162306a36Sopenharmony_ci			clocks = <&ivahd_clkctrl OMAP4_IVA_CLKCTRL 0>;
74262306a36Sopenharmony_ci			clock-names = "fck";
74362306a36Sopenharmony_ci			#address-cells = <1>;
74462306a36Sopenharmony_ci			#size-cells = <1>;
74562306a36Sopenharmony_ci			ranges = <0x5a000000 0x5a000000 0x1000000>,
74662306a36Sopenharmony_ci				 <0x5b000000 0x5b000000 0x1000000>;
74762306a36Sopenharmony_ci
74862306a36Sopenharmony_ci			iva {
74962306a36Sopenharmony_ci				compatible = "ti,ivahd";
75062306a36Sopenharmony_ci			};
75162306a36Sopenharmony_ci		};
75262306a36Sopenharmony_ci	};
75362306a36Sopenharmony_ci};
75462306a36Sopenharmony_ci
75562306a36Sopenharmony_ci#include "omap4-l4.dtsi"
75662306a36Sopenharmony_ci#include "omap4-l4-abe.dtsi"
75762306a36Sopenharmony_ci#include "omap44xx-clocks.dtsi"
75862306a36Sopenharmony_ci
75962306a36Sopenharmony_ci&prm {
76062306a36Sopenharmony_ci	prm_mpu: prm@300 {
76162306a36Sopenharmony_ci		compatible = "ti,omap4-prm-inst", "ti,omap-prm-inst";
76262306a36Sopenharmony_ci		reg = <0x300 0x100>;
76362306a36Sopenharmony_ci		#power-domain-cells = <0>;
76462306a36Sopenharmony_ci	};
76562306a36Sopenharmony_ci
76662306a36Sopenharmony_ci	prm_tesla: prm@400 {
76762306a36Sopenharmony_ci		compatible = "ti,omap4-prm-inst", "ti,omap-prm-inst";
76862306a36Sopenharmony_ci		reg = <0x400 0x100>;
76962306a36Sopenharmony_ci		#reset-cells = <1>;
77062306a36Sopenharmony_ci		#power-domain-cells = <0>;
77162306a36Sopenharmony_ci	};
77262306a36Sopenharmony_ci
77362306a36Sopenharmony_ci	prm_abe: prm@500 {
77462306a36Sopenharmony_ci		compatible = "ti,omap4-prm-inst", "ti,omap-prm-inst";
77562306a36Sopenharmony_ci		reg = <0x500 0x100>;
77662306a36Sopenharmony_ci		#power-domain-cells = <0>;
77762306a36Sopenharmony_ci	};
77862306a36Sopenharmony_ci
77962306a36Sopenharmony_ci	prm_always_on_core: prm@600 {
78062306a36Sopenharmony_ci		compatible = "ti,omap4-prm-inst", "ti,omap-prm-inst";
78162306a36Sopenharmony_ci		reg = <0x600 0x100>;
78262306a36Sopenharmony_ci		#power-domain-cells = <0>;
78362306a36Sopenharmony_ci	};
78462306a36Sopenharmony_ci
78562306a36Sopenharmony_ci	prm_core: prm@700 {
78662306a36Sopenharmony_ci		compatible = "ti,omap4-prm-inst", "ti,omap-prm-inst";
78762306a36Sopenharmony_ci		reg = <0x700 0x100>;
78862306a36Sopenharmony_ci		#reset-cells = <1>;
78962306a36Sopenharmony_ci		#power-domain-cells = <0>;
79062306a36Sopenharmony_ci	};
79162306a36Sopenharmony_ci
79262306a36Sopenharmony_ci	prm_ivahd: prm@f00 {
79362306a36Sopenharmony_ci		compatible = "ti,omap4-prm-inst", "ti,omap-prm-inst";
79462306a36Sopenharmony_ci		reg = <0xf00 0x100>;
79562306a36Sopenharmony_ci		#reset-cells = <1>;
79662306a36Sopenharmony_ci		#power-domain-cells = <0>;
79762306a36Sopenharmony_ci	};
79862306a36Sopenharmony_ci
79962306a36Sopenharmony_ci	prm_cam: prm@1000 {
80062306a36Sopenharmony_ci		compatible = "ti,omap4-prm-inst", "ti,omap-prm-inst";
80162306a36Sopenharmony_ci		reg = <0x1000 0x100>;
80262306a36Sopenharmony_ci		#power-domain-cells = <0>;
80362306a36Sopenharmony_ci	};
80462306a36Sopenharmony_ci
80562306a36Sopenharmony_ci	prm_dss: prm@1100 {
80662306a36Sopenharmony_ci		compatible = "ti,omap4-prm-inst", "ti,omap-prm-inst";
80762306a36Sopenharmony_ci		reg = <0x1100 0x100>;
80862306a36Sopenharmony_ci		#power-domain-cells = <0>;
80962306a36Sopenharmony_ci	};
81062306a36Sopenharmony_ci
81162306a36Sopenharmony_ci	prm_gfx: prm@1200 {
81262306a36Sopenharmony_ci		compatible = "ti,omap4-prm-inst", "ti,omap-prm-inst";
81362306a36Sopenharmony_ci		reg = <0x1200 0x100>;
81462306a36Sopenharmony_ci		#power-domain-cells = <0>;
81562306a36Sopenharmony_ci	};
81662306a36Sopenharmony_ci
81762306a36Sopenharmony_ci	prm_l3init: prm@1300 {
81862306a36Sopenharmony_ci		compatible = "ti,omap4-prm-inst", "ti,omap-prm-inst";
81962306a36Sopenharmony_ci		reg = <0x1300 0x100>;
82062306a36Sopenharmony_ci		#power-domain-cells = <0>;
82162306a36Sopenharmony_ci	};
82262306a36Sopenharmony_ci
82362306a36Sopenharmony_ci	prm_l4per: prm@1400 {
82462306a36Sopenharmony_ci		compatible = "ti,omap4-prm-inst", "ti,omap-prm-inst";
82562306a36Sopenharmony_ci		reg = <0x1400 0x100>;
82662306a36Sopenharmony_ci		#power-domain-cells = <0>;
82762306a36Sopenharmony_ci	};
82862306a36Sopenharmony_ci
82962306a36Sopenharmony_ci	prm_cefuse: prm@1600 {
83062306a36Sopenharmony_ci		compatible = "ti,omap4-prm-inst", "ti,omap-prm-inst";
83162306a36Sopenharmony_ci		reg = <0x1600 0x100>;
83262306a36Sopenharmony_ci		#power-domain-cells = <0>;
83362306a36Sopenharmony_ci	};
83462306a36Sopenharmony_ci
83562306a36Sopenharmony_ci	prm_wkup: prm@1700 {
83662306a36Sopenharmony_ci		compatible = "ti,omap4-prm-inst", "ti,omap-prm-inst";
83762306a36Sopenharmony_ci		reg = <0x1700 0x100>;
83862306a36Sopenharmony_ci		#power-domain-cells = <0>;
83962306a36Sopenharmony_ci	};
84062306a36Sopenharmony_ci
84162306a36Sopenharmony_ci	prm_emu: prm@1900 {
84262306a36Sopenharmony_ci		compatible = "ti,omap4-prm-inst", "ti,omap-prm-inst";
84362306a36Sopenharmony_ci		reg = <0x1900 0x100>;
84462306a36Sopenharmony_ci		#power-domain-cells = <0>;
84562306a36Sopenharmony_ci	};
84662306a36Sopenharmony_ci
84762306a36Sopenharmony_ci	prm_dss: prm@1100 {
84862306a36Sopenharmony_ci		compatible = "ti,omap4-prm-inst", "ti,omap-prm-inst";
84962306a36Sopenharmony_ci		reg = <0x1100 0x40>;
85062306a36Sopenharmony_ci		#power-domain-cells = <0>;
85162306a36Sopenharmony_ci	};
85262306a36Sopenharmony_ci
85362306a36Sopenharmony_ci	prm_device: prm@1b00 {
85462306a36Sopenharmony_ci		compatible = "ti,omap4-prm-inst", "ti,omap-prm-inst";
85562306a36Sopenharmony_ci		reg = <0x1b00 0x40>;
85662306a36Sopenharmony_ci		#reset-cells = <1>;
85762306a36Sopenharmony_ci	};
85862306a36Sopenharmony_ci};
85962306a36Sopenharmony_ci
86062306a36Sopenharmony_ci/* Preferred always-on timer for clockevent */
86162306a36Sopenharmony_ci&timer1_target {
86262306a36Sopenharmony_ci	ti,no-reset-on-init;
86362306a36Sopenharmony_ci	ti,no-idle;
86462306a36Sopenharmony_ci	timer@0 {
86562306a36Sopenharmony_ci		assigned-clocks = <&l4_wkup_clkctrl OMAP4_TIMER1_CLKCTRL 24>;
86662306a36Sopenharmony_ci		assigned-clock-parents = <&sys_32k_ck>;
86762306a36Sopenharmony_ci	};
86862306a36Sopenharmony_ci};
869