1 #ifndef _MACHINE_FRAMEBUFFER_H_
2 #define _MACHINE_FRAMEBUFFER_H_
3 
4 #ifdef _KERNEL
5 
6 #include <sys/bus.h>
7 
8 struct fb_info;
9 
10 struct fb_ops {
11 	int (*fb_set_par)(struct fb_info *);
12 	int (*fb_blank)(int, struct fb_info *);
13 	int (*fb_debug_enter)(struct fb_info *);
14 };
15 
16 struct fb_info {
17 	vm_offset_t vaddr;
18 	vm_paddr_t paddr;
19 	uint16_t width;
20 	uint16_t height;
21 	uint16_t stride;
22 	uint16_t depth;
23 	int is_vga_boot_display;
24 	void *par;
25 	struct fb_ops fbops;
26 	device_t device;
27 };
28 
29 int probe_efi_fb(int early);
30 
31 int register_framebuffer(struct fb_info *fb_info);
32 void unregister_framebuffer(struct fb_info *fb_info);
33 
34 extern struct fb_info efi_fb_info;
35 
36 #endif  /* _KERNEL */
37 
38 #endif /* !_MACHINE_FRAMEBUFFER_H_ */
39