Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Merge tag 'imx-fixes-5.2' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into fixes

i.MX fixes for 5.2:
- A build fix for soc-imx8 driver which needs SOC_BUS support. To
avoid dealing with the dependency for every single i.MX SoC bus
driver, we selects at from architecture level.
- A fix on i.MX SCU firmware driver to ensure SCU irq is enabled only
after IPC is ready.
- A regression fix on cpuidle-imx6sx driver, which causes some
characters loss on serial communication.

* tag 'imx-fixes-5.2' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
ARM: imx: cpuidle-imx6sx: Restrict the SW2ISO increase to i.MX6SX
firmware: imx: SCU irq should ONLY be enabled after SCU IPC is ready
arm64: imx: Fix build error without CONFIG_SOC_BUS

Signed-off-by: Olof Johansson <olof@lixom.net>

+6 -1
+2 -1
arch/arm/mach-imx/cpuidle-imx6sx.c
··· 15 15 16 16 #include "common.h" 17 17 #include "cpuidle.h" 18 + #include "hardware.h" 18 19 19 20 static int imx6sx_idle_finish(unsigned long val) 20 21 { ··· 111 110 * except for power up sw2iso which need to be 112 111 * larger than LDO ramp up time. 113 112 */ 114 - imx_gpc_set_arm_power_up_timing(0xf, 1); 113 + imx_gpc_set_arm_power_up_timing(cpu_is_imx6sx() ? 0xf : 0x2, 1); 115 114 imx_gpc_set_arm_power_down_timing(1, 1); 116 115 117 116 return cpuidle_register(&imx6sx_cpuidle_driver, NULL);
+1
arch/arm64/Kconfig.platforms
··· 168 168 select IMX_GPCV2_PM_DOMAINS 169 169 select PM 170 170 select PM_GENERIC_DOMAINS 171 + select SOC_BUS 171 172 help 172 173 This enables support for the ARMv8 based SoCs in the 173 174 NXP i.MX family.
+3
drivers/firmware/imx/imx-scu-irq.c
··· 100 100 struct imx_sc_rpc_msg *hdr = &msg.hdr; 101 101 int ret; 102 102 103 + if (!imx_sc_irq_ipc_handle) 104 + return -EPROBE_DEFER; 105 + 103 106 hdr->ver = IMX_SC_RPC_VERSION; 104 107 hdr->svc = IMX_SC_RPC_SVC_IRQ; 105 108 hdr->func = IMX_SC_IRQ_FUNC_ENABLE;