diff options
-rw-r--r-- | arch/powerpc/platforms/ps3/htab.c | 2 | ||||
-rw-r--r-- | arch/powerpc/platforms/ps3/spu.c | 13 |
2 files changed, 10 insertions, 5 deletions
diff --git a/arch/powerpc/platforms/ps3/htab.c b/arch/powerpc/platforms/ps3/htab.c index 17414e8d7dd3..0f4eb1251d7f 100644 --- a/arch/powerpc/platforms/ps3/htab.c +++ b/arch/powerpc/platforms/ps3/htab.c | |||
@@ -273,7 +273,7 @@ void __init ps3_map_htab(void) | |||
273 | 273 | ||
274 | result = lv1_map_htab(0, &htab_addr); | 274 | result = lv1_map_htab(0, &htab_addr); |
275 | 275 | ||
276 | htab = (struct hash_pte *)__ioremap(htab_addr, htab_size, | 276 | htab = (__force struct hash_pte *)ioremap_flags(htab_addr, htab_size, |
277 | pgprot_val(PAGE_READONLY_X)); | 277 | pgprot_val(PAGE_READONLY_X)); |
278 | 278 | ||
279 | DBG("%s:%d: lpar %016lxh, virt %016lxh\n", __func__, __LINE__, | 279 | DBG("%s:%d: lpar %016lxh, virt %016lxh\n", __func__, __LINE__, |
diff --git a/arch/powerpc/platforms/ps3/spu.c b/arch/powerpc/platforms/ps3/spu.c index 651437cb2c18..c7f734c89462 100644 --- a/arch/powerpc/platforms/ps3/spu.c +++ b/arch/powerpc/platforms/ps3/spu.c | |||
@@ -182,15 +182,18 @@ static int __init setup_areas(struct spu *spu) | |||
182 | { | 182 | { |
183 | struct table {char* name; unsigned long addr; unsigned long size;}; | 183 | struct table {char* name; unsigned long addr; unsigned long size;}; |
184 | 184 | ||
185 | spu_pdata(spu)->shadow = __ioremap( | 185 | spu_pdata(spu)->shadow = ioremap_flags(spu_pdata(spu)->shadow_addr, |
186 | spu_pdata(spu)->shadow_addr, sizeof(struct spe_shadow), | 186 | sizeof(struct spe_shadow), |
187 | pgprot_val(PAGE_READONLY) | _PAGE_NO_CACHE | _PAGE_GUARDED); | 187 | pgprot_val(PAGE_READONLY) | |
188 | _PAGE_NO_CACHE); | ||
188 | if (!spu_pdata(spu)->shadow) { | 189 | if (!spu_pdata(spu)->shadow) { |
189 | pr_debug("%s:%d: ioremap shadow failed\n", __func__, __LINE__); | 190 | pr_debug("%s:%d: ioremap shadow failed\n", __func__, __LINE__); |
190 | goto fail_ioremap; | 191 | goto fail_ioremap; |
191 | } | 192 | } |
192 | 193 | ||
193 | spu->local_store = ioremap(spu->local_store_phys, LS_SIZE); | 194 | spu->local_store = (__force void *)ioremap_flags(spu->local_store_phys, |
195 | LS_SIZE, _PAGE_NO_CACHE); | ||
196 | |||
194 | if (!spu->local_store) { | 197 | if (!spu->local_store) { |
195 | pr_debug("%s:%d: ioremap local_store failed\n", | 198 | pr_debug("%s:%d: ioremap local_store failed\n", |
196 | __func__, __LINE__); | 199 | __func__, __LINE__); |
@@ -199,6 +202,7 @@ static int __init setup_areas(struct spu *spu) | |||
199 | 202 | ||
200 | spu->problem = ioremap(spu->problem_phys, | 203 | spu->problem = ioremap(spu->problem_phys, |
201 | sizeof(struct spu_problem)); | 204 | sizeof(struct spu_problem)); |
205 | |||
202 | if (!spu->problem) { | 206 | if (!spu->problem) { |
203 | pr_debug("%s:%d: ioremap problem failed\n", __func__, __LINE__); | 207 | pr_debug("%s:%d: ioremap problem failed\n", __func__, __LINE__); |
204 | goto fail_ioremap; | 208 | goto fail_ioremap; |
@@ -206,6 +210,7 @@ static int __init setup_areas(struct spu *spu) | |||
206 | 210 | ||
207 | spu->priv2 = ioremap(spu_pdata(spu)->priv2_addr, | 211 | spu->priv2 = ioremap(spu_pdata(spu)->priv2_addr, |
208 | sizeof(struct spu_priv2)); | 212 | sizeof(struct spu_priv2)); |
213 | |||
209 | if (!spu->priv2) { | 214 | if (!spu->priv2) { |
210 | pr_debug("%s:%d: ioremap priv2 failed\n", __func__, __LINE__); | 215 | pr_debug("%s:%d: ioremap priv2 failed\n", __func__, __LINE__); |
211 | goto fail_ioremap; | 216 | goto fail_ioremap; |