Add support to Rocktech RK043FN48H display on stm32f746-disco board.
Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
Reviewed-by: Raphaël Gallais-Pou <raphael.gallais-pou@foss.st.com>
---
Changes in v7:
- Add 'Reviewed-by' tag I forgot in v6.
https://lore.kernel.org/linux-arm-kernel/20230629083726.84910-1-dario.binacchi@amarulasolutions.com/T/
Changes in v6:
- Remove dma nodes from stm32f746-disco.dts, they are not used by LTDC,
so there is no need to enable them.
Changes in v5:
I am confident that framebuffer sizing is a real requirement for STM32 boards,
but I need some time to understand if and how to introduce this functionality.
Therefore, I drop the following patches to allow the series to be fully merged:
- [4/6] dt-bindings: display: stm32-ltdc: add optional st,fb-bpp property
- [5/6] ARM: dts: stm32: set framebuffer bit depth on stm32f746-disco
- [6/6] drm/stm: set framebuffer bit depth through DTS property
Changes in v4:
- Use DTS property instead of module parameter to set the framebuffer bit depth.
Changes in v3:
- drop [4/6] dt-bindings: display: simple: add Rocktech RK043FN48H
Applied to https://anongit.freedesktop.org/git/drm/drm-misc.git (drm-misc-next):
https://cgit.freedesktop.org/drm/drm-misc/commit/?id=c42a37a27c777d63961dd634a30f7c887949491a
- drop [5/6] drm/panel: simple: add support for Rocktech RK043FN48H panel
Applied to https://anongit.freedesktop.org/git/drm/drm-misc.git (drm-misc-next)
https://cgit.freedesktop.org/drm/drm-misc/commit/?id=13cdd12a9f934158f4ec817cf048fcb4384aa9dc
arch/arm/boot/dts/st/stm32f746-disco.dts | 43 ++++++++++++++++++++++++
1 file changed, 43 insertions(+)
diff --git a/arch/arm/boot/dts/st/stm32f746-disco.dts b/arch/arm/boot/dts/st/stm32f746-disco.dts
index c11616ed5fc6..c00d34179e2e 100644
--- a/arch/arm/boot/dts/st/stm32f746-disco.dts
+++ b/arch/arm/boot/dts/st/stm32f746-disco.dts
@@ -60,10 +60,41 @@ memory@c0000000 {
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;
};
+ backlight: backlight {
+ compatible = "gpio-backlight";
+ gpios = <&gpiok 3 GPIO_ACTIVE_HIGH>;
+ status = "okay";
+ };
+
+ panel_rgb: panel-rgb {
+ compatible = "rocktech,rk043fn48h";
+ backlight = <&backlight>;
+ enable-gpios = <&gpioi 12 GPIO_ACTIVE_HIGH>;
+ status = "okay";
+ port {
+ panel_in_rgb: endpoint {
+ remote-endpoint = <<dc_out_rgb>;
+ };
+ };
+ };
+
usbotg_hs_phy: usb-phy {
#phy-cells = <0>;
compatible = "usb-nop-xceiv";
@@ -99,6 +130,18 @@ &i2c1 {
status = "okay";
};
+<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 = <&mmc_vcard>;
--
2.34.1
Hi Dario Sorry for my late answer. On 8/5/23 11:32, Dario Binacchi wrote: > Add support to Rocktech RK043FN48H display on stm32f746-disco board. > > Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com> > Reviewed-by: Raphaël Gallais-Pou <raphael.gallais-pou@foss.st.com> > > --- > > Changes in v7: > - Add 'Reviewed-by' tag I forgot in v6. > https://lore.kernel.org/linux-arm-kernel/20230629083726.84910-1-dario.binacchi@amarulasolutions.com/T/ > > Changes in v6: > - Remove dma nodes from stm32f746-disco.dts, they are not used by LTDC, > so there is no need to enable them. > > Changes in v5: > I am confident that framebuffer sizing is a real requirement for STM32 boards, > but I need some time to understand if and how to introduce this functionality. > Therefore, I drop the following patches to allow the series to be fully merged: > - [4/6] dt-bindings: display: stm32-ltdc: add optional st,fb-bpp property > - [5/6] ARM: dts: stm32: set framebuffer bit depth on stm32f746-disco > - [6/6] drm/stm: set framebuffer bit depth through DTS property > > Changes in v4: > - Use DTS property instead of module parameter to set the framebuffer bit depth. > > Changes in v3: > - drop [4/6] dt-bindings: display: simple: add Rocktech RK043FN48H > Applied to https://anongit.freedesktop.org/git/drm/drm-misc.git (drm-misc-next): > https://cgit.freedesktop.org/drm/drm-misc/commit/?id=c42a37a27c777d63961dd634a30f7c887949491a > - drop [5/6] drm/panel: simple: add support for Rocktech RK043FN48H panel > Applied to https://anongit.freedesktop.org/git/drm/drm-misc.git (drm-misc-next) > https://cgit.freedesktop.org/drm/drm-misc/commit/?id=13cdd12a9f934158f4ec817cf048fcb4384aa9dc > > arch/arm/boot/dts/st/stm32f746-disco.dts | 43 ++++++++++++++++++++++++ > 1 file changed, 43 insertions(+) > > diff --git a/arch/arm/boot/dts/st/stm32f746-disco.dts b/arch/arm/boot/dts/st/stm32f746-disco.dts > index c11616ed5fc6..c00d34179e2e 100644 > --- a/arch/arm/boot/dts/st/stm32f746-disco.dts > +++ b/arch/arm/boot/dts/st/stm32f746-disco.dts > @@ -60,10 +60,41 @@ memory@c0000000 { > 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; > }; > > + backlight: backlight { > + compatible = "gpio-backlight"; > + gpios = <&gpiok 3 GPIO_ACTIVE_HIGH>; > + status = "okay"; > + }; > + > + panel_rgb: panel-rgb { > + compatible = "rocktech,rk043fn48h"; > + backlight = <&backlight>; > + enable-gpios = <&gpioi 12 GPIO_ACTIVE_HIGH>; > + status = "okay"; > + port { > + panel_in_rgb: endpoint { > + remote-endpoint = <<dc_out_rgb>; > + }; > + }; > + }; > + I got this bindings issue: ../arch/arm/boot/dts/st/stm32f746-disco.dtb: panel-rgb: 'power-supply' is a required property from schema $id: http://devicetree.org/schemas/display/panel/panel-simple.yaml# Do I miss a dt-bindings patch ? regards Alex > usbotg_hs_phy: usb-phy { > #phy-cells = <0>; > compatible = "usb-nop-xceiv"; > @@ -99,6 +130,18 @@ &i2c1 { > status = "okay"; > }; > > +<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 = <&mmc_vcard>;
© 2016 - 2025 Red Hat, Inc.