Unverified Commit 03e9474b authored by Arnd Bergmann's avatar Arnd Bergmann
Browse files

Merge tag 'stm32-dt-for-v5.17-1' of...

Merge tag 'stm32-dt-for-v5.17-1' of git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32 into arm/dt

STM32 DT for v5.17, round 1

Highlights:
----------

-MCU:
 - fix ili9341 for dtbs_check warnings on stm32f429 disco.

- MPU:
 - ST boards:
  - tune HS USB phys on stm32mp15 EV1 and DKx boards.
  - add pull-up on USART3/UART7 RX pins on STM32MP15 DKx boards.
  - use correct pinctrl setting for STUSB1600 on STM32MP15 DK boards.

 - ENGICAM:
  - enable LVDS pannel on i.Core STM32MP1 EDIMM2.2.
  - add "i.Core STM32MP1 C.TOUCH 2.0 10.1" OF" support:
    EDIMM compliant general purpose carrier board with ETH 10/100,
    WIFI/BT, CAN, ...

* tag 'stm32-dt-for-v5.17-1' of git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32:
  ARM: dts: stm32: Add Engicam i.Core STM32MP1 C.TOUCH 2.0 10.1" OF
  dt-bindings: arm: stm32: Add Engicam i.Core STM32MP1 C.TOUCH 2.0 10.1" OF
  ARM: dts: stm32: Enable LVDS panel on i.Core STM32MP1 EDIMM2.2
  ARM: dts: stm32: fix stusb1600 pinctrl used on stm32mp157c-dk
  ARM: dts: stm32: tune the HS USB PHYs on stm32mp157c-ev1
  ARM: dts: stm32: tune the HS USB PHYs on stm32mp15xx-dkx
  ARM: dts: stm32: clean uart4_idle_pins_a node for stm32mp15
  ARM: dts: stm32: add pull-up to USART3 and UART7 RX pins on STM32MP15 DKx boards
  ARM: dts: stm32: fix dtbs_check warning on ili9341 dts binding on stm32f429 disco

Link: https://lore.kernel.org/r/dfe942db-5af7-bb82-22b6-3bd866c9017d@foss.st.com


Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
parents 2aaeccfa 3ff0810f
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -77,6 +77,7 @@ properties:
        items:
          - enum:
              - engicam,icore-stm32mp1-ctouch2       # STM32MP1 Engicam i.Core STM32MP1 C.TOUCH 2.0
              - engicam,icore-stm32mp1-ctouch2-of10  # STM32MP1 Engicam i.Core STM32MP1 C.TOUCH 2.0 10.1" OF
              - engicam,icore-stm32mp1-edimm2.2      # STM32MP1 Engicam i.Core STM32MP1 EDIMM2.2 Starter Kit
          - const: engicam,icore-stm32mp1            # STM32MP1 Engicam i.Core STM32MP1 SoM
          - const: st,stm32mp157
+1 −0
Original line number Diff line number Diff line
@@ -1143,6 +1143,7 @@ dtb-$(CONFIG_ARCH_STM32) += \
	stm32mp157a-microgea-stm32mp1-microdev2.0.dtb \
	stm32mp157a-microgea-stm32mp1-microdev2.0-of7.dtb \
	stm32mp157a-icore-stm32mp1-ctouch2.dtb \
	stm32mp157a-icore-stm32mp1-ctouch2-of10.dtb \
	stm32mp157a-icore-stm32mp1-edimm2.2.dtb \
	stm32mp157a-stinger96.dtb \
	stm32mp157c-dhcom-pdk2.dtb \
+1 −1
Original line number Diff line number Diff line
@@ -192,7 +192,7 @@ l3gd20: l3gd20@0 {

	display: display@1{
		/* Connect panel-ilitek-9341 to ltdc */
		compatible = "st,sf-tc240t-9370-t";
		compatible = "st,sf-tc240t-9370-t", "ilitek,ili9341";
		reg = <1>;
		spi-3wire;
		spi-max-frequency = <10000000>;
+16 −16
Original line number Diff line number Diff line
@@ -1718,7 +1718,7 @@ pins2 {

	stusb1600_pins_a: stusb1600-0 {
		pins {
			pinmux = <STM32_PINMUX('I', 11, ANALOG)>;
			pinmux = <STM32_PINMUX('I', 11, GPIO)>;
			bias-pull-up;
		};
	};
@@ -1816,7 +1816,7 @@ pins1 {
		};
		pins2 {
			pinmux = <STM32_PINMUX('E', 7, AF7)>; /* UART7_RX */
			bias-disable;
			bias-pull-up;
		};
	};

@@ -1826,7 +1826,7 @@ pins1 {
		};
		pins2 {
			pinmux = <STM32_PINMUX('E', 7, AF7)>; /* UART7_RX */
			bias-disable;
			bias-pull-up;
		};
	};

@@ -1971,7 +1971,7 @@ pins1 {
		pins2 {
			pinmux = <STM32_PINMUX('B', 12, AF8)>, /* USART3_RX */
				 <STM32_PINMUX('I', 10, AF8)>; /* USART3_CTS_NSS */
			bias-disable;
			bias-pull-up;
		};
	};

@@ -1988,7 +1988,7 @@ pins2 {
		};
		pins3 {
			pinmux = <STM32_PINMUX('B', 12, AF8)>; /* USART3_RX */
			bias-disable;
			bias-pull-up;
		};
	};

