summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormattis fjallstrom <mattis@acm.org>2015-07-06 14:15:55 -0700
committermattis fjallstrom <mattis@acm.org>2015-07-06 14:15:55 -0700
commite93fc20a5d45e7a0aed4cd81de52bb8258746ab7 (patch)
treebd08ad8e18c41ceab611b42864ff14f3193ee330
parentd8dc784e0c10a3246d21ff4d17114f88342e09ce (diff)
downloadolio-linux-3.10-e93fc20a5d45e7a0aed4cd81de52bb8258746ab7.tar.xz
olio-linux-3.10-e93fc20a5d45e7a0aed4cd81de52bb8258746ab7.zip
Fixing clkreq polarity, adding more PV specific pins to device tree file, leaving bluetooth regulator always on.
Change-Id: I343b8e89601d25f7593313b6d9c6adb47180c14a
-rw-r--r--arch/arm/boot/dts/omap3_h1.dts19
-rw-r--r--arch/arm/mach-omap2/board-omap3h1.c10
2 files changed, 26 insertions, 3 deletions
diff --git a/arch/arm/boot/dts/omap3_h1.dts b/arch/arm/boot/dts/omap3_h1.dts
index 23945098e65..0fa2fbe72cc 100644
--- a/arch/arm/boot/dts/omap3_h1.dts
+++ b/arch/arm/boot/dts/omap3_h1.dts
@@ -134,6 +134,7 @@
pinctrl-names = "default";
pinctrl-0 = <
&board_pins
+ &dev_pins
>;
board_pins: pinmux_board_pins {
@@ -172,7 +173,7 @@
/* touch reset */
0x0f2 0x11c /* CAM_D6, MODE4 | INPUT_PULLUP */
- 0x5b2 0x004 /* ETK_D3, MODE4 | OUTPUT */
+ /* 0x5b2 0x004 */ /* ETK_D3, MODE4 | OUTPUT */
0x1b0 0xc100 /* SYS_NIRQ, MODE0 | INPUT | OFFWAKEUP */
0x0dc 0x004 /* CAM_HS, MODE4 | OUTPUT */
@@ -215,6 +216,15 @@
>;
};
+ dev_pins: pinmux_pv_pins {
+ pinctrl-single,pins = <
+ 0x5b2 0x004 /* USB control, ETK_D3, MODE4 | OUTPUT */
+ /* 0x1a2 0x104 */ /* ALS interrupt, input, GPIO */
+ 0x086 0x004 /* DRV2605 vibrator, output, GPIO */
+ /* 0x938 0x104 */ /* Battery state, input, GPIO */
+ >;
+ }
+
i2c1_pins: pinmux_i2c1_pins {
pinctrl-single,pins = <
0x18a 0x118 /* I2C1_SCL, MODE0 | INPUT_PULLUP */
@@ -367,18 +377,21 @@
};
vaux2_reg: regulator@10 {
- regulator-name = "vaux2";
+ regulator-name = "vaux2";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
ti,regulator-ext-sleep-control = <8>;
};
+ /* This is Bluetooth - never turn it off */
+
vaux33_reg: regulator@11 {
+ regulator-name = "vaux33";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
- ti,regulator-ext-sleep-control = <8>;
+ /* ti,regulator-ext-sleep-control = <8>; */
};
/* This one goes to both SPI (for DSS) and touch. How can I
diff --git a/arch/arm/mach-omap2/board-omap3h1.c b/arch/arm/mach-omap2/board-omap3h1.c
index 7a59a3b4d18..0d16b8967f9 100644
--- a/arch/arm/mach-omap2/board-omap3h1.c
+++ b/arch/arm/mach-omap2/board-omap3h1.c
@@ -67,6 +67,8 @@
#include "board-flash.h"
#include "common-board-devices.h"
#include "board-omap3h1.h"
+#include "prm2xxx_3xxx.h"
+#include "prm-regbits-34xx.h"
#include "sdram-micron-mt29c8g96m-48.h"
@@ -424,6 +426,14 @@ static void __init omap3_h1_init(void)
of_platform_populate(NULL, omap_dt_match_table, NULL, NULL);
+#ifdef CONFIG_MACH_OMAP3_H1_PV
+ /* The PV units need reversed polarity for the sysclkreq pin. */
+
+ omap2_prm_rmw_mod_reg_bits(OMAP3430_CLKREQ_POL_MASK,
+ 0, OMAP3430_GR_MOD,
+ OMAP3_PRM_POLCTRL_OFFSET);
+#endif
+
board_nand_init(omap3h1_nand_partitions,
ARRAY_SIZE(omap3h1_nand_partitions), NAND_CS,
NAND_BUSWIDTH_16, NULL);