diff options
Diffstat (limited to 'arch')
-rw-r--r-- | arch/powerpc/include/asm/qe.h | 23 | ||||
-rw-r--r-- | arch/powerpc/sysdev/qe_lib/qe.c | 13 |
2 files changed, 22 insertions, 14 deletions
diff --git a/arch/powerpc/include/asm/qe.h b/arch/powerpc/include/asm/qe.h index 908f0b75745b..5e0e8b2b0aa1 100644 --- a/arch/powerpc/include/asm/qe.h +++ b/arch/powerpc/include/asm/qe.h | |||
@@ -154,7 +154,28 @@ int qe_get_snum(void); | |||
154 | void qe_put_snum(u8 snum); | 154 | void qe_put_snum(u8 snum); |
155 | unsigned int qe_get_num_of_risc(void); | 155 | unsigned int qe_get_num_of_risc(void); |
156 | unsigned int qe_get_num_of_snums(void); | 156 | unsigned int qe_get_num_of_snums(void); |
157 | int qe_alive_during_sleep(void); | 157 | |
158 | static inline int qe_alive_during_sleep(void) | ||
159 | { | ||
160 | /* | ||
161 | * MPC8568E reference manual says: | ||
162 | * | ||
163 | * "...power down sequence waits for all I/O interfaces to become idle. | ||
164 | * In some applications this may happen eventually without actively | ||
165 | * shutting down interfaces, but most likely, software will have to | ||
166 | * take steps to shut down the eTSEC, QUICC Engine Block, and PCI | ||
167 | * interfaces before issuing the command (either the write to the core | ||
168 | * MSR[WE] as described above or writing to POWMGTCSR) to put the | ||
169 | * device into sleep state." | ||
170 | * | ||
171 | * MPC8569E reference manual has a similar paragraph. | ||
172 | */ | ||
173 | #ifdef CONFIG_PPC_85xx | ||
174 | return 0; | ||
175 | #else | ||
176 | return 1; | ||
177 | #endif | ||
178 | } | ||
158 | 179 | ||
159 | /* we actually use cpm_muram implementation, define this for convenience */ | 180 | /* we actually use cpm_muram implementation, define this for convenience */ |
160 | #define qe_muram_init cpm_muram_init | 181 | #define qe_muram_init cpm_muram_init |
diff --git a/arch/powerpc/sysdev/qe_lib/qe.c b/arch/powerpc/sysdev/qe_lib/qe.c index 1ed1a9fd9bcf..4eaf2a962914 100644 --- a/arch/powerpc/sysdev/qe_lib/qe.c +++ b/arch/powerpc/sysdev/qe_lib/qe.c | |||
@@ -65,19 +65,6 @@ static unsigned int qe_num_of_snum; | |||
65 | 65 | ||
66 | static phys_addr_t qebase = -1; | 66 | static phys_addr_t qebase = -1; |
67 | 67 | ||
68 | int qe_alive_during_sleep(void) | ||
69 | { | ||
70 | static int ret = -1; | ||
71 | |||
72 | if (ret != -1) | ||
73 | return ret; | ||
74 | |||
75 | ret = !of_find_compatible_node(NULL, NULL, "fsl,mpc8569-pmc"); | ||
76 | |||
77 | return ret; | ||
78 | } | ||
79 | EXPORT_SYMBOL(qe_alive_during_sleep); | ||
80 | |||
81 | phys_addr_t get_qe_base(void) | 68 | phys_addr_t get_qe_base(void) |
82 | { | 69 | { |
83 | struct device_node *qe; | 70 | struct device_node *qe; |