From 004f1d339d3cc919fe606a38cab443d39d82772b Mon Sep 17 00:00:00 2001 From: Anson Huang Date: Wed, 7 Mar 2018 11:37:51 +0800 Subject: [PATCH] MLK-17696 imx8qm/qxp: change system resource name according to SCFW change SCFW commit (0d43db9 SCF-22: Move SCU controls to SYSTEM. Allows AP to use SCU temp sensor) changes system resource name from SC_R_SC_PID0 to SC_R_SYSTEM, need to change it accordingly to avoid system incorrect system type got from SCFW and cause linux kernel booting fail as below: Starting kernel ... [ 0.000000] Booting Linux on physical CPU 0x0 [ 0.000000] Linux version 4.9.51-04508-g9caddc6 (anson@anson-OptiPlex-790) (gcc version 4.9.1 20140529 (prerelease) (c8 [ 0.000000] Boot CPU: AArch64 Processor [410fd034] [ 0.000000] earlycon: lpuart32 at MMIO 0x000000005a060000 (options '115200,115200') [ 0.000000] bootconsole [lpuart32] enabled [ 0.000000] Bad mode in Error handler detected on CPU0, code 0xbf000002 -- SError [ 0.000000] Internal error: Oops - bad mode: 0 [#1] PREEMPT SMP [ 0.000000] Modules linked in: [ 0.000000] CPU: 0 PID: 0 Comm: swapper Not tainted 4.9.51-04508-g9caddc6 #40 [ 0.000000] Hardware name: Freescale i.MX8QM MEK (DT) [ 0.000000] task: ffff000009270780 task.stack: ffff000009260000 [ 0.000000] PC is at setup_arch+0xf4/0x578 [ 0.000000] LR is at setup_arch+0xf0/0x578 [ 0.000000] pc : [] lr : [] pstate: 000000c5 [ 0.000000] sp : ffff000009263f20 [ 0.000000] x29: ffff000009263f20 x28: 0000000081350018 [ 0.000000] x27: 00000000ffe93f58 x26: 0000000000000000 [ 0.000000] x25: 00000000ffefe110 x24: 0000000000000000 [ 0.000000] x23: 0000000000000000 x22: ffff000009267000 [ 0.000000] x21: ffff7dfffe800000 x20: ffff000009284000 [ 0.000000] x19: ffff000008080000 x18: 0000000000000077 [ 0.000000] x17: 0000000000002c00 x16: 0000000000001000 [ 0.000000] x15: ffffffffffffffff x14: 0000000000000000 [ 0.000000] x13: 0000000000000007 x12: 0000000000000018 [ 0.000000] x11: 0000000000000007 x10: 0101010101010101 [ 0.000000] x9 : ffffffffffffffff x8 : 0000000000000008 [ 0.000000] x7 : 0000000000000007 x6 : 0000008080808080 [ 0.000000] x5 : 000000000000005f x4 : 0000000000000072 [ 0.000000] x3 : 0000000000000000 x2 : 0000000000000072 [ 0.000000] x1 : 0000000000000000 x0 : 0000000000000001 Signed-off-by: Anson Huang Reviewed-by: Ye Li --- arch/arm/cpu/armv8/imx8/cpu.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/cpu/armv8/imx8/cpu.c b/arch/arm/cpu/armv8/imx8/cpu.c index ca5ebc423f..178b72f112 100644 --- a/arch/arm/cpu/armv8/imx8/cpu.c +++ b/arch/arm/cpu/armv8/imx8/cpu.c @@ -37,7 +37,7 @@ u32 get_cpu_rev(void) ipcHndl = gd->arch.ipc_channel_handle; - err = sc_misc_get_control(ipcHndl, SC_R_SC_PID0, SC_C_ID, &id); + err = sc_misc_get_control(ipcHndl, SC_R_SYSTEM, SC_C_ID, &id); if (err != SC_ERR_NONE) return 0; -- 2.17.1