Currently the pfuze driver is build dependent to ARCH_IMX6. To make it possible to work with ARCH_IMX8 we move the imx6_poweroff call to an own poweroff handler. Signed-off-by: Michael Grzeschik <m.grzeschik@xxxxxxxxxxxxxx> --- arch/arm/mach-imx/imx6.c | 8 ++++++++ drivers/regulator/Kconfig | 2 +- drivers/regulator/pfuze.c | 2 -- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/arch/arm/mach-imx/imx6.c b/arch/arm/mach-imx/imx6.c index 41e0066add..8f1638c1ea 100644 --- a/arch/arm/mach-imx/imx6.c +++ b/arch/arm/mach-imx/imx6.c @@ -401,3 +401,11 @@ void __noreturn imx6_pm_stby_poweroff(void) while(1); } + +static int imx6_init(void) +{ + poweroff_handler_register_fn(imx6_pm_stby_poweroff); + + return 0; +} +coredevice_initcall(imx6_init); diff --git a/drivers/regulator/Kconfig b/drivers/regulator/Kconfig index 28bd69a2a5..f47a115da2 100644 --- a/drivers/regulator/Kconfig +++ b/drivers/regulator/Kconfig @@ -19,7 +19,7 @@ config REGULATOR_BCM283X config REGULATOR_PFUZE bool "Freescale PFUZE100/200/3000 regulator driver" depends on I2C - depends on ARCH_IMX6 + depends on ARCH_IMX6 || ARCH_IMX8MQ config REGULATOR_STPMIC1 tristate "STMicroelectronics STPMIC1 PMIC Regulators" diff --git a/drivers/regulator/pfuze.c b/drivers/regulator/pfuze.c index 55f7eb5d4c..91aaec0e7e 100644 --- a/drivers/regulator/pfuze.c +++ b/drivers/regulator/pfuze.c @@ -142,8 +142,6 @@ static void pfuze_power_off_prepare(struct poweroff_handler *handler) regmap_write_bits(pfuze_dev->map, PFUZE100_VGEN6VOL, PFUZE100_VGENxLPWR | PFUZE100_VGENxSTBY, PFUZE100_VGENxSTBY); - - imx6_pm_stby_poweroff(); } static struct regmap_bus regmap_pfuze_i2c_bus = { -- 2.25.0 _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox