~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/arm/boot/dts/ti/omap/omap4-epson-embt2ws.dts

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 // SPDX-License-Identifier: GPL-2.0-only
  2 /*
  3  * Copyright (C) 2023 Andreas Kemnade
  4  */
  5 /dts-v1/;
  6 
  7 #include <dt-bindings/leds/common.h>
  8 #include <dt-bindings/input/input.h>
  9 #include "omap4460.dtsi"
 10 
 11 / {
 12         model = "Epson Moverio BT-200";
 13         compatible = "epson,embt2ws", "ti,omap4460", "ti,omap4";
 14 
 15         memory@80000000 {
 16                 device_type = "memory";
 17                 reg = <0x80000000 0x40000000>; /* 1024M */
 18         };
 19 
 20         backlight-left {
 21                 compatible = "pwm-backlight";
 22                 pwms = <&twl_pwm 1 7812500>;
 23                 power-supply = <&unknown_supply>;
 24         };
 25 
 26         backlight-right {
 27                 compatible = "pwm-backlight";
 28                 pwms = <&twl_pwm 0 7812500>;
 29                 power-supply = <&unknown_supply>;
 30         };
 31 
 32         chosen {
 33                 stdout-path = &uart3;
 34         };
 35 
 36         gpio-keys {
 37                 compatible = "gpio-keys";
 38                 pinctrl-names = "default";
 39                 pinctrl-0 = <&gpio_keys_pins>;
 40 
 41                 key-lock {
 42                         label = "Lock";
 43                         gpios = <&gpio2 3 GPIO_ACTIVE_LOW>;
 44                         linux,code = <SW_ROTATE_LOCK>; /* SW_TOUCHPAD_LOCK */
 45                         linux,input-type = <EV_SW>;
 46                 };
 47         };
 48 
 49         unknown_supply: unknown-supply {
 50                 compatible = "regulator-fixed";
 51                 regulator-name = "unknown";
 52         };
 53 
 54         wl12xx_pwrseq: wl12xx-pwrseq {
 55                 compatible = "mmc-pwrseq-simple";
 56                 clocks = <&twl 1>;
 57                 clock-names = "ext_clock";
 58         };
 59 
 60        /* regulator for wl12xx on sdio2 */
 61         wl12xx_vmmc: wl12xx-vmmc {
 62                 pinctrl-names = "default";
 63                 pinctrl-0 = <&wl12xx_gpio>;
 64                 compatible = "regulator-fixed";
 65                 regulator-name = "vwl1271";
 66                 regulator-min-microvolt = <1800000>;
 67                 regulator-max-microvolt = <1800000>;
 68                 gpio = <&gpio1 24 GPIO_ACTIVE_HIGH>;
 69                 startup-delay-us = <70000>;
 70                 enable-active-high;
 71         };
 72 };
 73 
 74 &i2c1 {
 75         pinctrl-names = "default";
 76         pinctrl-0 = <&i2c1_pins>;
 77 
 78         clock-frequency = <400000>;
 79 
 80         twl: pmic@48 {
 81                 compatible = "ti,twl6032";
 82                 reg = <0x48>;
 83                 #clock-cells = <1>;
 84                 /* IRQ# = 7 */
 85                 interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; /* IRQ_SYS_1N cascaded to gic */
 86                 interrupt-controller;
 87                 #interrupt-cells = <1>;
 88                 system-power-controller;
 89 
 90                 rtc {
 91                         compatible = "ti,twl4030-rtc";
 92                         interrupts = <11>;
 93                 };
 94 
 95                 ldo2: regulator-ldo2 {
 96                         compatible = "ti,twl6032-ldo2";
 97                         regulator-min-microvolt = <1000000>;
 98                         regulator-max-microvolt = <3000000>;
 99                 };
100 
101                 ldo4: regulator-ldo4 {
102                         compatible = "ti,twl6032-ldo4";
103                         regulator-min-microvolt = <1200000>;
104                         regulator-max-microvolt = <2800000>;
105                 };
106 
107                 ldo3: regulator-ldo3 {
108                         compatible = "ti,twl6032-ldo3";
109                         regulator-min-microvolt = <1000000>;
110                         regulator-max-microvolt = <3000000>;
111                 };
112 
113                 ldo5: regulator-ldo5 {
114                         compatible = "ti,twl6032-ldo5";
115                         regulator-min-microvolt = <1200000>;
116                         regulator-max-microvolt = <3000000>;
117                         ti,retain-on-reset;
118                 };
119 
120                 ldo1: regulator-ldo1 {
121                         compatible = "ti,twl6032-ldo1";
122                         regulator-min-microvolt = <1800000>;
123                         regulator-max-microvolt = <2500000>;
124                 };
125 
126                 ldo7: regulator-ldo7 {
127                         compatible = "ti,twl6032-ldo7";
128                         regulator-min-microvolt = <1200000>;
129                         regulator-max-microvolt = <2900000>;
130                 };
131 
132                 ldoln: regulator-ldoln {
133                         compatible = "ti,twl6032-ldoln";
134                         regulator-always-on;
135                 };
136 
137                 ldo6: regulator-ldo6 {
138                         compatible = "ti,twl6032-ldo6";
139                         regulator-always-on;
140                 };
141 
142                 ldousb: regulator-ldousb {
143                         compatible = "ti,twl6032-ldousb";
144                         regulator-always-on;
145                 };
146 
147                 vio: regulator-vio {
148                         compatible = "ti,twl6032-vio";
149                         regulator-always-on;
150                 };
151 
152                 twl_usb_comparator: usb-comparator {
153                         compatible = "ti,twl6030-usb";
154                         interrupts = <4>, <10>;
155                 };
156 
157                 twl_pwm: pwm {
158                         /* provides two PWMs (id 0, 1 for PWM1 and PWM2) */
159                         compatible = "ti,twl6030-pwm";
160                         #pwm-cells = <2>;
161                 };
162 
163                 twl_pwmled: pwmled {
164                         /* provides one PWM (id 0 for Charging indicator LED) */
165                         compatible = "ti,twl6030-pwmled";
166                         #pwm-cells = <2>;
167                 };
168 
169                 gpadc {
170                         compatible = "ti,twl6032-gpadc";
171                         interrupts = <3>;
172                         #io-channel-cells = <1>;
173                 };
174 
175         };
176 };
177 
178 #include "twl6030_omap4.dtsi"
179 
180 &twl_usb_comparator {
181         usb-supply = <&ldousb>;
182 };
183 
184 
185 &i2c2 {
186         pinctrl-names = "default";
187         pinctrl-0 = <&i2c2_pins>;
188 
189         clock-frequency = <200000>;
190 
191         /* at head/glasses */
192         mpu9150h: imu@68 {
193                 compatible = "invensense,mpu9150";
194                 reg = <0x68>;
195 
196                 pinctrl-names = "default";
197                 pinctrl-0 = <&mpu9150h_pins>;
198                 interrupt-parent = <&gpio2>;
199                 interrupt = <19 IRQ_TYPE_LEVEL_HIGH>;
200         };
201 };
202 
203 &i2c3 {
204         pinctrl-names = "default";
205         pinctrl-0 = <&i2c3_pins>;
206 
207         clock-frequency = <100000>;
208 
209         led-controller@66 {
210                 compatible = "rohm,bd2606mvv";
211                 reg = <0x66>;
212 
213                 #address-cells = <1>;
214                 #size-cells = <0>;
215 
216                 led@0 {
217                         reg = <0>;
218                         color = <LED_COLOR_ID_GREEN>;
219                         function = LED_FUNCTION_STATUS;
220                 };
221 
222                 led@2 {
223                         reg = <2>;
224                         color = <LED_COLOR_ID_BLUE>;
225                         function = LED_FUNCTION_STATUS;
226                 };
227 
228                 led@4 {
229                         reg = <4>;
230                         color = <LED_COLOR_ID_RED>;
231                         function = LED_FUNCTION_STATUS;
232                 };
233         };
234 };
235 
236 &i2c4 {
237         pinctrl-names = "default";
238         pinctrl-0 = <&i2c4_pins>;
239 
240         clock-frequency = <360000>;
241 
242         /* TODO: KXTI9 at 0xf */
243 
244         tlv320aic3x: codec@18 {
245                 compatible = "ti,tlv320aic3x";
246                 reg = <0x18>;
247                 pinctrl-names = "default";
248                 pinctrl-0 = <&tlv320aic3x_pins>;
249                 #sound-dai-cells = <0>;
250 
251                 reset-gpios = <&gpio2 23 GPIO_ACTIVE_LOW>;
252         };
253 
254         mpu9150: imu@68 {
255                 compatible = "invensense,mpu9150";
256                 reg = <0x68>;
257 
258                 pinctrl-names = "default";
259                 pinctrl-0 = <&mpu9150_pins>;
260                 interrupt-parent = <&gpio2>;
261                 interrupt = <7 IRQ_TYPE_LEVEL_HIGH>;
262                 invensense,level-shifter;
263         };
264 };
265 
266 &keypad {
267         pinctrl-names = "default";
268         pinctrl-0 = <&keypad_pins>;
269         keypad,num-rows = <2>;
270         keypad,num-columns = <3>;
271         linux,keymap = <MATRIX_KEY(0, 0, KEY_MENU)
272                         MATRIX_KEY(0, 1, KEY_HOME)
273                         MATRIX_KEY(0, 2, KEY_BACK)
274                         MATRIX_KEY(1, 0, KEY_ESC)
275                         MATRIX_KEY(1, 1, KEY_VOLUMEDOWN)
276                         MATRIX_KEY(1, 2, KEY_VOLUMEUP)>;
277         linux,input-no-autorepeat;
278 };
279 
280 &mcbsp2 {
281         #sound-dai-cells = <0>;
282         pinctrl-names = "default";
283         pinctrl-0 = <&mcbsp2_pins>;
284         status = "okay";
285 };
286 
287 
288 &mmc1 {
289         /* sdcard */
290         vmmc-supply = <&ldo5>;
291         broken-cd;
292         bus-width = <4>;
293 };
294 
295 &mmc2 {
296         /* emmc */
297         vmmc-supply = <&ldo2>;
298         bus-width = <8>;
299 };
300 
301 &mmc3 {
302         pinctrl-names = "default";
303         pinctrl-0 = <&wl12xx_pins>;
304         vmmc-supply = <&wl12xx_vmmc>;
305         mmc-pwrseq = <&wl12xx_pwrseq>;
306         interrupts-extended = <&wakeupgen GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH
307                                &omap4_pmx_core 0x12e>;
308         non-removable;
309         bus-width = <4>;
310         cap-power-off-card;
311 
312         #address-cells = <1>;
313         #size-cells = <0>;
314         wlcore: wlcore@2 {
315                 compatible = "ti,wl1283";
316                 reg = <2>;
317                 interrupts-extended = <&gpio1 23 IRQ_TYPE_LEVEL_HIGH>;
318                 interrupt-names = "irq";
319                 ref-clock-frequency = <26000000>;
320                 tcxo-clock-frequency = <26000000>;
321         };
322 };
323 
324 &mmc4 {
325         status = "disabled";
326 };
327 
328 &mmc5 {
329         status = "disabled";
330 };
331 
332 &omap4_pmx_core {
333         bt_pins: pinmux-bt-pins {
334                 pinctrl-single,pins = <
335                         OMAP4_IOPAD(0x1ca, PIN_OUTPUT | MUX_MODE3) /* gpio25 */
336                 >;
337         };
338 
339         gpio_keys_pins: pinmux-gpio-key-pins {
340                 pinctrl-single,pins = <
341                         OMAP4_IOPAD(0x56, PIN_INPUT_PULLUP | MUX_MODE3) /* gpio35 */
342                 >;
343         };
344 
345         i2c1_pins: pinmux-i2c1-pins {
346                 pinctrl-single,pins = <
347                            OMAP4_IOPAD(0x122, PIN_INPUT_PULLUP | MUX_MODE0)     /* i2c1_scl */
348                            OMAP4_IOPAD(0x124, PIN_INPUT_PULLUP | MUX_MODE0)     /* i2c1_sda */
349                 >;
350         };
351 
352         i2c2_pins: pinmux-i2c2-pins {
353                 pinctrl-single,pins = <
354                         OMAP4_IOPAD(0x126, PIN_INPUT | MUX_MODE0)       /* i2c2_scl */
355                         OMAP4_IOPAD(0x128, PIN_INPUT | MUX_MODE0)       /* i2c2_sda */
356                 >;
357         };
358 
359         i2c3_pins: pinmux-i2c3-pins {
360                 pinctrl-single,pins = <
361                         OMAP4_IOPAD(0x12a, PIN_INPUT | MUX_MODE0)       /* i2c3_scl */
362                         OMAP4_IOPAD(0x12c, PIN_INPUT | MUX_MODE0)       /* i2c3_sda */
363                 >;
364         };
365 
366         i2c4_pins: pinmux-i2c4-pins {
367                 pinctrl-single,pins = <
368                         OMAP4_IOPAD(0x12e, PIN_INPUT | MUX_MODE0)       /* i2c4_scl */
369                         OMAP4_IOPAD(0x130, PIN_INPUT | MUX_MODE0)       /* i2c4_sda */
370                 >;
371         };
372 
373         keypad_pins: pinmux-keypad-pins {
374                 pinctrl-single,pins = <
375                         /* kpd_row0 */
376                         OMAP4_IOPAD(0x0050, PIN_INPUT_PULLUP | MUX_MODE1)
377                         /* kpd_row1 */
378                         OMAP4_IOPAD(0x0052, PIN_INPUT_PULLUP | MUX_MODE1)
379                         /* kpd_row2 */
380                         OMAP4_IOPAD(0x0054, PIN_INPUT_PULLUP | MUX_MODE1)
381                         /* kpd_col0 */
382                         OMAP4_IOPAD(0x0058, PIN_OUTPUT | MUX_MODE1)
383                         /* kpd_col1 */
384                         OMAP4_IOPAD(0x005a, PIN_OUTPUT | MUX_MODE1)
385                         /* kpd_col2 */
386                         OMAP4_IOPAD(0x005c, PIN_OUTPUT | MUX_MODE1)
387                 >;
388         };
389 
390         mcbsp2_pins: pinmux-mcbsp2-pins {
391                 pinctrl-single,pins = <
392                         OMAP4_IOPAD(0x0f6, PIN_INPUT | MUX_MODE0)       /* abe_mcbsp2_clkx */
393                         OMAP4_IOPAD(0x0f8, PIN_INPUT | MUX_MODE0)       /* abe_mcbsp2_dr */
394                         OMAP4_IOPAD(0x0fa, PIN_OUTPUT | MUX_MODE0)      /* abe_mcbsp2_dx */
395                         OMAP4_IOPAD(0x0fc, PIN_INPUT | MUX_MODE0)       /* abe_mcbsp2_fsx */
396                 >;
397         };
398 
399         mpu9150_pins: pinmux-mpu9150-pins {
400                 pinctrl-single,pins = <
401                         OMAP4_IOPAD(0x5e, PIN_INPUT_PULLUP | MUX_MODE3)
402                 >;
403         };
404 
405         mpu9150h_pins: pinmux-mpu9150h-pins {
406                 pinctrl-single,pins = <
407                         OMAP4_IOPAD(0x76, PIN_INPUT_PULLUP | MUX_MODE3)
408                 >;
409         };
410 
411         tlv320aic3x_pins: pinmux-tlv320aic3x-pins {
412                 pinctrl-single,pins = <
413                         OMAP4_IOPAD(0x7e, PIN_OUTPUT | MUX_MODE3)
414                 >;
415         };
416 
417         uart2_pins: pinmux-uart2-pins {
418                 pinctrl-single,pins = <
419                         OMAP4_IOPAD(0x118, PIN_INPUT_PULLUP | MUX_MODE0) /* uart2_cts.uart2_cts */
420                         OMAP4_IOPAD(0x11a, PIN_OUTPUT | MUX_MODE0)       /* uart2_rts.uart2_rts */
421                         OMAP4_IOPAD(0x11c, PIN_INPUT_PULLUP | MUX_MODE0) /* uart2_rx.uart2_rx */
422                         OMAP4_IOPAD(0x11e, PIN_OUTPUT | MUX_MODE0)       /* uart2_tx.uart2_tx */
423                 >;
424         };
425 
426         uart3_pins: pinmux-uart3-pins {
427                 pinctrl-single,pins = <
428                         OMAP4_IOPAD(0x144, PIN_INPUT | MUX_MODE0)  /* uart3_rx_irrx */
429                         OMAP4_IOPAD(0x146, PIN_OUTPUT | MUX_MODE0) /* uart3_tx_irtx */
430                 >;
431         };
432 
433         usb_otg_hs_pins: pinmux-usb-otg-hs-pins {
434                  pinctrl-single,pins = <
435                          OMAP4_IOPAD(0x194, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* usba0_otg_ce */
436                          OMAP4_IOPAD(0x196, PIN_INPUT | MUX_MODE0)           /* usba0_otg_dp */
437                          OMAP4_IOPAD(0x198, PIN_INPUT | MUX_MODE0)           /* usba0_otg_dm */
438                  >;
439         };
440 
441         wl12xx_pins: pinmux-wl12xx-pins {
442                 pinctrl-single,pins = <
443                         OMAP4_IOPAD(0x1c6, PIN_INPUT | MUX_MODE3) /* gpio_23 / IRQ */
444                         OMAP4_IOPAD(0x16c, PIN_INPUT_PULLUP | MUX_MODE2) /* sdmmc3_dat2 */
445                         OMAP4_IOPAD(0x16e, PIN_INPUT_PULLUP | MUX_MODE2) /* sdmmc3_dat1 */
446                         OMAP4_IOPAD(0x170, PIN_INPUT_PULLUP | MUX_MODE2) /* sdmmc3_dat0 */
447                         OMAP4_IOPAD(0x172, PIN_INPUT_PULLUP | MUX_MODE2) /* sdmmc3_dat3 */
448                         OMAP4_IOPAD(0x174, PIN_INPUT_PULLUP | MUX_MODE2) /* sdmmc3_cmd */
449                         OMAP4_IOPAD(0x176, PIN_INPUT_PULLUP | MUX_MODE2) /* sdmmc3_clk */
450                 >;
451         };
452 
453         wl12xx_gpio: pinmux-wl12xx-gpio-pins {
454                 pinctrl-single,pins = <
455                         OMAP4_IOPAD(0x1c8, PIN_OUTPUT | MUX_MODE3)  /* gpio_24 / WLAN_EN */
456                 >;
457         };
458 };
459 
460 &uart2 {
461         pinctrl-names = "default";
462         pinctrl-0 = <&uart2_pins &bt_pins>;
463         interrupts-extended = <&wakeupgen GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH
464                                &omap4_pmx_core OMAP4_UART2_RX>;
465 
466         bluetooth-gnss {
467                 compatible = "ti,wl1283-st";
468                 enable-gpios = <&gpio1 25 GPIO_ACTIVE_HIGH>;    /* GPIO_25 */
469                 clocks = <&twl 1>;
470                 clock-names = "ext_clock";
471         };
472 };
473 
474 &uart3 {
475         pinctrl-names = "default";
476         pinctrl-0 = <&uart3_pins>;
477         interrupts-extended = <&wakeupgen GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH
478                                &omap4_pmx_core OMAP4_UART3_RX>;
479 };
480 
481 &usb_otg_hs {
482         pinctrl-names = "default";
483         pinctrl-0 = <&usb_otg_hs_pins>;
484 
485         interface-type = <1>;
486         mode = <3>;
487         power = <50>;
488 };
489 
490 &usbhshost {
491         status = "disabled";
492 };

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php