summaryrefslogtreecommitdiff
path: root/arch/arm/boot/dts/vexpress-v2p-ca15_a7.dts
diff options
context:
space:
mode:
authorSudeep Holla <sudeep.holla@arm.com>2019-05-29 14:29:45 +0100
committerSudeep Holla <sudeep.holla@arm.com>2019-05-30 13:39:26 +0100
commit6f3710f1f65fdc0da2b042ea6a9a738ddd146d4e (patch)
treead70fa4d0d1832a20938a97ecae4c266d52c0910 /arch/arm/boot/dts/vexpress-v2p-ca15_a7.dts
parent8de9336f4b928e498e4e3ea50e12bf40acb95e5b (diff)
arm: dts: vexpress-v2p-ca15_a7: disable NOR flash node by default
Accessing the NOR flash memory from the kernel will disrupt CPU sleep/ idles states and CPU hotplugging. We need to disable this DT node by default. Setups that want to access the flash can modify this entry to enable the flash again but also ensuring to disable CPU idle states and CPU hotplug. The platform firmware assumes the flash is always in read mode while Linux kernel driver leaves NOR flash in "read id" mode after initialization. If it gets used actively, it can be in some other state. So far we had not seen this issue as the NOR flash drivers in kernel were not enabled by default. However it was enable in multi_v7 config by Commit 5f068190cc10 ("ARM: multi_v7_defconfig: Enable support for CFI NOR FLASH") So, let's mark the NOR flash disabled so that the platform can boot again. This based on: Commit 980bbff018f6 ("ARM64: juno: disable NOR flash node by default") Cc: Liviu Dudau <liviu.dudau@arm.com> Cc: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
Diffstat (limited to 'arch/arm/boot/dts/vexpress-v2p-ca15_a7.dts')
-rw-r--r--arch/arm/boot/dts/vexpress-v2p-ca15_a7.dts9
1 files changed, 9 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/vexpress-v2p-ca15_a7.dts b/arch/arm/boot/dts/vexpress-v2p-ca15_a7.dts
index 164c904c9992..1de0a658adf1 100644
--- a/arch/arm/boot/dts/vexpress-v2p-ca15_a7.dts
+++ b/arch/arm/boot/dts/vexpress-v2p-ca15_a7.dts
@@ -680,3 +680,12 @@
<0 3 &gic 0 39 4>;
};
};
+
+&nor_flash {
+ /*
+ * Unfortunately, accessing the flash disturbs the CPU idle states
+ * (suspend) and CPU hotplug of this platform. For this reason, flash
+ * hardware access is disabled by default on this platform alone.
+ */
+ status = "disabled";
+};