ba49a155b5
This patch introduces a framebuffer to Minix. It's written for the ARM port of Minix, but has an architectural split that separates the hardware dependent part from the non-hardware dependent part. Futhermore, this driver was developed using a screen that has a native resolution of 1024x600 pixels and having lack of support for obtaining EDID from the screen. Consequently, it uses a hardcoded resolution of 1024x600. The driver uses an interface based on the Linux ioctl API, but supports only a very limited subset.
38 lines
807 B
C
38 lines
807 B
C
#ifndef __MINIX_FB_H_
|
|
#define __MINIX_FB_H_
|
|
|
|
#include <minix/type.h>
|
|
|
|
struct fb_fix_screeninfo {
|
|
char id[16]; /* Identification string */
|
|
u16_t xpanstep;
|
|
u16_t ypanstep;
|
|
u16_t ywrapstep;
|
|
u32_t line_length;
|
|
phys_bytes mmio_start;
|
|
size_t mmio_len;
|
|
u16_t reserved[15];
|
|
};
|
|
|
|
struct fb_bitfield {
|
|
u32_t offset;
|
|
u32_t length;
|
|
u32_t msb_right;
|
|
};
|
|
|
|
struct fb_var_screeninfo {
|
|
u32_t xres; /* visible resolution */
|
|
u32_t yres;
|
|
u32_t xres_virtual; /* virtual resolution */
|
|
u32_t yres_virtual;
|
|
u32_t xoffset; /* offset from virtual to visible */
|
|
u32_t yoffset;
|
|
u32_t bits_per_pixel;
|
|
struct fb_bitfield red; /* bitfield in fb mem if true color */
|
|
struct fb_bitfield green;
|
|
struct fb_bitfield blue;
|
|
struct fb_bitfield transp; /* transparency */
|
|
u16_t reserved[10];
|
|
};
|
|
|
|
#endif /* __MINIX_FB_H_ */
|