fb.h 921 B

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