Am Montag, 31. Juli 2023, 22:05:57 CEST schrieb Jagan Teki: > Add DSI pipeline for Radxa ROCK 4C+ board via DT-overlay. > > The DSI connector in Radxa ROCK 4C+ board support different > resolution panels and those compatible is added in another > DT-overlay. > > Signed-off-by: Jagan Teki <jagan@xxxxxxxxxx> > --- > arch/arm64/boot/dts/rockchip/Makefile | 1 + > .../rk3399-rock-4c-plus-mipi-dsi.dtso | 69 +++++++++++++++++++ > 2 files changed, 70 insertions(+) > create mode 100644 arch/arm64/boot/dts/rockchip/rk3399-rock-4c-plus-mipi-dsi.dtso > > diff --git a/arch/arm64/boot/dts/rockchip/Makefile b/arch/arm64/boot/dts/rockchip/Makefile > index 1ebbb3e9c2f9..3a4c4cd769eb 100644 > --- a/arch/arm64/boot/dts/rockchip/Makefile > +++ b/arch/arm64/boot/dts/rockchip/Makefile > @@ -58,6 +58,7 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-roc-pc.dtb > dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-roc-pc-mezzanine.dtb > dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-roc-pc-plus.dtb > dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-rock-4c-plus.dtb > +dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-rock-4c-plus-mipi-dsi.dtbo > dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-rock-4se.dtb > dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-rock-pi-4a.dtb > dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-rock-pi-4a-plus.dtb > diff --git a/arch/arm64/boot/dts/rockchip/rk3399-rock-4c-plus-mipi-dsi.dtso b/arch/arm64/boot/dts/rockchip/rk3399-rock-4c-plus-mipi-dsi.dtso > new file mode 100644 > index 000000000000..271717040b6c > --- /dev/null > +++ b/arch/arm64/boot/dts/rockchip/rk3399-rock-4c-plus-mipi-dsi.dtso > @@ -0,0 +1,69 @@ > +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) > +/* > + * Copyright (c) 2023 Radxa Computer Co., Ltd. > + * Copyright (c) 2023 Edgeble AI Technologies Pvt. Ltd. > + * > + * DT-overlay for Radxa ROCK 4C+ DSI Connector. > + */ > + > +/dts-v1/; > +/plugin/; > + > +#include <dt-bindings/gpio/gpio.h> > +#include <dt-bindings/pinctrl/rockchip.h> > + > +&{/} { > + backlight: backlight { > + compatible = "pwm-backlight"; > + pwms = <&pwm2 0 25000 0>; > + }; > +}; > + > +&mipi_dsi { > + clock-master; > + #address-cells = <1>; > + #size-cells = <0>; > + status = "okay"; > + > + ports { > + #address-cells = <1>; > + #size-cells = <0>; > + > + mipi_out: port@1 { > + reg = <1>; > + > + mipi_out_panel: endpoint { > + remote-endpoint = <&mipi_in_panel>; > + }; > + }; > + }; > + > + panel: panel@0 { > + /* different resolution panels are used, compatibles are in DTO */ then I guess, the panel node should get a disabled here (and the mipi_dsi should stay disabled at this point) and both should get enabled in the final dtbo where the compatible lives? > + reg = <0>; > + backlight = <&backlight>; > + vdd-supply = <&lcd_3v3>; > + vccio-supply = <&vcc_1v8_s0>; > + reset-gpios = <&gpio1 RK_PC2 GPIO_ACTIVE_HIGH>; > + pinctrl-names = "default"; > + pinctrl-0 = <&lcd_panel_reset>; > + > + port { > + mipi_in_panel: endpoint { > + remote-endpoint = <&mipi_out_panel>; > + }; > + }; > + }; > +}; > + > +&pinctrl { > + lcd { > + lcd_panel_reset: lcd-panel-reset { > + rockchip,pins = <1 RK_PC2 RK_FUNC_GPIO &pcfg_pull_up>; > + }; > + }; > +}; > + > +&pwm2 { > + status = "okay"; > +}; >