2 * Copyright 2012 ST-Ericsson AB
4 * The code contained herein is licensed under the GNU General Public
5 * License. You may obtain a copy of the GNU General Public License
6 * Version 2 or later at the following locations:
8 * http://www.opensource.org/licenses/gpl-license.html
9 * http://www.gnu.org/copyleft/gpl.html
12 #include "ste-dbx5x0.dtsi"
13 #include "ste-href.dtsi"
16 model = "ST-Ericsson HREF (v60+) platform with Device Tree";
17 compatible = "st-ericsson,hrefv60+", "st-ericsson,u8500";
20 // External Micro SD slot
22 cd-gpios = <&gpio2 31 0x4>; // 95
25 vmmci: regulator-gpio {
26 gpios = <&gpio0 5 0x4>;
27 enable-gpio = <&gpio5 9 0x4>;
32 * Set this up using hogs, as time goes by and as seems fit, these
33 * can be moved over to being controlled by respective device.
35 pinctrl-names = "default";
36 pinctrl-0 = <&ipgpio_hrefv60_mode>,
37 <&accel_hrefv60_mode>,
38 <&magneto_hrefv60_mode>,
42 <&force_hrefv60_mode>,
43 <&dipro_hrefv60_mode>,
44 <&vaudio_hf_hrefv60_mode>,
47 <&touch_hrefv60_mode>;
50 /* SD card detect GPIO pin, extend default state */
51 sdi0_default_mode: sdi0_default {
52 default_hrefv60_cfg1 {
53 ste,pins = "GPIO95_E8";
54 ste,config = <&gpio_in_pu>;
60 * XENON Flashgun on image processor GPIO (controlled from image
61 * processor firmware), mux in these image processor GPIO lines 0
62 * (XENON_FLASH_ID), 1 (XENON_READY) and there is an assistant
63 * LED on IP GPIO 4 (XENON_EN2) on altfunction C, that need bias
64 * from GPIO21 so pull up 0, 1 and drive 4 and GPIO21 low as output.
66 ipgpio_hrefv60_mode: ipgpio_hrefv60 {
68 ste,function = "ipgpio";
69 ste,pins = "ipgpio0_c_1", "ipgpio1_c_1", "ipgpio4_c_1";
72 ste,pins = "GPIO6_AF6", "GPIO7_AG5";
73 ste,config = <&in_pu>;
76 ste,pins = "GPIO21_AB3";
77 ste,config = <&gpio_out_lo>;
80 ste,pins = "GPIO64_F3";
81 ste,config = <&out_lo>;
86 accel_hrefv60_mode: accel_hrefv60 {
87 /* Accelerometer interrupt lines 1 & 2 */
89 ste,pins = "GPIO82_C1", "GPIO83_D3";
90 ste,config = <&gpio_in_pu>;
95 magneto_hrefv60_mode: magneto_hrefv60 {
96 /* Magnetometer uses GPIO 31 and 32, pull these up/down respectively */
98 ste,pins = "GPIO31_V3";
99 ste,config = <&gpio_in_pu>;
102 ste,pins = "GPIO32_V2";
103 ste,config = <&gpio_in_pd>;
109 * Drive D19-D23 for the ETM PTM trace interface low,
110 * (presumably pins are unconnected therefore grounded here,
111 * the "other alt C1" setting enables these pins)
113 etm_hrefv60_mode: etm_hrefv60 {
121 ste,config = <&gpio_out_lo>;
126 nahj_hrefv60_mode: nahj_hrefv60 {
127 /* NAHJ CTRL on GPIO76 to low, CTRL_INV on GPIO216 to high */
129 ste,pins = "GPIO76_J2";
130 ste,config = <&gpio_out_lo>;
133 ste,pins = "GPIO216_AG12";
134 ste,config = <&gpio_out_hi>;
139 nfc_hrefv60_mode: nfc_hrefv60 {
140 /* NFC ENA and RESET to low, pulldown IRQ line */
143 "GPIO77_H1", /* NFC_ENA */
144 "GPIO142_C11"; /* NFC_RESET */
145 ste,config = <&gpio_out_lo>;
148 ste,pins = "GPIO144_B13"; /* NFC_IRQ */
149 ste,config = <&gpio_in_pd>;
154 force_hrefv60_mode: force_hrefv60 {
156 ste,pins = "GPIO91_B6"; /* FORCE_SENSING_INT */
157 ste,config = <&gpio_in_pu>;
161 "GPIO92_D6", /* FORCE_SENSING_RST */
162 "GPIO97_D9"; /* FORCE_SENSING_WU */
163 ste,config = <&gpio_out_lo>;
168 dipro_hrefv60_mode: dipro_hrefv60 {
170 ste,pins = "GPIO139_C9"; /* DIPRO_INT */
171 ste,config = <&gpio_in_pu>;
176 vaudio_hf_hrefv60_mode: vaudio_hf_hrefv60 {
177 /* Audio Amplifier HF enable GPIO */
179 ste,pins = "GPIO149_B14"; /* VAUDIO_HF_EN, enable MAX8968 */
180 ste,config = <&gpio_out_hi>;
185 gbf_hrefv60_mode: gbf_hrefv60 {
187 * GBF (GPS, Bluetooth, FM-radio) interface,
188 * pull low to reset state
191 ste,pins = "GPIO171_D23"; /* GBF_ENA_RESET */
192 ste,config = <&gpio_out_lo>;
197 hdtv_hrefv60_mode: hdtv_hrefv60 {
198 /* MSP : HDTV INTERFACE GPIO line */
200 ste,pins = "GPIO192_AJ27";
201 ste,config = <&gpio_in_pd>;
206 touch_hrefv60_mode: touch_hrefv60 {
208 * Touch screen uses GPIO 143 for RST1, GPIO 146 for RST2 and
209 * GPIO 67 for interrupts. Pull-up the IRQ line and drive both
213 ste,pins = "GPIO143_D12", "GPIO146_D13";
214 ste,config = <&gpio_out_lo>;
217 ste,pins = "GPIO67_G2";
218 ste,config = <&gpio_in_pu>;
223 lcd_hrefv60_mode: lcd_hrefv60 {
225 * Display Interface 1 uses GPIO 65 for RST (reset).
226 * Display Interface 2 uses GPIO 66 for RST (reset).
227 * Drive DISP1 reset high (not reset), driver DISP2 reset low (reset)
230 ste,pins ="GPIO65_F1";
231 ste,config = <&gpio_out_hi>;
234 ste,pins ="GPIO66_G3";
235 ste,config = <&gpio_out_lo>;