summaryrefslogtreecommitdiff
path: root/arch/arm/boot/dts/omap3_h1.dts
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/boot/dts/omap3_h1.dts')
-rw-r--r--arch/arm/boot/dts/omap3_h1.dts236
1 files changed, 174 insertions, 62 deletions
diff --git a/arch/arm/boot/dts/omap3_h1.dts b/arch/arm/boot/dts/omap3_h1.dts
index c0551e82502..089b32a375f 100644
--- a/arch/arm/boot/dts/omap3_h1.dts
+++ b/arch/arm/boot/dts/omap3_h1.dts
@@ -26,12 +26,35 @@
800000 1275000
/* 1000000 1337500 */
>;
+ cpu0-supply = <&omap_tps65910>;
/* OPP tolerance in percentage */
voltage-tolerance = <0>;
reset-voltage = <1275000>;
};
};
+ vbat: fixedregulator@0 {
+ compatible = "regulator-fixed";
+ regulator-name = "vbat";
+ regulator-min-microvolt = <3700000>;
+ regulator-max-microvolt = <3700000>;
+ regulator-boot-on;
+ };
+
+ omap_pimic {
+ omap_tps65910: omap_vdd1 {
+ compatible = "ti,omap-tps65910-vdd1";
+ ti,boot-voltage-micro-volts = <1275000>;
+ ti,vp = <&vp_mpu>;
+ };
+
+ omap_tps65910_vdd2: omap_vdd2 {
+ compatible = "ti,omap-tps65910-vdd2";
+ ti,boot-voltage-micro-volts = <1200000>;
+ ti,vp = <&vp_core>;
+ };
+ };
+
pad-wkup {
/* on omap, the irqs are calculated as follows:
* for the 96 intc IRQs
@@ -54,7 +77,8 @@
/* off IRQ handle */
ti,pad_irq = <0x16e 90 1>, /* uart3 - serial rx */
<0x9f6 143 1>, /* mpu6515 irq pin */
- <0x9f4 123 1>; /* BT host wake */
+ <0x9f4 123 1>, /* BT host wake */
+ <0x1b0 23 1>; /* sys_nirq */
};
};
@@ -117,14 +141,14 @@
0x1a0 0x000 /* MCSPI1_CS1, MODE0 | OUTPUT */
/* CKE pin for memory */
- 0x232 0x000 /* SDRC_CKE0, MODE0 | OUTPUT */
- 0x234 0x000 /* SDRC_CKE1, MODE0 | OUTPUT */
+ 0x232 0x000 /* SDRC_CKE0, MODE0 | OUTPUT */
+ 0x234 0x000 /* SDRC_CKE1, MODE0 | OUTPUT */
/* touch reset */
0x0f2 0x11c /* CAM_D6, MODE4 | INPUT_PULLUP */
0x5ba 0x004 /* ETK_D7, MODE4 | OUTPUT */
- 0x1b0 0x100 /* SYS_NIRQ, MODE0 | INPUT */
+ 0x1b0 0x4100 /* SYS_NIRQ, MODE0 | INPUT | OFFWAKEUP */
0x0dc 0x004 /* CAM_HS, MODE4 | OUTPUT */
/* USB */
@@ -155,6 +179,20 @@
>;
};
+ i2c1_pins: pinmux_i2c1_pins {
+ pinctrl-single,pins = <
+ 0x18a 0x118 /* I2C1_SCL, MODE0 | INPUT_PULLUP */
+ 0x18c 0x118 /* I2C1_SCA, MODE0 | INPUT_PULLUP */
+ >;
+ };
+
+ i2c2_pins: pinmux_i2c2_pins {
+ pinctrl-single,pins = <
+ 0x18e 0x118 /* I2C2_SCL, MODE0 | INPUT_PULLUP */
+ 0x190 0x118 /* I2C2_SDA, MODE0 | INPUT_PULLUP */
+ >;
+ };
+
uart1_pins: pinmux_uart1_pins {
pinctrl-single,pins = <
/* uart1 */
@@ -170,8 +208,6 @@
0x170 0x000 /* UART3_TX, MODE0 | OUTPUT */
>;
};
-
-
};
&omap3_pmx_wkup { /* pinmux@0x48002a00 */
@@ -193,6 +229,138 @@
};
};
+&i2c1 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c1_pins>;
+
+ status = "okay";
+ clock-frequency = <400000>;
+
+ tps: tps@2d {
+ reg = <0x2d>;
+ };
+};
+
+#include "tps65910.dtsi"
+
+&tps {
+ interrupts = <7>; /* SYS_NIRQ */
+ interrupt-parent = <&intc>;
+
+ #interrupt-cells = <2>;
+ interrupt-controller;
+
+ ti,en-ck32k-xtal;
+ /* set SR_CTL_I2C_SEL - access to smartreflex registers by control i2c */
+ ti,system-power-controller;
+
+ vcc1-supply = <&vbat>;
+ vcc2-supply = <&vbat>;
+ vcc3-supply = <&vbat>;
+ vcc4-supply = <&vbat>;
+ vcc5-supply = <&vbat>;
+ vcc6-supply = <&vbat>;
+ vcc7-supply = <&vbat>;
+ vccio-supply = <&vbat>;
+
+ regulators {
+ vrtc_reg: regulator@0 {
+ regulator-always-on;
+ };
+
+ /* DSS is on this one */
+ vio_reg: regulator@1 {
+ regulator-name = "vdds_dsi";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ };
+
+ vdd1_reg: regulator@2 {
+ /* VDD_MPU voltage limits 0.95V - 1.26V with +/-4% tolerance */
+ /*
+ regulator-boot-on;
+ regulator-always-on;
+ */
+ /* external sleep control by means of SYS_OFF_MODE signal */
+ regulator-name = "vdd_mpu_iva";
+ regulator-min-microvolt = <900000>;
+ regulator-max-microvolt = <1350000>;
+ ti,regulator-ext-sleep-control = <8>;
+ };
+
+ vdd2_reg: regulator@3 {
+ /* VDD_CORE voltage limits 0.95V - 1.1V with +/-4% tolerance */
+ /*
+ regulator-boot-on;
+ regulator-always-on;
+ */
+ /* external sleep control by means of SYS_OFF_MODE signal */
+ regulator-name = "vdd_core";
+ regulator-min-microvolt = <900000>;
+ regulator-max-microvolt = <1200000>;
+ ti,regulator-ext-sleep-control = <8>;
+ };
+
+ /* not used, I think */
+ vdd3_reg: regulator@4 {
+ status = "disabled";
+ };
+
+ vdig1_reg: regulator@5 {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ };
+
+ /* vdig2_reg: regulator@6 {}; unused */
+ vdig2_reg: regulator@6 {
+ status = "disabled";
+ };
+
+ /* Nobody is explicitly using this rail, but it seems like it goes to
+ * VDDA_DPLL_PER on the chip. So we need it.
+ */
+ vpll_reg: regulator@7 {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ };
+
+ /* vdac_reg: regulator@8 {}; unused */
+ vdac_reg: regulator@8 {
+ status = "disabled";
+ };
+
+ vaux1_reg: regulator@9 { /* not used, 2.85V by default */
+ status = "disabled";
+ };
+
+ vaux2_reg: regulator@10 {
+ regulator-name = "vaux2";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ };
+
+ vaux33_reg: regulator@11 {
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ };
+
+ /* This one goes to both SPI (for DSS) and touch. How can I
+ * specify two consumers in DT? (vdd for dss, avdd for touch).
+ */
+ vmmc_reg: regulator@12 {
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ };
+ };
+};
+
+
/* leave gpio bank interface clocks on during suspend
* to avoid race condition in gpio_irq_handler */
&gpio1 {
@@ -233,62 +401,6 @@
};
-#if 0 /* Not currently used */
-&i2c1 {
- /* clock-frequency = <400000>; */
- /* PMIC ONLY */
-};
-
-
-/* I2C-2 has everything other than PMIC. */
-
-&i2c2 {
- clock-frequency = <400000>;
-
- mxt224@4a { /* Taken from Minnow, needs to be updated */
- compatible = "atmel,maxtouch"; /* OLIO */
- reg = <0x4a>; /* OLIO */
- interrupt-parent = <&gpio4>;
- interrupts = <3 0>; /* gpio-99 32 * 3 + 3 */
- wakeup-source;
- atmel,cfg-name = ""; /* needs setting, OLIO */
- atmel,reset_gpio = <>; /* needs setting, OLIO */
-
- /* below is from minnow */
-
- /* gpios = <&gpio4 3 0>, /\* IRQ gpio-099 *\/ */
- /* <&gpio6 4 0>; /\* RESET gpio-164*\/ */
-
- /* pinctrl-names = "pullup", "pulldown"; */
- /* pinctrl-0 = <&atmxt_int_pullup>; */
- /* pinctrl-1 = <&atmxt_int_pulldown>; */
- /* support-snowflake = <1>; */
- };
-
- mpu6515@68 {
- };
-
- /* This driver does not yet support device tree
- lm3530-led@38 {
- };*/
-
- /* This driver does not yet support device tree
- cm3391@10 {
- };*/
-
-
-
-};
-
-&i2c3 {
- clock-frequency = <400000>;
-
- /* This driver does not yet support device tree
- bq274xx@55 {
- }; */
-};
-
-#endif
&uart1 {
pinctrl-0 = <&uart1_pins>;