[U-Boot] [PATCH 3/4] sunxi: Implement poweroff support for axp209 pmic

Hans de Goede hdegoede at redhat.com
Sun Dec 20 16:41:34 CET 2015


From: Michael van Slingerland <michael at deviousops.nl>

Adds poweroff support for axp209 pmic.

Signed-off-by: Michael van Slingerland <michael at deviousops.nl>
Signed-off-by: Hans de Goede <hdegoede at redhat.com>
---
 drivers/power/Kconfig  |  1 +
 drivers/power/axp209.c | 12 ++++++++++++
 2 files changed, 13 insertions(+)

diff --git a/drivers/power/Kconfig b/drivers/power/Kconfig
index de32828..52c9e61 100644
--- a/drivers/power/Kconfig
+++ b/drivers/power/Kconfig
@@ -28,6 +28,7 @@ config AXP152_POWER
 config AXP209_POWER
 	boolean "axp209 pmic support"
 	depends on MACH_SUN4I || MACH_SUN5I || MACH_SUN7I
+	select CMD_POWEROFF
 	---help---
 	Select this to enable support for the axp209 pmic found on most
 	A10, A13 and A20 boards.
diff --git a/drivers/power/axp209.c b/drivers/power/axp209.c
index 71aa000..fc162a1 100644
--- a/drivers/power/axp209.c
+++ b/drivers/power/axp209.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <command.h>
 #include <asm/arch/pmic_bus.h>
 #include <axp_pmic.h>
 
@@ -168,3 +169,14 @@ int axp_init(void)
 
 	return 0;
 }
+
+int do_poweroff(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
+{
+	pmic_bus_write(AXP209_SHUTDOWN, AXP209_POWEROFF);
+
+	/* infinite loop during shutdown */
+	while (1) {}
+
+	/* not reached */
+	return 0;
+}
-- 
2.5.0



More information about the U-Boot mailing list