[PATCH] arm64: dts: broadcom: bcm2712: adjust display status
Stefan Wahren
wahrenst at gmx.net
Wed Sep 24 03:52:41 PDT 2025
Hi Peter,
Am 24.09.25 um 10:57 schrieb Peter Robinson:
> Typically non critical IP in a SoC are disabled by
> default in the SoC .dtsi and enabled on board specific
> configs. There are usecases, such as some CM5 carrier
> boards, where display output may not be desired or
> connected. So disable them on the SoC .dtsi and enable
> them on the RPi5 board.
>
> Signed-off-by: Peter Robinson <pbrobinson at gmail.com>
> Cc: Dave Stevenson <dave.stevenson at raspberrypi.com>
> Cc: Andrea della Porta <andrea.porta at suse.com>
> Fixes: 25d77bdd7df2 ("arm64: dts: broadcom: Add display pipeline support to BCM2712")
I'm fine with this change in general, but I don't think this is a fix.
Especially there is no CM5 support upstream yet.
Except of this:
Reviewed-by: Stefan Wahren <wahrenst at gmx.net>
> ---
> .../dts/broadcom/bcm2712-rpi-5-b-ovl-rp1.dts | 31 +++++++++++++++++++
> arch/arm64/boot/dts/broadcom/bcm2712.dtsi | 11 +++++++
> 2 files changed, 42 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b-ovl-rp1.dts b/arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b-ovl-rp1.dts
> index 6ea3c102e0d67..359c262b8d956 100644
> --- a/arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b-ovl-rp1.dts
> +++ b/arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b-ovl-rp1.dts
> @@ -97,19 +97,42 @@ power: power {
> };
> };
>
> +&ddc0 {
> + status = "okay";
> +};
> +
> +&ddc1 {
> + status = "okay";
> +};
> +
> +&disp_intr {
> + status = "okay";
> +};
> +
> &hvs {
> clocks = <&firmware_clocks 4>, <&firmware_clocks 16>;
> clock-names = "core", "disp";
> + status = "okay";
> };
>
> &hdmi0 {
> clocks = <&firmware_clocks 13>, <&firmware_clocks 14>, <&dvp 0>, <&clk_27MHz>;
> clock-names = "hdmi", "bvb", "audio", "cec";
> + status = "okay";
> };
>
> &hdmi1 {
> clocks = <&firmware_clocks 13>, <&firmware_clocks 14>, <&dvp 1>, <&clk_27MHz>;
> clock-names = "hdmi", "bvb", "audio", "cec";
> + status = "okay";
> +};
> +
> +&mop {
> + status = "okay";
> +};
> +
> +&moplet {
> + status = "okay";
> };
>
> &pcie1 {
> @@ -119,3 +142,11 @@ &pcie1 {
> &pcie2 {
> status = "okay";
> };
> +
> +&pixelvalve0 {
> + status = "okay";
> +};
> +
> +&pixelvalve1 {
> + status = "okay";
> +};
> diff --git a/arch/arm64/boot/dts/broadcom/bcm2712.dtsi b/arch/arm64/boot/dts/broadcom/bcm2712.dtsi
> index 4cae17c04b50a..4cd51d80d40d0 100644
> --- a/arch/arm64/boot/dts/broadcom/bcm2712.dtsi
> +++ b/arch/arm64/boot/dts/broadcom/bcm2712.dtsi
> @@ -287,12 +287,14 @@ pixelvalve0: pixelvalve at 7c410000 {
> compatible = "brcm,bcm2712-pixelvalve0";
> reg = <0x7c410000 0x100>;
> interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
> + status = "disabled";
> };
>
> pixelvalve1: pixelvalve at 7c411000 {
> compatible = "brcm,bcm2712-pixelvalve1";
> reg = <0x7c411000 0x100>;
> interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
> + status = "disabled";
> };
>
> mop: mop at 7c500000 {
> @@ -300,6 +302,7 @@ mop: mop at 7c500000 {
> reg = <0x7c500000 0x28>;
> interrupt-parent = <&disp_intr>;
> interrupts = <1>;
> + status = "disabled";
> };
>
> moplet: moplet at 7c501000 {
> @@ -307,6 +310,7 @@ moplet: moplet at 7c501000 {
> reg = <0x7c501000 0x20>;
> interrupt-parent = <&disp_intr>;
> interrupts = <0>;
> + status = "disabled";
> };
>
> disp_intr: interrupt-controller at 7c502000 {
> @@ -315,6 +319,7 @@ disp_intr: interrupt-controller at 7c502000 {
> interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
> interrupt-controller;
> #interrupt-cells = <1>;
> + status = "disabled";
> };
>
> dvp: clock at 7c700000 {
> @@ -333,6 +338,7 @@ ddc0: i2c at 7d508200 {
> clock-frequency = <97500>;
> #address-cells = <1>;
> #size-cells = <0>;
> + status = "disabled";
> };
>
> ddc1: i2c at 7d508280 {
> @@ -343,6 +349,7 @@ ddc1: i2c at 7d508280 {
> clock-frequency = <97500>;
> #address-cells = <1>;
> #size-cells = <0>;
> + status = "disabled";
> };
>
> bsc_irq: interrupt-controller at 7d508380 {
> @@ -388,6 +395,7 @@ hdmi0: hdmi at 7c701400 {
> interrupt-names = "cec-tx", "cec-rx", "cec-low",
> "hpd-connected", "hpd-removed";
> ddc = <&ddc0>;
> + status = "disabled";
> };
>
> hdmi1: hdmi at 7c706400 {
> @@ -417,6 +425,7 @@ hdmi1: hdmi at 7c706400 {
> interrupt-names = "cec-tx", "cec-rx", "cec-low",
> "hpd-connected", "hpd-removed";
> ddc = <&ddc1>;
> + status = "disabled";
> };
> };
>
> @@ -439,6 +448,7 @@ axi: axi {
>
> vc4: gpu {
> compatible = "brcm,bcm2712-vc6";
> + status = "disabled";
> };
>
> pcie0: pcie at 1000100000 {
> @@ -611,5 +621,6 @@ hvs: hvs at 107c580000 {
> interrupt-parent = <&disp_intr>;
> interrupts = <2>, <9>, <16>;
> interrupt-names = "ch0-eof", "ch1-eof", "ch2-eof";
> + status = "disabled";
> };
> };
More information about the linux-arm-kernel
mailing list