aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ipq40xx/patches-4.14/070-qcom-spm-fix-probe-order.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/ipq40xx/patches-4.14/070-qcom-spm-fix-probe-order.patch')
-rw-r--r--target/linux/ipq40xx/patches-4.14/070-qcom-spm-fix-probe-order.patch16
1 files changed, 16 insertions, 0 deletions
diff --git a/target/linux/ipq40xx/patches-4.14/070-qcom-spm-fix-probe-order.patch b/target/linux/ipq40xx/patches-4.14/070-qcom-spm-fix-probe-order.patch
new file mode 100644
index 0000000000..b7e375dfb2
--- /dev/null
+++ b/target/linux/ipq40xx/patches-4.14/070-qcom-spm-fix-probe-order.patch
@@ -0,0 +1,16 @@
+Check for SCM availability before attempting to use SPM
+
+Signed-off-by: Felix Fietkau <nbd@nbd.name>
+
+--- a/drivers/soc/qcom/spm.c
++++ b/drivers/soc/qcom/spm.c
+@@ -219,6 +219,9 @@ static int __init qcom_cpuidle_init(stru
+ cpumask_t mask;
+ bool use_scm_power_down = false;
+
++ if (!qcom_scm_is_available())
++ return -EPROBE_DEFER;
++
+ for (i = 0; ; i++) {
+ state_node = of_parse_phandle(cpu_node, "cpu-idle-states", i);
+ if (!state_node)