@@ -2012,7 +2012,7 @@ pins1 {
		pins2 {
			pinmux = <STM32_PINMUX('B', 12, AF8)>, /* USART3_RX */
				 <STM32_PINMUX('B', 13, AF7)>; /* USART3_CTS_NSS */
			bias-disable;
			bias-pull-up;
		};
	};

@@ -2029,7 +2029,7 @@ pins2 {
		};
		pins3 {
			pinmux = <STM32_PINMUX('B', 12, AF8)>; /* USART3_RX */
			bias-disable;
			bias-pull-up;
		};
	};

+132 −0
Original line number Diff line number Diff line
// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
/*
 * Copyright (c) STMicroelectronics 2019 - All Rights Reserved
 * Copyright (c) 2020 Engicam srl
 * Copyright (c) 2020 Amarula Solutons(India)
 */

/dts-v1/;
#include "stm32mp157.dtsi"
#include "stm32mp157a-icore-stm32mp1.dtsi"
#include "stm32mp15-pinctrl.dtsi"
#include "stm32mp15xxaa-pinctrl.dtsi"
#include <dt-bindings/gpio/gpio.h>

/ {
	model = "Engicam i.Core STM32MP1 C.TOUCH 2.0 10.1\" Open Frame";
	compatible = "engicam,icore-stm32mp1-ctouch2-of10",
		     "engicam,icore-stm32mp1", "st,stm32mp157";

	aliases {
		serial0 = &uart4;
	};

	backlight: backlight {
		compatible = "gpio-backlight";
		gpios = <&gpiod 13 GPIO_ACTIVE_HIGH>;
		default-on;
	};

	chosen {
		stdout-path = "serial0:115200n8";
	};

	panel {
		compatible = "ampire,am-1280800n3tzqw-t00h";
		backlight = <&backlight>;
		power-supply = <&v3v3>;

		port {
			panel_in_lvds: endpoint {
				remote-endpoint = <&bridge_out>;
			};
		};
	};
};

&dsi {
	status = "okay";
	phy-dsi-supply = <&reg18>;

	ports {
		port@0 {
			reg = <0>;
			dsi_in: endpoint {
				remote-endpoint = <&ltdc_ep0_out>;
			};
		};

		port@1 {
			reg = <1>;
			dsi_out: endpoint {
				remote-endpoint = <&bridge_in>;
			};
		};
	};
};

&i2c6 {
	i2c-scl-falling-time-ns = <20>;
	i2c-scl-rising-time-ns = <185>;
	pinctrl-names = "default", "sleep";
	pinctrl-0 = <&i2c6_pins_a>;
	pinctrl-1 = <&i2c6_sleep_pins_a>;
	status = "okay";

	bridge@2c {
		compatible = "ti,sn65dsi84";
		reg = <0x2c>;
		enable-gpios = <&gpiof 15 GPIO_ACTIVE_HIGH>;

		ports {
			#address-cells = <1>;
			#size-cells = <0>;

			port@0 {
				reg = <0>;
				bridge_in: endpoint {
					remote-endpoint = <&dsi_out>;
					data-lanes = <1 2>;
				};
			};

			port@2 {
				reg = <2>;
				bridge_out: endpoint {
					remote-endpoint = <&panel_in_lvds>;
				};
			};
		};
	};
};

&ltdc {
	status = "okay";

	port {
		ltdc_ep0_out: endpoint@0 {
			reg = <0>;
			remote-endpoint = <&dsi_in>;
		};
	};
};

&sdmmc1 {
	bus-width = <4>;
	disable-wp;
	pinctrl-names = "default", "opendrain", "sleep";
	pinctrl-0 = <&sdmmc1_b4_pins_a>;
	pinctrl-1 = <&sdmmc1_b4_od_pins_a>;
	pinctrl-2 = <&sdmmc1_b4_sleep_pins_a>;
	st,neg-edge;
	vmmc-supply = <&v3v3>;
	status = "okay";
};

&uart4 {
	pinctrl-names = "default", "sleep", "idle";
	pinctrl-0 = <&uart4_pins_a>;
	pinctrl-1 = <&uart4_sleep_pins_a>;
	pinctrl-2 = <&uart4_idle_pins_a>;
	status = "okay";
};
Loading