1724ba675SRob Herring// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
2724ba675SRob Herring/*
3724ba675SRob Herring * Copyright (c) STMicroelectronics 2019 - All Rights Reserved
4724ba675SRob Herring * Copyright (c) 2020 Engicam srl
5724ba675SRob Herring * Copyright (c) 2020 Amarula Solutions(India)
6724ba675SRob Herring */
7724ba675SRob Herring
8724ba675SRob Herring/dts-v1/;
9724ba675SRob Herring#include "stm32mp157.dtsi"
10724ba675SRob Herring#include "stm32mp157a-icore-stm32mp1.dtsi"
11724ba675SRob Herring#include "stm32mp15-pinctrl.dtsi"
12724ba675SRob Herring#include "stm32mp15xxaa-pinctrl.dtsi"
13724ba675SRob Herring#include <dt-bindings/gpio/gpio.h>
14724ba675SRob Herring
15724ba675SRob Herring/ {
16724ba675SRob Herring	model = "Engicam i.Core STM32MP1 C.TOUCH 2.0 10.1\" Open Frame";
17724ba675SRob Herring	compatible = "engicam,icore-stm32mp1-ctouch2-of10",
18724ba675SRob Herring		     "engicam,icore-stm32mp1", "st,stm32mp157";
19724ba675SRob Herring
20724ba675SRob Herring	aliases {
21724ba675SRob Herring		serial0 = &uart4;
22724ba675SRob Herring	};
23724ba675SRob Herring
24724ba675SRob Herring	backlight: backlight {
25724ba675SRob Herring		compatible = "gpio-backlight";
26724ba675SRob Herring		gpios = <&gpiod 13 GPIO_ACTIVE_HIGH>;
27724ba675SRob Herring		default-on;
28724ba675SRob Herring	};
29724ba675SRob Herring
30724ba675SRob Herring	chosen {
31724ba675SRob Herring		stdout-path = "serial0:115200n8";
32724ba675SRob Herring	};
33724ba675SRob Herring
34724ba675SRob Herring	panel {
35724ba675SRob Herring		compatible = "ampire,am-1280800n3tzqw-t00h";
36724ba675SRob Herring		backlight = <&backlight>;
37724ba675SRob Herring		power-supply = <&v3v3>;
38724ba675SRob Herring
39724ba675SRob Herring		port {
40724ba675SRob Herring			panel_in_lvds: endpoint {
41724ba675SRob Herring				remote-endpoint = <&bridge_out>;
42724ba675SRob Herring			};
43724ba675SRob Herring		};
44724ba675SRob Herring	};
45724ba675SRob Herring};
46724ba675SRob Herring
47724ba675SRob Herring&dsi {
48724ba675SRob Herring	status = "okay";
49*5408d518SMarek Vasut};
50724ba675SRob Herring
51*5408d518SMarek Vasut&dsi_in {
52724ba675SRob Herring	remote-endpoint = <&ltdc_ep0_out>;
53724ba675SRob Herring};
54724ba675SRob Herring
55*5408d518SMarek Vasut&dsi_out {
56724ba675SRob Herring	remote-endpoint = <&bridge_in>;
57724ba675SRob Herring};
58724ba675SRob Herring
59724ba675SRob Herring&i2c6 {
60724ba675SRob Herring	i2c-scl-falling-time-ns = <20>;
61724ba675SRob Herring	i2c-scl-rising-time-ns = <185>;
62724ba675SRob Herring	pinctrl-names = "default", "sleep";
63724ba675SRob Herring	pinctrl-0 = <&i2c6_pins_a>;
64724ba675SRob Herring	pinctrl-1 = <&i2c6_sleep_pins_a>;
65724ba675SRob Herring	status = "okay";
66724ba675SRob Herring
67724ba675SRob Herring	bridge@2c {
68724ba675SRob Herring		compatible = "ti,sn65dsi84";
69724ba675SRob Herring		reg = <0x2c>;
70724ba675SRob Herring		enable-gpios = <&gpiof 15 GPIO_ACTIVE_HIGH>;
71724ba675SRob Herring
72724ba675SRob Herring		ports {
73724ba675SRob Herring			#address-cells = <1>;
74724ba675SRob Herring			#size-cells = <0>;
75724ba675SRob Herring
76724ba675SRob Herring			port@0 {
77724ba675SRob Herring				reg = <0>;
78724ba675SRob Herring				bridge_in: endpoint {
79724ba675SRob Herring					remote-endpoint = <&dsi_out>;
80724ba675SRob Herring					data-lanes = <1 2>;
81724ba675SRob Herring				};
82724ba675SRob Herring			};
83724ba675SRob Herring
84724ba675SRob Herring			port@2 {
85724ba675SRob Herring				reg = <2>;
86724ba675SRob Herring				bridge_out: endpoint {
87724ba675SRob Herring					remote-endpoint = <&panel_in_lvds>;
88724ba675SRob Herring				};
89724ba675SRob Herring			};
90724ba675SRob Herring		};
91724ba675SRob Herring	};
92724ba675SRob Herring};
93724ba675SRob Herring
94724ba675SRob Herring&ltdc {
95724ba675SRob Herring	status = "okay";
96724ba675SRob Herring
97724ba675SRob Herring	port {
98724ba675SRob Herring		ltdc_ep0_out: endpoint {
99724ba675SRob Herring			remote-endpoint = <&dsi_in>;
100724ba675SRob Herring		};
101724ba675SRob Herring	};
102724ba675SRob Herring};
103724ba675SRob Herring
104724ba675SRob Herring&sdmmc1 {
105724ba675SRob Herring	bus-width = <4>;
106724ba675SRob Herring	disable-wp;
107724ba675SRob Herring	pinctrl-names = "default", "opendrain", "sleep";
108724ba675SRob Herring	pinctrl-0 = <&sdmmc1_b4_pins_a>;
109724ba675SRob Herring	pinctrl-1 = <&sdmmc1_b4_od_pins_a>;
110724ba675SRob Herring	pinctrl-2 = <&sdmmc1_b4_sleep_pins_a>;
111724ba675SRob Herring	st,neg-edge;
112724ba675SRob Herring	vmmc-supply = <&v3v3>;
113724ba675SRob Herring	status = "okay";
114724ba675SRob Herring};
115724ba675SRob Herring
116724ba675SRob Herring&uart4 {
117724ba675SRob Herring	pinctrl-names = "default", "sleep", "idle";
118724ba675SRob Herring	pinctrl-0 = <&uart4_pins_a>;
119724ba675SRob Herring	pinctrl-1 = <&uart4_sleep_pins_a>;
120724ba675SRob Herring	pinctrl-2 = <&uart4_idle_pins_a>;
121724ba675SRob Herring	status = "okay";
122724ba675SRob Herring};
123