diff options
Diffstat (limited to 'arch/arm/boot/dts/omap3_h1.dts')
| -rw-r--r-- | arch/arm/boot/dts/omap3_h1.dts | 59 |
1 files changed, 47 insertions, 12 deletions
diff --git a/arch/arm/boot/dts/omap3_h1.dts b/arch/arm/boot/dts/omap3_h1.dts index e2244dc83d0..235a7cbe377 100644 --- a/arch/arm/boot/dts/omap3_h1.dts +++ b/arch/arm/boot/dts/omap3_h1.dts @@ -55,14 +55,37 @@ }; }; + /* Test code for the ACC input pin. Should be disabled when + * we're using the accelerometer. + */ + + gpio_buttons: gpio_buttons@0 { + compatible = "gpio-keys"; + #address-cells = <1>; + #size-cells = <0>; + /* + interrupt-parent = <&gpio1>; + interrupts = <31>; + wakeup-source; + */ + + power { + label = "mattis_button"; + linux,code = <116>; + gpios = <&gpio1 31 1>; + gpio-key,wakeup; + }; + }; + + pad-wkup { /* on omap, the irqs are calculated as follows: * for the 96 intc IRQs * irq = 16 + irq_offset (from TRM sec 12.3.2) - * for a gpio IRQ (banks numbered 1 to 6 - * irq = 16 + 96 + (gpio_bank - 1) * 32 + * for a gpio IRQ (banks numbered 1 to 6) + * irq = 16 + 96 + (gpio_bank - 1) * 32 + GPIO no. */ - compatible = "ti,pad-wkup"; + compatible = "ti,pad-wkup"; /* Map the pad offset (off) to an interrupt (IRQ). */ /* if handle is 1, an irq will be generated based on */ @@ -81,6 +104,7 @@ <0x1b0 23 1>; /* sys_nirq */ }; + /* gpio-keys { compatible = "gpio-keys"; @@ -90,7 +114,7 @@ gpio-key,wakeup; linux,code = <169>; }; - }; + };*/ }; &vc { @@ -160,6 +184,7 @@ 0x5ba 0x004 /* ETK_D7, MODE4 | OUTPUT */ 0x1b0 0xc100 /* SYS_NIRQ, MODE0 | INPUT | OFFWAKEUP */ + 0x0dc 0x004 /* CAM_HS, MODE4 | OUTPUT */ /* USB */ @@ -185,8 +210,10 @@ 0x0da 0x1204 /* DSS_DATA23, (IDIS | PI | M4 ) */ /* Accelerometer interrupt */ + /* I've tried configuring this both in the wkup pinmux (below) and here, + but this location makes it not function as an interrupt... ??? */ /* 0x9f6 0x4104 */ /* JTAG_EMU1, OMAP_MUX_MODE4 | OMAP_PIN_INPUT | - OMAP_PIN_OFF_WAKEUPENABLE */ + OMAP_PIN_OFF_WAKEUPENABLE */ >; }; @@ -225,7 +252,7 @@ pinctrl-names = "default"; pinctrl-0 = <&wkup_pins>; - wkup_pins: pinmux_wakeup_pins { + wkup_pins: pinmux_wakeup_pins { pinctrl-single,pins = < 0x006 0x008 /* SYS_CLKREQ, MODE0 | PULLDOWN */ 0x018 0x000 /* SYS_OFF_MODE, MODE0 */ @@ -252,7 +279,7 @@ }; }; -#include "tps65910.dtsi" +/include/ "tps65910.dtsi" &tps { interrupts = <7>; /* SYS_NIRQ */ @@ -316,17 +343,20 @@ /* not used, I think */ vdd3_reg: regulator@4 { status = "disabled"; + ti,regulator-ext-sleep-control = <8>; }; + /* This is the accelerometer. We always want it on. */ vdig1_reg: regulator@5 { regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>; - regulator-always-on; + regulator-always-on; }; /* vdig2_reg: regulator@6 {}; unused */ vdig2_reg: regulator@6 { status = "disabled"; + ti,regulator-ext-sleep-control = <8>; }; /* Nobody is explicitly using this rail, but it seems like it goes to @@ -334,17 +364,19 @@ */ vpll_reg: regulator@7 { regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <1800000>; - regulator-always-on; + regulator-max-microvolt = <1800000>; + ti,regulator-ext-sleep-control = <8>; }; /* vdac_reg: regulator@8 {}; unused */ vdac_reg: regulator@8 { status = "disabled"; + ti,regulator-ext-sleep-control = <8>; }; vaux1_reg: regulator@9 { /* not used, 2.85V by default */ status = "disabled"; + ti,regulator-ext-sleep-control = <8>; }; vaux2_reg: regulator@10 { @@ -352,12 +384,14 @@ regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; regulator-always-on; + ti,regulator-ext-sleep-control = <8>; }; vaux33_reg: regulator@11 { regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; regulator-always-on; + ti,regulator-ext-sleep-control = <8>; }; /* This one goes to both SPI (for DSS) and touch. How can I @@ -367,6 +401,7 @@ regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; regulator-always-on; + ti,regulator-ext-sleep-control = <8>; }; }; }; @@ -375,8 +410,8 @@ /* leave gpio bank interface clocks on during suspend * to avoid race condition in gpio_irq_handler */ &gpio1 { - ti,no_idle_on_suspend; -}; + ti,no_idle_on_suspend; + }; &gpio2 { ti,no_idle_on_suspend; |