From 7a51406c577e17e1db32dc25cf772e3cd46a5cd9 Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Fri, 23 Oct 2020 14:15:41 +0100 Subject: [PATCH 1/4] overlays: Add option to disable composite to vc4-kms-v3d Composite gets enabled automatically if HDMI isn't detected, which can cause some grief in X should it be not connected and touchscreens are in use. Signed-off-by: Dave Stevenson --- arch/arm/boot/dts/overlays/README | 2 ++ arch/arm/boot/dts/overlays/vc4-kms-v3d-overlay.dts | 1 + 2 files changed, 3 insertions(+) diff --git a/arch/arm/boot/dts/overlays/README b/arch/arm/boot/dts/overlays/README index eff90baed40682..626469826e0a6d 100644 --- a/arch/arm/boot/dts/overlays/README +++ b/arch/arm/boot/dts/overlays/README @@ -2949,6 +2949,8 @@ Params: cma-512 CMA is 512MB (needs 1GB) cma-default Use upstream's default value audio Enable or disable audio over HDMI (default "on") noaudio Disable all HDMI audio (default "off") + nocomposite Disable the composite video output (default + "off") Name: vc4-kms-v3d-pi4 diff --git a/arch/arm/boot/dts/overlays/vc4-kms-v3d-overlay.dts b/arch/arm/boot/dts/overlays/vc4-kms-v3d-overlay.dts index 6d34a2bff49b69..5a4efdeed66336 100644 --- a/arch/arm/boot/dts/overlays/vc4-kms-v3d-overlay.dts +++ b/arch/arm/boot/dts/overlays/vc4-kms-v3d-overlay.dts @@ -118,5 +118,6 @@ __overrides__ { audio = <0>,"!13", <0>,"=14"; noaudio = <0>,"=13", <0>,"!14"; + nocomposite = <0>, "!11"; }; }; From 91890cc10e6a6b32cadfc828bdd610600b88c664 Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Wed, 11 Mar 2020 12:07:57 +0000 Subject: [PATCH 2/4] overlays: imx219: Correct link frequency to match the upstream driver The upstream driver is checking the link frequency parameter, and the overlay had the wrong value. Signed-off-by: Dave Stevenson --- arch/arm/boot/dts/overlays/imx219-overlay.dts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/boot/dts/overlays/imx219-overlay.dts b/arch/arm/boot/dts/overlays/imx219-overlay.dts index 3484bde5a9e869..dce07b335c4e87 100644 --- a/arch/arm/boot/dts/overlays/imx219-overlay.dts +++ b/arch/arm/boot/dts/overlays/imx219-overlay.dts @@ -36,7 +36,7 @@ data-lanes = <1 2>; clock-noncontinuous; link-frequencies = - /bits/ 64 <297000000>; + /bits/ 64 <456000000>; }; }; }; From 6e6889469dd1b8e59674721dd7a32b7b7deca5da Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Fri, 23 Oct 2020 15:45:11 +0100 Subject: [PATCH 3/4] dts: Add CM4 to arm64 dt files Signed-off-by: Dave Stevenson --- arch/arm64/boot/dts/broadcom/Makefile | 3 ++- arch/arm64/boot/dts/broadcom/bcm2711-rpi-cm4.dts | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) create mode 100644 arch/arm64/boot/dts/broadcom/bcm2711-rpi-cm4.dts diff --git a/arch/arm64/boot/dts/broadcom/Makefile b/arch/arm64/boot/dts/broadcom/Makefile index c3eaf8d63ee4a1..1e861e2bf2e0ed 100644 --- a/arch/arm64/boot/dts/broadcom/Makefile +++ b/arch/arm64/boot/dts/broadcom/Makefile @@ -7,7 +7,8 @@ dtb-$(CONFIG_ARCH_BCM2709) += bcm2710-rpi-2-b.dtb dtb-$(CONFIG_ARCH_BCM2709) += bcm2710-rpi-3-b.dtb dtb-$(CONFIG_ARCH_BCM2835) += bcm2710-rpi-2-b.dtb dtb-$(CONFIG_ARCH_BCM2835) += bcm2710-rpi-3-b.dtb -dtb-$(CONFIG_ARCH_BCM2835) += bcm2711-rpi-4-b.dtb +dtb-$(CONFIG_ARCH_BCM2835) += bcm2711-rpi-4-b.dtb \ + bcm2711-rpi-cm4.dtb dtb-$(CONFIG_ARCH_BCM2835) += bcm2710-rpi-3-b-plus.dtb dtb-$(CONFIG_ARCH_BCM2709) += bcm2710-rpi-cm3.dtb dtb-$(CONFIG_ARCH_BCM2835) += bcm2710-rpi-cm3.dtb diff --git a/arch/arm64/boot/dts/broadcom/bcm2711-rpi-cm4.dts b/arch/arm64/boot/dts/broadcom/bcm2711-rpi-cm4.dts new file mode 100644 index 00000000000000..8064a58155f1be --- /dev/null +++ b/arch/arm64/boot/dts/broadcom/bcm2711-rpi-cm4.dts @@ -0,0 +1 @@ +#include "../../../../arm/boot/dts/bcm2711-rpi-cm4.dts" From cf6e066ba49d3cdba448324e850f5c8a0c46815e Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Mon, 26 Oct 2020 12:38:27 +0000 Subject: [PATCH 4/4] drm/vc4: Add the 2711 HVS as a suitable DMA node With vc4-drv node not being under /soc on Pi4, we need to adopt the correct DMA parameters from a suitable sub-component. Add "brcm,bcm2711-hvs" to that list of components. Signed-off-by: Dave Stevenson --- drivers/gpu/drm/vc4/vc4_drv.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/gpu/drm/vc4/vc4_drv.c b/drivers/gpu/drm/vc4/vc4_drv.c index 74c36e3b955c14..9d19c76bb97716 100644 --- a/drivers/gpu/drm/vc4/vc4_drv.c +++ b/drivers/gpu/drm/vc4/vc4_drv.c @@ -248,6 +248,7 @@ static void vc4_match_add_drivers(struct device *dev, const struct of_device_id vc4_dma_range_matches[] = { { .compatible = "brcm,bcm2835-hvs" }, + { .compatible = "brcm,bcm2711-hvs" }, { .compatible = "raspberrypi,rpi-firmware-kms" }, { .compatible = "brcm,bcm2835-v3d" }, { .compatible = "brcm,cygnus-v3d" },