powerpc/mm: Change setbat() to take a pgprot_t rather than flags
The callers of setbat() are actually passing a pgprot_t for the flags parameter. This doesn't matter unless STRICT_MM_TYPECHECKS is enabled. So we can turn that on without breaking the build, change setbat() to take a pgprot_t and have it convert it to an unsigned long internally. Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
This commit is contained in:
parent
911083350e
commit
5dd4e4f6fe
|
@ -96,7 +96,7 @@ extern void _tlbia(void);
|
||||||
extern void mapin_ram(void);
|
extern void mapin_ram(void);
|
||||||
extern int map_page(unsigned long va, phys_addr_t pa, int flags);
|
extern int map_page(unsigned long va, phys_addr_t pa, int flags);
|
||||||
extern void setbat(int index, unsigned long virt, phys_addr_t phys,
|
extern void setbat(int index, unsigned long virt, phys_addr_t phys,
|
||||||
unsigned int size, int flags);
|
unsigned int size, pgprot_t prot);
|
||||||
|
|
||||||
extern int __map_without_bats;
|
extern int __map_without_bats;
|
||||||
extern int __allow_ioremap_reserved;
|
extern int __allow_ioremap_reserved;
|
||||||
|
|
|
@ -113,11 +113,12 @@ unsigned long __init mmu_mapin_ram(unsigned long top)
|
||||||
* of 2 between 128k and 256M.
|
* of 2 between 128k and 256M.
|
||||||
*/
|
*/
|
||||||
void __init setbat(int index, unsigned long virt, phys_addr_t phys,
|
void __init setbat(int index, unsigned long virt, phys_addr_t phys,
|
||||||
unsigned int size, int flags)
|
unsigned int size, pgprot_t prot)
|
||||||
{
|
{
|
||||||
unsigned int bl;
|
unsigned int bl;
|
||||||
int wimgxpp;
|
int wimgxpp;
|
||||||
struct ppc_bat *bat = BATS[index];
|
struct ppc_bat *bat = BATS[index];
|
||||||
|
unsigned long flags = pgprot_val(prot);
|
||||||
|
|
||||||
if ((flags & _PAGE_NO_CACHE) ||
|
if ((flags & _PAGE_NO_CACHE) ||
|
||||||
(cpu_has_feature(CPU_FTR_NEED_COHERENT) == 0))
|
(cpu_has_feature(CPU_FTR_NEED_COHERENT) == 0))
|
||||||
|
|
Loading…
Reference in New Issue