Commit aa1e8ec1 authored by Catalin Marinas's avatar Catalin Marinas

arm64: vexpress: Add support for poweroff/restart

This patch adds the arm_pm_poweroff definition expected by the
vexpress-poweroff.c driver and enables the latter for arm64.
Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
Acked-by: default avatarPawel Moll <pawel.moll@arm.com>
parent c4188edc
...@@ -32,6 +32,8 @@ config ARM64 ...@@ -32,6 +32,8 @@ config ARM64
select OF select OF
select OF_EARLY_FLATTREE select OF_EARLY_FLATTREE
select PERF_USE_VMALLOC select PERF_USE_VMALLOC
select POWER_RESET
select POWER_SUPPLY
select RTC_LIB select RTC_LIB
select SPARSE_IRQ select SPARSE_IRQ
select SYSCTL_EXCEPTION_TRACE select SYSCTL_EXCEPTION_TRACE
...@@ -106,6 +108,7 @@ config ARCH_VEXPRESS ...@@ -106,6 +108,7 @@ config ARCH_VEXPRESS
bool "ARMv8 software model (Versatile Express)" bool "ARMv8 software model (Versatile Express)"
select ARCH_REQUIRE_GPIOLIB select ARCH_REQUIRE_GPIOLIB
select COMMON_CLK_VERSATILE select COMMON_CLK_VERSATILE
select POWER_RESET_VEXPRESS
select VEXPRESS_CONFIG select VEXPRESS_CONFIG
help help
This enables support for the ARMv8 software model (Versatile This enables support for the ARMv8 software model (Versatile
......
...@@ -41,7 +41,7 @@ extern void show_pte(struct mm_struct *mm, unsigned long addr); ...@@ -41,7 +41,7 @@ extern void show_pte(struct mm_struct *mm, unsigned long addr);
extern void __show_regs(struct pt_regs *); extern void __show_regs(struct pt_regs *);
void soft_restart(unsigned long); void soft_restart(unsigned long);
extern void (*pm_restart)(const char *cmd); extern void (*arm_pm_restart)(char str, const char *cmd);
#define UDBG_UNDEFINED (1 << 0) #define UDBG_UNDEFINED (1 << 0)
#define UDBG_SYSCALL (1 << 1) #define UDBG_SYSCALL (1 << 1)
......
...@@ -81,8 +81,8 @@ void soft_restart(unsigned long addr) ...@@ -81,8 +81,8 @@ void soft_restart(unsigned long addr)
void (*pm_power_off)(void); void (*pm_power_off)(void);
EXPORT_SYMBOL_GPL(pm_power_off); EXPORT_SYMBOL_GPL(pm_power_off);
void (*pm_restart)(const char *cmd); void (*arm_pm_restart)(char str, const char *cmd);
EXPORT_SYMBOL_GPL(pm_restart); EXPORT_SYMBOL_GPL(arm_pm_restart);
/* /*
...@@ -164,8 +164,8 @@ void machine_restart(char *cmd) ...@@ -164,8 +164,8 @@ void machine_restart(char *cmd)
local_fiq_disable(); local_fiq_disable();
/* Now call the architecture specific reboot code. */ /* Now call the architecture specific reboot code. */
if (pm_restart) if (arm_pm_restart)
pm_restart(cmd); arm_pm_restart('h', cmd);
/* /*
* Whoops - the architecture was unable to reboot. * Whoops - the architecture was unable to reboot.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment