From 1e4d99549f00de502fe02b0bbed16327434e2514 Mon Sep 17 00:00:00 2001 From: Dario Binacchi Date: Sun, 3 Sep 2023 22:48:49 +0200 Subject: [PATCH] ARM: dts: stm32: support display on stm32f746-disco board The patch applies the changes from Linux commit 10a970bc3ebfa ("ARM: dts: stm32: support display on stm32f746-disco board") and removes the same settings from stm32f746-disco-u-boot.dtsi. Signed-off-by: Dario Binacchi Reviewed-by: Patrice Chotard --- arch/arm/dts/stm32f746-disco-u-boot.dtsi | 89 ++++++------------------ arch/arm/dts/stm32f746-disco.dts | 44 ++++++++++++ 2 files changed, 66 insertions(+), 67 deletions(-) diff --git a/arch/arm/dts/stm32f746-disco-u-boot.dtsi b/arch/arm/dts/stm32f746-disco-u-boot.dtsi index 3c2b9fc595..1b42d6cbbc 100644 --- a/arch/arm/dts/stm32f746-disco-u-boot.dtsi +++ b/arch/arm/dts/stm32f746-disco-u-boot.dtsi @@ -23,12 +23,6 @@ spi0 = &qspi; }; - backlight: backlight { - compatible = "gpio-backlight"; - gpios = <&gpiok 3 0>; - status = "okay"; - }; - button1 { compatible = "st,button1"; button-gpio = <&gpioi 11 0>; @@ -38,37 +32,10 @@ compatible = "st,led1"; led-gpio = <&gpioi 1 0>; }; - - panel-rgb@0 { - compatible = "simple-panel"; - backlight = <&backlight>; - enable-gpios = <&gpioi 12 0>; - status = "okay"; - - display-timings { - timing@0 { - clock-frequency = <9000000>; - hactive = <480>; - vactive = <272>; - hfront-porch = <2>; - hback-porch = <2>; - hsync-len = <41>; - vfront-porch = <2>; - vback-porch = <2>; - vsync-len = <10>; - hsync-active = <0>; - vsync-active = <0>; - de-active = <1>; - pixelclk-active = <1>; - }; - }; - }; }; <dc { clocks = <&rcc 0 STM32F7_APB2_CLOCK(LTDC)>; - pinctrl-0 = <<dc_pins>; - status = "okay"; bootph-all; }; @@ -96,6 +63,28 @@ }; }; +&panel_rgb { + compatible = "simple-panel"; + + display-timings { + timing@0 { + clock-frequency = <9000000>; + hactive = <480>; + vactive = <272>; + hfront-porch = <2>; + hback-porch = <2>; + hsync-len = <41>; + vfront-porch = <2>; + vback-porch = <2>; + vsync-len = <10>; + hsync-active = <0>; + vsync-active = <0>; + de-active = <1>; + pixelclk-active = <1>; + }; + }; +}; + &pinctrl { ethernet_mii: mii@0 { pins { @@ -160,40 +149,6 @@ }; }; - ltdc_pins: ltdc@0 { - pins { - pinmux = , /* B0 */ - , /* B4 */ - , /* VSYNC */ - , /* HSYNC */ - , /* CLK */ - , /* R0 */ - , /* R1 */ - , /* R2 */ - , /* R3 */ - , /* R4 */ - , /* R5 */ - , /* R6 */ - , /* R7 */ - , /* G0 */ - , /* G1 */ - , /* G2 */ - , /* G3 */ - , /* G4 */ - , /* B1 */ - , /* B2 */ - , /* B3 */ - , /* G5 */ - , /* G6 */ - , /* G7 */ - , /* B5 */ - , /* B6 */ - , /* B7 */ - ; /* DE */ - slew-rate = <2>; - }; - }; - qspi_pins: qspi@0 { pins { pinmux = , /* CLK */ diff --git a/arch/arm/dts/stm32f746-disco.dts b/arch/arm/dts/stm32f746-disco.dts index e1564d69f9..4312751340 100644 --- a/arch/arm/dts/stm32f746-disco.dts +++ b/arch/arm/dts/stm32f746-disco.dts @@ -25,6 +25,19 @@ reg = <0xC0000000 0x800000>; }; + reserved-memory { + #address-cells = <1>; + #size-cells = <1>; + ranges; + + linux,cma { + compatible = "shared-dma-pool"; + no-map; + size = <0x80000>; + linux,dma-default; + }; + }; + aliases { serial0 = &usart1; }; @@ -50,6 +63,25 @@ regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; }; + + backlight: backlight { + compatible = "gpio-backlight"; + gpios = <&gpiok 3 GPIO_ACTIVE_HIGH>; + status = "okay"; + }; + + panel_rgb: panel-rgb { + compatible = "rocktech,rk043fn48h"; + power-supply = <&vcc_3v3>; + backlight = <&backlight>; + enable-gpios = <&gpioi 12 GPIO_ACTIVE_HIGH>; + status = "okay"; + port { + panel_in_rgb: endpoint { + remote-endpoint = <<dc_out_rgb>; + }; + }; + }; }; &clk_hse { @@ -80,6 +112,18 @@ }; }; +<dc { + pinctrl-0 = <<dc_pins_a>; + pinctrl-names = "default"; + status = "okay"; + + port { + ltdc_out_rgb: endpoint { + remote-endpoint = <&panel_in_rgb>; + }; + }; +}; + &sdio1 { status = "okay"; vmmc-supply = <&vcc_3v3>; -- 2.39.5