diff options
Diffstat (limited to 'arch/mips/alchemy/common/power.c')
| -rw-r--r-- | arch/mips/alchemy/common/power.c | 22 | 
1 files changed, 14 insertions, 8 deletions
diff --git a/arch/mips/alchemy/common/power.c b/arch/mips/alchemy/common/power.c index 647e518c90bc..b86324a42601 100644 --- a/arch/mips/alchemy/common/power.c +++ b/arch/mips/alchemy/common/power.c @@ -158,15 +158,21 @@ static void restore_core_regs(void)  void au_sleep(void)  { -	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(); +	save_core_regs(); + +	switch (alchemy_get_cputype()) { +	case ALCHEMY_CPU_AU1000: +	case ALCHEMY_CPU_AU1500: +	case ALCHEMY_CPU_AU1100: +		alchemy_sleep_au1000(); +		break; +	case ALCHEMY_CPU_AU1550: +	case ALCHEMY_CPU_AU1200: +		alchemy_sleep_au1550(); +		break;  	} + +	restore_core_regs();  }  #endif	/* CONFIG_PM */  | 
