Home | History | Annotate | Line # | Download | only in dts
      1  1.1  jmcneill // SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
      2  1.1  jmcneill /*
      3  1.1  jmcneill  * Copyright (c) STMicroelectronics 2019 - All Rights Reserved
      4  1.1  jmcneill  * Copyright (c) 2020 Engicam srl
      5  1.1  jmcneill  * Copyright (c) 2020 Amarula Solutons(India)
      6  1.1  jmcneill  */
      7  1.1  jmcneill 
      8  1.1  jmcneill /dts-v1/;
      9  1.1  jmcneill #include "stm32mp157.dtsi"
     10  1.1  jmcneill #include "stm32mp157a-microgea-stm32mp1.dtsi"
     11  1.1  jmcneill #include "stm32mp15-pinctrl.dtsi"
     12  1.1  jmcneill #include "stm32mp15xxaa-pinctrl.dtsi"
     13  1.1  jmcneill #include <dt-bindings/gpio/gpio.h>
     14  1.1  jmcneill 
     15  1.1  jmcneill / {
     16  1.1  jmcneill 	model = "Engicam MicroGEA STM32MP1 MicroDev 2.0 7\" Open Frame";
     17  1.1  jmcneill 	compatible = "engicam,microgea-stm32mp1-microdev2.0-of7",
     18  1.1  jmcneill 		     "engicam,microgea-stm32mp1", "st,stm32mp157";
     19  1.1  jmcneill 
     20  1.1  jmcneill 	aliases {
     21  1.1  jmcneill 		serial0 = &uart4;
     22  1.1  jmcneill 		serial1 = &uart8;
     23  1.1  jmcneill 	};
     24  1.1  jmcneill 
     25  1.1  jmcneill 	chosen {
     26  1.1  jmcneill 		stdout-path = "serial0:115200n8";
     27  1.1  jmcneill 	};
     28  1.1  jmcneill 
     29  1.1  jmcneill 	backlight: backlight {
     30  1.1  jmcneill 		compatible = "gpio-backlight";
     31  1.1  jmcneill 		gpios = <&gpiod 13 GPIO_ACTIVE_HIGH>;
     32  1.1  jmcneill 		default-on;
     33  1.1  jmcneill 	};
     34  1.1  jmcneill 
     35  1.1  jmcneill 	lcd_3v3: regulator-lcd-3v3 {
     36  1.1  jmcneill 		compatible = "regulator-fixed";
     37  1.1  jmcneill 		regulator-name = "lcd_3v3";
     38  1.1  jmcneill 		regulator-min-microvolt = <3300000>;
     39  1.1  jmcneill 		regulator-max-microvolt = <3300000>;
     40  1.1  jmcneill 		gpio = <&gpiof 10 GPIO_ACTIVE_HIGH>;
     41  1.1  jmcneill 		enable-active-high;
     42  1.1  jmcneill 		regulator-always-on;
     43  1.1  jmcneill 		power-supply = <&panel_pwr>;
     44  1.1  jmcneill 	};
     45  1.1  jmcneill 
     46  1.1  jmcneill 	panel_pwr: regulator-panel-pwr {
     47  1.1  jmcneill 		compatible = "regulator-fixed";
     48  1.1  jmcneill 		regulator-name = "panel_pwr";
     49  1.1  jmcneill 		regulator-min-microvolt = <3300000>;
     50  1.1  jmcneill 		regulator-max-microvolt = <3300000>;
     51  1.1  jmcneill 		gpio = <&gpiob 10 GPIO_ACTIVE_HIGH>;
     52  1.1  jmcneill 		regulator-always-on;
     53  1.1  jmcneill 	};
     54  1.1  jmcneill 
     55  1.1  jmcneill 	panel {
     56  1.1  jmcneill 		compatible = "auo,b101aw03";
     57  1.1  jmcneill 		backlight = <&backlight>;
     58  1.1  jmcneill 		enable-gpios = <&gpiof 2 GPIO_ACTIVE_HIGH>;
     59  1.1  jmcneill 		power-supply = <&lcd_3v3>;
     60  1.1  jmcneill 
     61  1.1  jmcneill 		port {
     62  1.1  jmcneill 			panel_in: endpoint {
     63  1.1  jmcneill 				remote-endpoint = <&ltdc_ep0_out>;
     64  1.1  jmcneill 			};
     65  1.1  jmcneill 		};
     66  1.1  jmcneill 	};
     67  1.1  jmcneill };
     68  1.1  jmcneill 
     69  1.1  jmcneill &i2c2 {
     70  1.1  jmcneill 	i2c-scl-falling-time-ns = <20>;
     71  1.1  jmcneill 	i2c-scl-rising-time-ns = <185>;
     72  1.1  jmcneill 	pinctrl-names = "default", "sleep";
     73  1.1  jmcneill 	pinctrl-0 = <&i2c2_pins_a>;
     74  1.1  jmcneill 	pinctrl-1 = <&i2c2_sleep_pins_a>;
     75  1.1  jmcneill 	status = "okay";
     76  1.1  jmcneill };
     77  1.1  jmcneill 
     78  1.1  jmcneill &ltdc {
     79  1.1  jmcneill 	pinctrl-names = "default";
     80  1.1  jmcneill 	pinctrl-0 = <&ltdc_pins>;
     81  1.1  jmcneill 	status = "okay";
     82  1.1  jmcneill 
     83  1.1  jmcneill 	port {
     84  1.1  jmcneill 		ltdc_ep0_out: endpoint@0 {
     85  1.1  jmcneill 			reg = <0>;
     86  1.1  jmcneill 			remote-endpoint = <&panel_in>;
     87  1.1  jmcneill 		};
     88  1.1  jmcneill 	};
     89  1.1  jmcneill };
     90  1.1  jmcneill 
     91  1.1  jmcneill &pinctrl {
     92  1.1  jmcneill 	ltdc_pins: ltdc-0 {
     93  1.1  jmcneill 		pins {
     94  1.1  jmcneill 			pinmux = <STM32_PINMUX('G', 10, AF14)>,	/* LTDC_B2 */
     95  1.1  jmcneill 				 <STM32_PINMUX('H', 12, AF14)>,	/* LTDC_R6 */
     96  1.1  jmcneill 				 <STM32_PINMUX('H', 11, AF14)>,	/* LTDC_R5 */
     97  1.1  jmcneill 				 <STM32_PINMUX('D', 10, AF14)>,	/* LTDC_B3 */
     98  1.1  jmcneill 				 <STM32_PINMUX('D', 9, AF14)>,	/* LTDC_B0 */
     99  1.1  jmcneill 				 <STM32_PINMUX('E', 5, AF14)>,	/* LTDC_G0 */
    100  1.1  jmcneill 				 <STM32_PINMUX('E', 6, AF14)>,	/* LTDC_G1 */
    101  1.1  jmcneill 				 <STM32_PINMUX('E', 13, AF14)>,	/* LTDC_DE */
    102  1.1  jmcneill 				 <STM32_PINMUX('E', 15, AF14)>,	/* LTDC_R7 */
    103  1.1  jmcneill 				 <STM32_PINMUX('G', 7, AF14)>,	/* LTDC_CLK */
    104  1.1  jmcneill 				 <STM32_PINMUX('G', 12, AF14)>,	/* LTDC_B1 */
    105  1.1  jmcneill 				 <STM32_PINMUX('H', 2, AF14)>,	/* LTDC_R0 */
    106  1.1  jmcneill 				 <STM32_PINMUX('H', 3, AF14)>,	/* LTDC_R1 */
    107  1.1  jmcneill 				 <STM32_PINMUX('H', 8, AF14)>,	/* LTDC_R2 */
    108  1.1  jmcneill 				 <STM32_PINMUX('H', 9, AF14)>,	/* LTDC_R3 */
    109  1.1  jmcneill 				 <STM32_PINMUX('H', 10, AF14)>,	/* LTDC_R4 */
    110  1.1  jmcneill 				 <STM32_PINMUX('H', 13, AF14)>,	/* LTDC_G2 */
    111  1.1  jmcneill 				 <STM32_PINMUX('H', 14, AF14)>,	/* LTDC_G3 */
    112  1.1  jmcneill 				 <STM32_PINMUX('H', 15, AF14)>,	/* LTDC_G4 */
    113  1.1  jmcneill 				 <STM32_PINMUX('I', 0, AF14)>,	/* LTDC_G5 */
    114  1.1  jmcneill 				 <STM32_PINMUX('I', 1, AF14)>,	/* LTDC_G6 */
    115  1.1  jmcneill 				 <STM32_PINMUX('I', 2, AF14)>,	/* LTDC_G7 */
    116  1.1  jmcneill 				 <STM32_PINMUX('I', 4, AF14)>,	/* LTDC_B4 */
    117  1.1  jmcneill 				 <STM32_PINMUX('I', 5, AF14)>,	/* LTDC_B5 */
    118  1.1  jmcneill 				 <STM32_PINMUX('B', 8, AF14)>,	/* LTDC_B6 */
    119  1.1  jmcneill 				 <STM32_PINMUX('I', 7, AF14)>,	/* LTDC_B7 */
    120  1.1  jmcneill 				 <STM32_PINMUX('I', 9, AF14)>,	/* LTDC_VSYNC */
    121  1.1  jmcneill 				 <STM32_PINMUX('I', 10, AF14)>;	/* LTDC_HSYNC */
    122  1.1  jmcneill 			bias-disable;
    123  1.1  jmcneill 			drive-push-pull;
    124  1.1  jmcneill 			slew-rate = <3>;
    125  1.1  jmcneill 		};
    126  1.1  jmcneill 	};
    127  1.1  jmcneill };
    128  1.1  jmcneill 
    129  1.1  jmcneill &sdmmc1 {
    130  1.1  jmcneill 	bus-width = <4>;
    131  1.1  jmcneill 	disable-wp;
    132  1.1  jmcneill 	pinctrl-names = "default", "opendrain", "sleep";
    133  1.1  jmcneill 	pinctrl-0 = <&sdmmc1_b4_pins_a>;
    134  1.1  jmcneill 	pinctrl-1 = <&sdmmc1_b4_od_pins_a>;
    135  1.1  jmcneill 	pinctrl-2 = <&sdmmc1_b4_sleep_pins_a>;
    136  1.1  jmcneill 	st,neg-edge;
    137  1.1  jmcneill 	vmmc-supply = <&vdd>;
    138  1.1  jmcneill 	status = "okay";
    139  1.1  jmcneill };
    140  1.1  jmcneill 
    141  1.1  jmcneill &uart4 {
    142  1.1  jmcneill 	pinctrl-names = "default", "sleep", "idle";
    143  1.1  jmcneill 	pinctrl-0 = <&uart4_pins_a>;
    144  1.1  jmcneill 	pinctrl-1 = <&uart4_sleep_pins_a>;
    145  1.1  jmcneill 	pinctrl-2 = <&uart4_idle_pins_a>;
    146  1.1  jmcneill 	status = "okay";
    147  1.1  jmcneill };
    148  1.1  jmcneill 
    149  1.1  jmcneill /* J31: RS323 */
    150  1.1  jmcneill &uart8 {
    151  1.1  jmcneill 	pinctrl-names = "default";
    152  1.1  jmcneill 	pinctrl-0 = <&uart8_pins_a>;
    153  1.1  jmcneill 	status = "okay";
    154  1.1  jmcneill };
    155