On Thu, Jul 24, 2025 at 4:40 PM AngeloGioacchino Del Regno <angelogioacchino.delre...@collabora.com> wrote: > > Not all of the kukui machines have got a real DSI panel, infact, > some of those have got a DSI to eDP bridge instead: this means > that the address and size cells are necessary in the first case > but unnecessary in the latter. > > Instead of adding a bunch of /delete-node/ which would impact on > human readability, move the entire panel node declaration to each > of the relevant Kukui machine dtsi: even though this introduces > some duplication, the advantages in readability surclass that.
This is just an artifact of the lineage. Kukui the original design was a tablet with MIPI DSI panels. Then the Jacuzzi clamshell design with eDP panels was derived from that. If we really don't like the duplication, maybe we could introduce a `mt8183-kukui-tablet.dtsi` file for the bits that are specific to the tablet design. > Signed-off-by: AngeloGioacchino Del Regno > <angelogioacchino.delre...@collabora.com> Reviewed-by: Chen-Yu Tsai <we...@chromium.org> > --- > .../dts/mediatek/mt8183-kukui-jacuzzi.dtsi | 5 ---- > .../dts/mediatek/mt8183-kukui-kakadu.dtsi | 27 ++++++++++++++++++ > .../dts/mediatek/mt8183-kukui-kodama.dtsi | 28 +++++++++++++++++++ > .../boot/dts/mediatek/mt8183-kukui-krane.dtsi | 28 +++++++++++++++++++ > .../arm64/boot/dts/mediatek/mt8183-kukui.dtsi | 23 --------------- > 5 files changed, 83 insertions(+), 28 deletions(-) > > diff --git a/arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi.dtsi > b/arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi.dtsi > index f2afca63c75a..1b74ec171c10 100644 > --- a/arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi.dtsi > +++ b/arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi.dtsi > @@ -93,11 +93,6 @@ cros_ec_pwm: pwm { > }; > }; > > -&dsi0 { > - status = "okay"; > - /delete-node/panel@0; > -}; > - > &dsi_out { > remote-endpoint = <&anx7625_in>; > }; > diff --git a/arch/arm64/boot/dts/mediatek/mt8183-kukui-kakadu.dtsi > b/arch/arm64/boot/dts/mediatek/mt8183-kukui-kakadu.dtsi > index 472d4987615a..d71972c94e42 100644 > --- a/arch/arm64/boot/dts/mediatek/mt8183-kukui-kakadu.dtsi > +++ b/arch/arm64/boot/dts/mediatek/mt8183-kukui-kakadu.dtsi > @@ -61,6 +61,33 @@ &bluetooth { > firmware-name = "nvm_00440302_i2s_eu.bin"; > }; > > +&dsi0 { > + #address-cells = <1>; > + #size-cells = <0>; > + > + panel: panel@0 { > + /* compatible will be set in board dts */ > + reg = <0>; > + enable-gpios = <&pio 45 0>; > + pinctrl-names = "default"; > + pinctrl-0 = <&panel_pins_default>; > + avdd-supply = <&ppvarn_lcd>; > + avee-supply = <&ppvarp_lcd>; > + pp1800-supply = <&pp1800_lcd>; > + backlight = <&backlight_lcd0>; > + rotation = <270>; > + port { > + panel_in: endpoint { > + remote-endpoint = <&dsi_out>; > + }; > + }; > + }; > +}; > + > +&dsi_out { > + remote-endpoint = <&panel_in>; > +}; > + > &i2c0 { > status = "okay"; > }; > diff --git a/arch/arm64/boot/dts/mediatek/mt8183-kukui-kodama.dtsi > b/arch/arm64/boot/dts/mediatek/mt8183-kukui-kodama.dtsi > index 1b21e3958061..b702ff066636 100644 > --- a/arch/arm64/boot/dts/mediatek/mt8183-kukui-kodama.dtsi > +++ b/arch/arm64/boot/dts/mediatek/mt8183-kukui-kodama.dtsi > @@ -42,6 +42,34 @@ pp1800_lcd: pp1800-lcd { > }; > }; > > +&dsi0 { > + #address-cells = <1>; > + #size-cells = <0>; > + status = "okay"; > + > + panel: panel@0 { > + /* compatible will be set in board dts */ > + reg = <0>; > + enable-gpios = <&pio 45 0>; > + pinctrl-names = "default"; > + pinctrl-0 = <&panel_pins_default>; > + avdd-supply = <&ppvarn_lcd>; > + avee-supply = <&ppvarp_lcd>; > + pp1800-supply = <&pp1800_lcd>; > + backlight = <&backlight_lcd0>; > + rotation = <270>; > + port { > + panel_in: endpoint { > + remote-endpoint = <&dsi_out>; > + }; > + }; > + }; > +}; > + > +&dsi_out { > + remote-endpoint = <&panel_in>; > +}; > + > &i2c0 { > status = "okay"; > > diff --git a/arch/arm64/boot/dts/mediatek/mt8183-kukui-krane.dtsi > b/arch/arm64/boot/dts/mediatek/mt8183-kukui-krane.dtsi > index a85c73b43195..b6cfcafd8b06 100644 > --- a/arch/arm64/boot/dts/mediatek/mt8183-kukui-krane.dtsi > +++ b/arch/arm64/boot/dts/mediatek/mt8183-kukui-krane.dtsi > @@ -45,6 +45,34 @@ &bluetooth { > firmware-name = "nvm_00440302_i2s_eu.bin"; > }; > > +&dsi0 { > + #address-cells = <1>; > + #size-cells = <0>; > + status = "okay"; > + > + panel: panel@0 { > + /* compatible will be set in board dts */ > + reg = <0>; > + enable-gpios = <&pio 45 0>; > + pinctrl-names = "default"; > + pinctrl-0 = <&panel_pins_default>; > + avdd-supply = <&ppvarn_lcd>; > + avee-supply = <&ppvarp_lcd>; > + pp1800-supply = <&pp1800_lcd>; > + backlight = <&backlight_lcd0>; > + rotation = <270>; > + port { > + panel_in: endpoint { > + remote-endpoint = <&dsi_out>; > + }; > + }; > + }; > +}; > + > +&dsi_out { > + remote-endpoint = <&panel_in>; > +}; > + > &i2c0 { > status = "okay"; > > diff --git a/arch/arm64/boot/dts/mediatek/mt8183-kukui.dtsi > b/arch/arm64/boot/dts/mediatek/mt8183-kukui.dtsi > index 8f3a0e85b4ed..4ac0a60fdd24 100644 > --- a/arch/arm64/boot/dts/mediatek/mt8183-kukui.dtsi > +++ b/arch/arm64/boot/dts/mediatek/mt8183-kukui.dtsi > @@ -252,29 +252,6 @@ &cpu7 { > > &dsi0 { > status = "okay"; > - #address-cells = <1>; > - #size-cells = <0>; > - panel: panel@0 { > - /* compatible will be set in board dts */ > - reg = <0>; > - enable-gpios = <&pio 45 0>; > - pinctrl-names = "default"; > - pinctrl-0 = <&panel_pins_default>; > - avdd-supply = <&ppvarn_lcd>; > - avee-supply = <&ppvarp_lcd>; > - pp1800-supply = <&pp1800_lcd>; > - backlight = <&backlight_lcd0>; > - rotation = <270>; > - port { > - panel_in: endpoint { > - remote-endpoint = <&dsi_out>; > - }; > - }; > - }; > -}; > - > -&dsi_out { > - remote-endpoint = <&panel_in>; > }; > > &gic { > -- > 2.50.1 >