MIPS: Alchemy: sleepcode without compile-time cputype dependencies

Split the low-level sleepcode into per-cpu functions instead of
relying on compile-time-defined cpu type.

Signed-off-by: Manuel Lauss <manuel.lauss@gmail.com>
To: Linux-MIPS <linux-mips@linux-mips.org>
Patchwork: http://patchwork.linux-mips.org/patch/1281/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
This commit is contained in:
Manuel Lauss
2010-05-24 19:42:52 +02:00
committed by Ralf Baechle
parent c9f84873c1
commit 2e93d1ec08
3 changed files with 64 additions and 32 deletions

View File

@@ -193,9 +193,15 @@ static void restore_core_regs(void)
void au_sleep(void)
{
save_core_regs();
au1xxx_save_and_sleep();
restore_core_regs();
int cpuid = alchemy_get_cputype();
if (cpuid != ALCHEMY_CPU_UNKNOWN) {
save_core_regs();
if (cpuid <= ALCHEMY_CPU_AU1500)
alchemy_sleep_au1000();
else if (cpuid <= ALCHEMY_CPU_AU1200)
alchemy_sleep_au1550();
restore_core_regs();
}
}
#endif /* CONFIG_PM */