1 /* SPDX-License-Identifier: GPL-2.0 */
2 /* sbuslib.h: SBUS fb helper library interfaces */
3 #ifndef _SBUSLIB_H
4 #define _SBUSLIB_H
5 
6 struct sbus_mmap_map {
7 	unsigned long voff;
8 	unsigned long poff;
9 	unsigned long size;
10 };
11 
12 #define SBUS_MMAP_FBSIZE(n) (-n)
13 #define SBUS_MMAP_EMPTY	0x80000000
14 
15 extern void sbusfb_fill_var(struct fb_var_screeninfo *var,
16 			    struct device_node *dp, int bpp);
17 struct vm_area_struct;
18 extern int sbusfb_mmap_helper(struct sbus_mmap_map *map,
19 			      unsigned long physbase, unsigned long fbsize,
20 			      unsigned long iospace,
21 			      struct vm_area_struct *vma);
22 int sbusfb_ioctl_helper(unsigned long cmd, unsigned long arg,
23 			struct fb_info *info,
24 			int type, int fb_depth, unsigned long fb_size);
25 int sbusfb_compat_ioctl(struct fb_info *info, unsigned int cmd,
26 			unsigned long arg);
27 
28 #endif /* _SBUSLIB_H */
29