diff --git a/Revert-ARM-dts-bcm2835-Add-the-DSI-module-nodes-and-.patch b/Revert-ARM-dts-bcm2835-Add-the-DSI-module-nodes-and-.patch new file mode 100644 index 000000000..235c39162 --- /dev/null +++ b/Revert-ARM-dts-bcm2835-Add-the-DSI-module-nodes-and-.patch @@ -0,0 +1,105 @@ +From 7d9e74c53a4376245b4f05006f42184a1540dee8 Mon Sep 17 00:00:00 2001 +From: Peter Robinson +Date: Tue, 18 Jul 2017 23:21:50 +0100 +Subject: [PATCH] Revert "ARM: dts: bcm2835: Add the DSI module nodes and + clocks." + +This reverts commit 4aba4cf820545ca8ec23785c7bac40bba7e505c5. +--- + arch/arm/boot/dts/bcm2835-rpi.dtsi | 8 ------- + arch/arm/boot/dts/bcm283x.dtsi | 48 +++----------------------------------- + 2 files changed, 3 insertions(+), 53 deletions(-) + +diff --git a/arch/arm/boot/dts/bcm2835-rpi.dtsi b/arch/arm/boot/dts/bcm2835-rpi.dtsi +index a7b5ce133784..e99bb149065f 100644 +--- a/arch/arm/boot/dts/bcm2835-rpi.dtsi ++++ b/arch/arm/boot/dts/bcm2835-rpi.dtsi +@@ -98,11 +98,3 @@ + power-domains = <&power RPI_POWER_DOMAIN_VEC>; + status = "okay"; + }; +- +-&dsi0 { +- power-domains = <&power RPI_POWER_DOMAIN_DSI0>; +-}; +- +-&dsi1 { +- power-domains = <&power RPI_POWER_DOMAIN_DSI1>; +-}; +diff --git a/arch/arm/boot/dts/bcm283x.dtsi b/arch/arm/boot/dts/bcm283x.dtsi +index 9444a9a9ba10..ce14c9ddf574 100644 +--- a/arch/arm/boot/dts/bcm283x.dtsi ++++ b/arch/arm/boot/dts/bcm283x.dtsi +@@ -98,13 +98,10 @@ + #clock-cells = <1>; + reg = <0x7e101000 0x2000>; + +- /* CPRMAN derives almost everything from the +- * platform's oscillator. However, the DSI +- * pixel clocks come from the DSI analog PHY. ++ /* CPRMAN derives everything from the platform's ++ * oscillator. + */ +- clocks = <&clk_osc>, +- <&dsi0 0>, <&dsi0 1>, <&dsi0 2>, +- <&dsi1 0>, <&dsi1 1>, <&dsi1 2>; ++ clocks = <&clk_osc>; + }; + + rng@7e104000 { +@@ -412,25 +409,6 @@ + interrupts = <2 14>; /* pwa1 */ + }; + +- dsi0: dsi@7e209000 { +- compatible = "brcm,bcm2835-dsi0"; +- reg = <0x7e209000 0x78>; +- interrupts = <2 4>; +- #address-cells = <1>; +- #size-cells = <0>; +- #clock-cells = <1>; +- +- clocks = <&clocks BCM2835_PLLA_DSI0>, +- <&clocks BCM2835_CLOCK_DSI0E>, +- <&clocks BCM2835_CLOCK_DSI0P>; +- clock-names = "phy", "escape", "pixel"; +- +- clock-output-names = "dsi0_byte", +- "dsi0_ddr2", +- "dsi0_ddr"; +- +- }; +- + thermal: thermal@7e212000 { + compatible = "brcm,bcm2835-thermal"; + reg = <0x7e212000 0x8>; +@@ -497,26 +475,6 @@ + interrupts = <2 1>; + }; + +- dsi1: dsi@7e700000 { +- compatible = "brcm,bcm2835-dsi1"; +- reg = <0x7e700000 0x8c>; +- interrupts = <2 12>; +- #address-cells = <1>; +- #size-cells = <0>; +- #clock-cells = <1>; +- +- clocks = <&clocks BCM2835_PLLD_DSI1>, +- <&clocks BCM2835_CLOCK_DSI1E>, +- <&clocks BCM2835_CLOCK_DSI1P>; +- clock-names = "phy", "escape", "pixel"; +- +- clock-output-names = "dsi1_byte", +- "dsi1_ddr2", +- "dsi1_ddr"; +- +- status = "disabled"; +- }; +- + i2c1: i2c@7e804000 { + compatible = "brcm,bcm2835-i2c"; + reg = <0x7e804000 0x1000>; +-- +2.13.3 + diff --git a/kernel.spec b/kernel.spec index 8197e8b39..1b9b4ae65 100644 --- a/kernel.spec +++ b/kernel.spec @@ -622,6 +622,10 @@ Patch319: arm-tegra-fix-gpu-iommu.patch # https://www.spinics.net/lists/linux-arm-msm/msg28203.html Patch320: qcom-display-iommu.patch +# This breaks RPi booting with a LPAE kernel, we don't support the DSI ports currently +# Revert it while I engage upstream to work out what's going on +Patch321: Revert-ARM-dts-bcm2835-Add-the-DSI-module-nodes-and-.patch + # 400 - IBM (ppc/s390x) patches # 500 - Temp fixes/CVEs etc @@ -2229,6 +2233,7 @@ fi * Tue Jul 18 2017 Peter Robinson - Add fix for Tegra GPU display with IOMMU - Add QCom IOMMU for Dragonboard display +- Fix Raspberry Pi booting with LPAE kernel * Mon Jul 17 2017 Justin M. Forbes - 4.12.2-100 - Linux v4.12.2