aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/arm/boot/dts/am335x-evmsk.dts4
-rw-r--r--arch/arm/boot/dts/omap3-cm-t3530.dts36
-rw-r--r--arch/arm/boot/dts/omap3.dtsi15
-rw-r--r--arch/arm/boot/dts/omap4.dtsi15
-rw-r--r--arch/arm/boot/dts/omap5.dtsi15
-rw-r--r--arch/arm/mach-omap2/clockdomains3xxx_data.c2
-rw-r--r--arch/arm/mach-omap2/devices.c3
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_3xxx_data.c12
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_54xx_data.c83
-rw-r--r--arch/arm/mach-omap2/pdata-quirks.c24
-rw-r--r--arch/arm/plat-omap/Kconfig3
11 files changed, 197 insertions, 15 deletions
diff --git a/arch/arm/boot/dts/am335x-evmsk.dts b/arch/arm/boot/dts/am335x-evmsk.dts
index b50e9efc7741..fd8bd3a254fe 100644
--- a/arch/arm/boot/dts/am335x-evmsk.dts
+++ b/arch/arm/boot/dts/am335x-evmsk.dts
@@ -378,6 +378,10 @@
378 status = "okay"; 378 status = "okay";
379 dr_mode = "host"; 379 dr_mode = "host";
380 }; 380 };
381
382 dma-controller@07402000 {
383 status = "okay";
384 };
381}; 385};
382 386
383&epwmss2 { 387&epwmss2 {
diff --git a/arch/arm/boot/dts/omap3-cm-t3530.dts b/arch/arm/boot/dts/omap3-cm-t3530.dts
index 9faf1cd1dcaa..d1458496520e 100644
--- a/arch/arm/boot/dts/omap3-cm-t3530.dts
+++ b/arch/arm/boot/dts/omap3-cm-t3530.dts
@@ -9,4 +9,40 @@
9/ { 9/ {
10 model = "CompuLab CM-T3530"; 10 model = "CompuLab CM-T3530";
11 compatible = "compulab,omap3-cm-t3530", "ti,omap34xx", "ti,omap3"; 11 compatible = "compulab,omap3-cm-t3530", "ti,omap34xx", "ti,omap3";
12
13 /* Regulator to trigger the reset signal of the Wifi module */
14 mmc2_sdio_reset: regulator-mmc2-sdio-reset {
15 compatible = "regulator-fixed";
16 regulator-name = "regulator-mmc2-sdio-reset";
17 regulator-min-microvolt = <3300000>;
18 regulator-max-microvolt = <3300000>;
19 gpio = <&twl_gpio 2 GPIO_ACTIVE_HIGH>;
20 enable-active-high;
21 };
22};
23
24&omap3_pmx_core {
25 mmc2_pins: pinmux_mmc2_pins {
26 pinctrl-single,pins = <
27 OMAP3_CORE1_IOPAD(0x2158, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_clk.sdmmc2_clk */
28 OMAP3_CORE1_IOPAD(0x215a, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_cmd.sdmmc2_cmd */
29 OMAP3_CORE1_IOPAD(0x215c, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_dat0.sdmmc2_dat0 */
30 OMAP3_CORE1_IOPAD(0x215e, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_dat1.sdmmc2_dat1 */
31 OMAP3_CORE1_IOPAD(0x2160, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_dat2.sdmmc2_dat2 */
32 OMAP3_CORE1_IOPAD(0x2162, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_dat3.sdmmc2_dat3 */
33 OMAP3_CORE1_IOPAD(0x2164, PIN_OUTPUT | MUX_MODE1) /* sdmmc2_dat4.sdmmc2_dir_dat0 */
34 OMAP3_CORE1_IOPAD(0x2166, PIN_OUTPUT | MUX_MODE1) /* sdmmc2_dat5.sdmmc2_dir_dat1 */
35 OMAP3_CORE1_IOPAD(0x2168, PIN_OUTPUT | MUX_MODE1) /* sdmmc2_dat6.sdmmc2_dir_cmd */
36 OMAP3_CORE1_IOPAD(0x216a, PIN_INPUT | MUX_MODE1) /* sdmmc2_dat7.sdmmc2_clkin */
37 >;
38 };
39};
40
41&mmc2 {
42 pinctrl-names = "default";
43 pinctrl-0 = <&mmc2_pins>;
44 vmmc-supply = <&mmc2_sdio_reset>;
45 non-removable;
46 bus-width = <4>;
47 cap-power-off-card;
12}; 48};
diff --git a/arch/arm/boot/dts/omap3.dtsi b/arch/arm/boot/dts/omap3.dtsi
index b91117a38100..a089e6e00457 100644
--- a/arch/arm/boot/dts/omap3.dtsi
+++ b/arch/arm/boot/dts/omap3.dtsi
@@ -416,10 +416,19 @@
416 }; 416 };
417 417
418 mmu_isp: mmu@480bd400 { 418 mmu_isp: mmu@480bd400 {
419 compatible = "ti,omap3-mmu-isp"; 419 compatible = "ti,omap2-iommu";
420 ti,hwmods = "mmu_isp";
421 reg = <0x480bd400 0x80>; 420 reg = <0x480bd400 0x80>;
422 interrupts = <8>; 421 interrupts = <24>;
422 ti,hwmods = "mmu_isp";
423 ti,#tlb-entries = <8>;
424 };
425
426 mmu_iva: mmu@5d000000 {
427 compatible = "ti,omap2-iommu";
428 reg = <0x5d000000 0x80>;
429 interrupts = <28>;
430 ti,hwmods = "mmu_iva";
431 status = "disabled";
423 }; 432 };
424 433
425 wdt2: wdt@48314000 { 434 wdt2: wdt@48314000 {
diff --git a/arch/arm/boot/dts/omap4.dtsi b/arch/arm/boot/dts/omap4.dtsi
index 4e15be59b839..3dfec86c1dc9 100644
--- a/arch/arm/boot/dts/omap4.dtsi
+++ b/arch/arm/boot/dts/omap4.dtsi
@@ -467,6 +467,21 @@
467 dma-names = "tx", "rx"; 467 dma-names = "tx", "rx";
468 }; 468 };
469 469
470 mmu_dsp: mmu@4a066000 {
471 compatible = "ti,omap4-iommu";
472 reg = <0x4a066000 0x100>;
473 interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>;
474 ti,hwmods = "mmu_dsp";
475 };
476
477 mmu_ipu: mmu@55082000 {
478 compatible = "ti,omap4-iommu";
479 reg = <0x55082000 0x100>;
480 interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
481 ti,hwmods = "mmu_ipu";
482 ti,iommu-bus-err-back;
483 };
484
470 wdt2: wdt@4a314000 { 485 wdt2: wdt@4a314000 {
471 compatible = "ti,omap4-wdt", "ti,omap3-wdt"; 486 compatible = "ti,omap4-wdt", "ti,omap3-wdt";
472 reg = <0x4a314000 0x80>; 487 reg = <0x4a314000 0x80>;
diff --git a/arch/arm/boot/dts/omap5.dtsi b/arch/arm/boot/dts/omap5.dtsi
index 859a800a77fc..757f0b9343c2 100644
--- a/arch/arm/boot/dts/omap5.dtsi
+++ b/arch/arm/boot/dts/omap5.dtsi
@@ -520,6 +520,21 @@
520 dma-names = "tx", "rx"; 520 dma-names = "tx", "rx";
521 }; 521 };
522 522
523 mmu_dsp: mmu@4a066000 {
524 compatible = "ti,omap4-iommu";
525 reg = <0x4a066000 0x100>;
526 interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>;
527 ti,hwmods = "mmu_dsp";
528 };
529
530 mmu_ipu: mmu@55082000 {
531 compatible = "ti,omap4-iommu";
532 reg = <0x55082000 0x100>;
533 interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
534 ti,hwmods = "mmu_ipu";
535 ti,iommu-bus-err-back;
536 };
537
523 keypad: keypad@4ae1c000 { 538 keypad: keypad@4ae1c000 {
524 compatible = "ti,omap4-keypad"; 539 compatible = "ti,omap4-keypad";
525 reg = <0x4ae1c000 0x400>; 540 reg = <0x4ae1c000 0x400>;
diff --git a/arch/arm/mach-omap2/clockdomains3xxx_data.c b/arch/arm/mach-omap2/clockdomains3xxx_data.c
index e6b91e552d3d..f03dc97921ad 100644
--- a/arch/arm/mach-omap2/clockdomains3xxx_data.c
+++ b/arch/arm/mach-omap2/clockdomains3xxx_data.c
@@ -247,7 +247,7 @@ static struct clockdomain neon_clkdm = {
247static struct clockdomain iva2_clkdm = { 247static struct clockdomain iva2_clkdm = {
248 .name = "iva2_clkdm", 248 .name = "iva2_clkdm",
249 .pwrdm = { .name = "iva2_pwrdm" }, 249 .pwrdm = { .name = "iva2_pwrdm" },
250 .flags = CLKDM_CAN_HWSUP_SWSUP, 250 .flags = CLKDM_CAN_SWSUP,
251 .dep_bit = OMAP3430_PM_WKDEP_MPU_EN_IVA2_SHIFT, 251 .dep_bit = OMAP3430_PM_WKDEP_MPU_EN_IVA2_SHIFT,
252 .wkdep_srcs = iva2_wkdeps, 252 .wkdep_srcs = iva2_wkdeps,
253 .clktrctrl_mask = OMAP3430_CLKTRCTRL_IVA2_MASK, 253 .clktrctrl_mask = OMAP3430_CLKTRCTRL_IVA2_MASK,
diff --git a/arch/arm/mach-omap2/devices.c b/arch/arm/mach-omap2/devices.c
index 0dd6398bade4..e58609b312c7 100644
--- a/arch/arm/mach-omap2/devices.c
+++ b/arch/arm/mach-omap2/devices.c
@@ -229,6 +229,9 @@ static struct omap_iommu_arch_data omap3_isp_iommu = {
229 229
230int omap3_init_camera(struct isp_platform_data *pdata) 230int omap3_init_camera(struct isp_platform_data *pdata)
231{ 231{
232 if (of_have_populated_dt())
233 omap3_isp_iommu.name = "480bd400.mmu";
234
232 omap3isp_device.dev.platform_data = pdata; 235 omap3isp_device.dev.platform_data = pdata;
233 omap3isp_device.dev.archdata.iommu = &omap3_isp_iommu; 236 omap3isp_device.dev.archdata.iommu = &omap3_isp_iommu;
234 237
diff --git a/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c b/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
index 4c3b1e6df508..9c7e23aa0e7f 100644
--- a/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
@@ -3029,8 +3029,6 @@ static struct omap_hwmod omap3xxx_mmu_isp_hwmod = {
3029 .flags = HWMOD_NO_IDLEST, 3029 .flags = HWMOD_NO_IDLEST,
3030}; 3030};
3031 3031
3032#ifdef CONFIG_OM