xref: /openbmc/linux/arch/mips/include/asm/fb.h (revision 0791faebfe750292a8a842b64795a390ca4a3b51)
1384740dcSRalf Baechle #ifndef _ASM_FB_H_
2384740dcSRalf Baechle #define _ASM_FB_H_
3384740dcSRalf Baechle 
4384740dcSRalf Baechle #include <asm/page.h>
5384740dcSRalf Baechle 
6910994c0SThomas Zimmermann struct file;
7910994c0SThomas Zimmermann 
fb_pgprotect(struct file * file,struct vm_area_struct * vma,unsigned long off)8384740dcSRalf Baechle static inline void fb_pgprotect(struct file *file, struct vm_area_struct *vma,
9384740dcSRalf Baechle 				unsigned long off)
10384740dcSRalf Baechle {
11384740dcSRalf Baechle 	vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot);
12384740dcSRalf Baechle }
13910994c0SThomas Zimmermann #define fb_pgprotect fb_pgprotect
14384740dcSRalf Baechle 
15*8f8eaa1bSThomas Zimmermann /*
16*8f8eaa1bSThomas Zimmermann  * MIPS doesn't define __raw_ I/O macros, so the helpers
17*8f8eaa1bSThomas Zimmermann  * in <asm-generic/fb.h> don't generate fb_readq() and
18*8f8eaa1bSThomas Zimmermann  * fb_write(). We have to provide them here.
19*8f8eaa1bSThomas Zimmermann  *
20*8f8eaa1bSThomas Zimmermann  * TODO: Convert MIPS to generic I/O. The helpers below can
21*8f8eaa1bSThomas Zimmermann  *       then be removed.
22*8f8eaa1bSThomas Zimmermann  */
23*8f8eaa1bSThomas Zimmermann #ifdef CONFIG_64BIT
fb_readq(const volatile void __iomem * addr)24*8f8eaa1bSThomas Zimmermann static inline u64 fb_readq(const volatile void __iomem *addr)
25*8f8eaa1bSThomas Zimmermann {
26*8f8eaa1bSThomas Zimmermann 	return __raw_readq(addr);
27*8f8eaa1bSThomas Zimmermann }
28*8f8eaa1bSThomas Zimmermann #define fb_readq fb_readq
29*8f8eaa1bSThomas Zimmermann 
fb_writeq(u64 b,volatile void __iomem * addr)30*8f8eaa1bSThomas Zimmermann static inline void fb_writeq(u64 b, volatile void __iomem *addr)
31*8f8eaa1bSThomas Zimmermann {
32*8f8eaa1bSThomas Zimmermann 	__raw_writeq(b, addr);
33*8f8eaa1bSThomas Zimmermann }
34*8f8eaa1bSThomas Zimmermann #define fb_writeq fb_writeq
35*8f8eaa1bSThomas Zimmermann #endif
36*8f8eaa1bSThomas Zimmermann 
37910994c0SThomas Zimmermann #include <asm-generic/fb.h>
38384740dcSRalf Baechle 
39384740dcSRalf Baechle #endif /* _ASM_FB_H_ */
40