diff options
| -rw-r--r-- | arch/sh/kernel/cpu/sh4a/setup-sh7724.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/arch/sh/kernel/cpu/sh4a/setup-sh7724.c b/arch/sh/kernel/cpu/sh4a/setup-sh7724.c index 9c3cc8f638b6..16e18749ac1b 100644 --- a/arch/sh/kernel/cpu/sh4a/setup-sh7724.c +++ b/arch/sh/kernel/cpu/sh4a/setup-sh7724.c | |||
| @@ -941,6 +941,9 @@ static struct { | |||
| 941 | /* RWDT */ | 941 | /* RWDT */ |
| 942 | unsigned short rwtcnt; | 942 | unsigned short rwtcnt; |
| 943 | unsigned short rwtcsr; | 943 | unsigned short rwtcsr; |
| 944 | /* CPG */ | ||
| 945 | unsigned long irdaclk; | ||
| 946 | unsigned long spuclk; | ||
| 944 | } sh7724_rstandby_state; | 947 | } sh7724_rstandby_state; |
| 945 | 948 | ||
| 946 | static int sh7724_pre_sleep_notifier_call(struct notifier_block *nb, | 949 | static int sh7724_pre_sleep_notifier_call(struct notifier_block *nb, |
| @@ -998,6 +1001,10 @@ static int sh7724_pre_sleep_notifier_call(struct notifier_block *nb, | |||
| 998 | sh7724_rstandby_state.rwtcsr |= 0xa500; | 1001 | sh7724_rstandby_state.rwtcsr |= 0xa500; |
| 999 | __raw_writew(sh7724_rstandby_state.rwtcsr & 0x07, 0xa4520004); | 1002 | __raw_writew(sh7724_rstandby_state.rwtcsr & 0x07, 0xa4520004); |
| 1000 | 1003 | ||
| 1004 | /* CPG */ | ||
| 1005 | sh7724_rstandby_state.irdaclk = __raw_readl(0xa4150018); /* IRDACLKCR */ | ||
| 1006 | sh7724_rstandby_state.spuclk = __raw_readl(0xa415003c); /* SPUCLKCR */ | ||
| 1007 | |||
| 1001 | return NOTIFY_DONE; | 1008 | return NOTIFY_DONE; |
| 1002 | } | 1009 | } |
| 1003 | 1010 | ||
| @@ -1052,6 +1059,10 @@ static int sh7724_post_sleep_notifier_call(struct notifier_block *nb, | |||
| 1052 | __raw_writew(sh7724_rstandby_state.rwtcnt, 0xa4520000); /* RWTCNT */ | 1059 | __raw_writew(sh7724_rstandby_state.rwtcnt, 0xa4520000); /* RWTCNT */ |
| 1053 | __raw_writew(sh7724_rstandby_state.rwtcsr, 0xa4520004); /* RWTCSR */ | 1060 | __raw_writew(sh7724_rstandby_state.rwtcsr, 0xa4520004); /* RWTCSR */ |
| 1054 | 1061 | ||
| 1062 | /* CPG */ | ||
| 1063 | __raw_writel(sh7724_rstandby_state.irdaclk, 0xa4150018); /* IRDACLKCR */ | ||
| 1064 | __raw_writel(sh7724_rstandby_state.spuclk, 0xa415003c); /* SPUCLKCR */ | ||
| 1065 | |||
| 1055 | return NOTIFY_DONE; | 1066 | return NOTIFY_DONE; |
| 1056 | } | 1067 | } |
| 1057 | 1068 | ||
