MLK-16118-8 imx8qm/qxp: Enable the power domain driver and update relevant codes
authorYe Li <ye.li@nxp.com>
Tue, 1 Aug 2017 10:25:19 +0000 (05:25 -0500)
committerJason Liu <jason.hui.liu@nxp.com>
Thu, 2 Nov 2017 18:37:06 +0000 (02:37 +0800)
commite1300c3e6b5511d38cd7b027c346471ffb1eb584
treed38e69d43ab80a164fa60dfa3dd68122a0b79f91
parenta4d334e70839021a50dca2ad4ad98ecee16081f9
MLK-16118-8 imx8qm/qxp: Enable the power domain driver and update relevant codes

This patch enables the power domain driver for i.MX8QM and QXP boards in defconfig files.
The devices with using DM driver will be powered on automatically by DM framework. So
we remove the power relevant codes for them.
For devices with non-DM drivers, we updates the board/SoC codes to use power domain driver API.
So that we can use power domain driver to manage them.

The only exceptions are:
1. UART0 at board_early_f, this is very early stage, that power domain is not ready.
2. Power up secondary cores and M4 cores. These resources are not peripherals and
   are not in power domain tree.

Additional, benefiting from power domain driver, We have implemented the function "power_off_pd_devices"
to power off all active devices. No need to explicitly power off them in board_quiesce_devices.

Reviewed-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Ye Li <ye.li@nxp.com>
14 files changed:
arch/arm/cpu/armv8/imx8/clock.c
arch/arm/cpu/armv8/imx8/cpu.c
arch/arm/cpu/armv8/imx8/video_common.c
arch/arm/include/asm/arch-imx8/i2c.h
arch/arm/include/asm/arch-imx8/sys_proto.h
board/freescale/imx8qm_arm2/imx8qm_arm2.c
board/freescale/imx8qxp_arm2/imx8qxp_arm2.c
board/freescale/imx8qxp_mek/imx8qxp_mek.c
configs/imx8qm_lpddr4_arm2_defconfig
configs/imx8qxp_lpddr4_arm2_defconfig
configs/imx8qxp_mek_defconfig
configs/mx8qm_lpddr4_arm2_android_defconfig
configs/mx8qxp_lpddr4_arm2_android_defconfig
configs/mx8qxp_mek_android_defconfig