arm-trusted-firmware/plat/imx/common
Anson Huang e655fefcea imx: make sure GIC redistributor is awake before initialization
GICR_WAKER.ProcessorSleep can only be set to zero when:
— GICR_WAKER.Sleep bit[0] == 0.
— GICR_WAKER.Quiescent bit[31] == 0.

On some platforms, when system reboot with GIC in sleep
mode but with power ON, such as on NXP's i.MX8QM, Linux
kernel enters suspend but could be requested to reboot,
and GIC is in sleep mode and it is inside a power domain
which is ON in this scenario, when CPU reset, the GIC
driver trys to set CORE's redistributor interface to awake,
with GICR_WAKER.Sleep bit[0] and GICR_WAKER.Quiescent bit[31]
both set, the ProcessorSleep bit[1] will never be clear
and cause system hang.

This patch makes sure GICR_WAKER.Sleep bit[0] and
GICR_WAKER.Quiescent bit[31] are both zeor before clearing
ProcessorSleep bit[1].

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
2019-03-01 14:22:23 +08:00
..
aarch32 imx: warp7: Migrate to MULTI_CONSOLE_API 2019-02-12 18:56:29 +08:00
include imx: power optimization for i.mx8qm 2019-01-29 09:26:41 +08:00
sci imx: power optimization for i.mx8qm 2019-01-29 09:26:41 +08:00
imx7_clock.c imx7: imx7_clock: usb: Initialize the USB core clocks 2018-09-04 13:36:23 +01:00
imx8_helpers.S Add plat_crash_console_flush to platforms without it 2018-10-25 09:56:09 +01:00
imx8_psci.c imx: power optimization for i.mx8qm 2019-01-29 09:26:41 +08:00
imx8_topology.c Sanitise includes across codebase 2019-01-04 10:43:17 +00:00
imx_aips.c Sanitise includes across codebase 2019-01-04 10:43:17 +00:00
imx_caam.c Sanitise includes across codebase 2019-01-04 10:43:17 +00:00
imx_clock.c Sanitise includes across codebase 2019-01-04 10:43:17 +00:00
imx_csu.c Sanitise includes across codebase 2019-01-04 10:43:17 +00:00
imx_io_mux.c Sanitise includes across codebase 2019-01-04 10:43:17 +00:00
imx_sip_handler.c imx: add i.MX8 SoCs build info SIP(silicon provider) service support 2019-01-18 11:23:04 +08:00
imx_sip_svc.c imx: add i.MX8 SoCs build info SIP(silicon provider) service support 2019-01-18 11:23:04 +08:00
imx_snvs.c Sanitise includes across codebase 2019-01-04 10:43:17 +00:00
imx_uart_console.S imx: make imx uart work for debug mode 2019-01-15 14:32:31 +08:00
imx_wdog.c Sanitise includes across codebase 2019-01-04 10:43:17 +00:00
lpuart_console.S imx: add necessary lpuart console_flush callback for debug 2019-01-15 13:58:59 +08:00
plat_imx8_gic.c imx: make sure GIC redistributor is awake before initialization 2019-03-01 14:22:23 +08:00