1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0 */ 2*4882a593Smuzhiyun #ifndef _ASM_FB_H_ 3*4882a593Smuzhiyun #define _ASM_FB_H_ 4*4882a593Smuzhiyun 5*4882a593Smuzhiyun #include <linux/fb.h> 6*4882a593Smuzhiyun #include <linux/fs.h> 7*4882a593Smuzhiyun #include <asm/page.h> 8*4882a593Smuzhiyun #include <asm/setup.h> 9*4882a593Smuzhiyun 10*4882a593Smuzhiyun #ifdef CONFIG_MMU 11*4882a593Smuzhiyun #ifdef CONFIG_SUN3 fb_pgprotect(struct file * file,struct vm_area_struct * vma,unsigned long off)12*4882a593Smuzhiyunstatic inline void fb_pgprotect(struct file *file, struct vm_area_struct *vma, 13*4882a593Smuzhiyun unsigned long off) 14*4882a593Smuzhiyun { 15*4882a593Smuzhiyun pgprot_val(vma->vm_page_prot) |= SUN3_PAGE_NOCACHE; 16*4882a593Smuzhiyun } 17*4882a593Smuzhiyun #else fb_pgprotect(struct file * file,struct vm_area_struct * vma,unsigned long off)18*4882a593Smuzhiyunstatic inline void fb_pgprotect(struct file *file, struct vm_area_struct *vma, 19*4882a593Smuzhiyun unsigned long off) 20*4882a593Smuzhiyun { 21*4882a593Smuzhiyun if (CPU_IS_020_OR_030) 22*4882a593Smuzhiyun pgprot_val(vma->vm_page_prot) |= _PAGE_NOCACHE030; 23*4882a593Smuzhiyun if (CPU_IS_040_OR_060) { 24*4882a593Smuzhiyun pgprot_val(vma->vm_page_prot) &= _CACHEMASK040; 25*4882a593Smuzhiyun /* Use no-cache mode, serialized */ 26*4882a593Smuzhiyun pgprot_val(vma->vm_page_prot) |= _PAGE_NOCACHE_S; 27*4882a593Smuzhiyun } 28*4882a593Smuzhiyun } 29*4882a593Smuzhiyun #endif /* CONFIG_SUN3 */ 30*4882a593Smuzhiyun #else 31*4882a593Smuzhiyun #define fb_pgprotect(...) do {} while (0) 32*4882a593Smuzhiyun #endif /* CONFIG_MMU */ 33*4882a593Smuzhiyun fb_is_primary_device(struct fb_info * info)34*4882a593Smuzhiyunstatic inline int fb_is_primary_device(struct fb_info *info) 35*4882a593Smuzhiyun { 36*4882a593Smuzhiyun return 0; 37*4882a593Smuzhiyun } 38*4882a593Smuzhiyun 39*4882a593Smuzhiyun #endif /* _ASM_FB_H_ */ 40