diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2015-08-06 12:33:06 +0200 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2015-08-06 12:33:06 +0200 |
commit | 3c92473a9e24a55c9e253027178492a788ea7611 (patch) | |
tree | b2e1f67265e4651cab0251afa7d7e7b2a0c16d27 /include | |
parent | ebd6f26412cdc5c123ece13c5df1bf5077dc0633 (diff) | |
parent | 27f79c05ab4256007ae5096452c543c2bf5f2347 (diff) | |
download | barebox-3c92473a9e24a55c9e253027178492a788ea7611.tar.gz barebox-3c92473a9e24a55c9e253027178492a788ea7611.tar.xz |
Merge branch 'for-next/fbcon'
Diffstat (limited to 'include')
-rw-r--r-- | include/fb.h | 5 | ||||
-rw-r--r-- | include/gui/graphic_utils.h | 19 | ||||
-rw-r--r-- | include/gui/gui.h | 4 | ||||
-rw-r--r-- | include/linux/font.h | 35 |
4 files changed, 54 insertions, 9 deletions
diff --git a/include/fb.h b/include/fb.h index 2db6ad6f37..27894db981 100644 --- a/include/fb.h +++ b/include/fb.h @@ -146,6 +146,9 @@ struct display_timings *of_get_display_timings(struct device_node *np); int register_framebuffer(struct fb_info *info); +int fb_enable(struct fb_info *info); +int fb_disable(struct fb_info *info); + #define FBIOGET_SCREENINFO _IOR('F', 1, loff_t) #define FBIO_ENABLE _IO('F', 2) #define FBIO_DISABLE _IO('F', 3) @@ -160,4 +163,6 @@ int edid_to_display_timings(struct display_timings *, unsigned char *edid); void *edid_read_i2c(struct i2c_adapter *adapter); void fb_edid_add_modes(struct fb_info *info); +int register_fbconsole(struct fb_info *fb); + #endif /* __FB_H */ diff --git a/include/gui/graphic_utils.h b/include/gui/graphic_utils.h index 33e0cbfb2f..ab8c3fcff3 100644 --- a/include/gui/graphic_utils.h +++ b/include/gui/graphic_utils.h @@ -11,14 +11,19 @@ #include <gui/image.h> #include <gui/gui.h> -void rgba_blend(struct fb_info *info, struct image *img, void* dest, int height, +u32 gu_hex_to_pixel(struct fb_info *info, u32 color); +u32 gu_rgb_to_pixel(struct fb_info *info, u8 r, u8 g, u8 b, u8 t); +void gu_rgba_blend(struct fb_info *info, struct image *img, void* dest, int height, int width, int startx, int starty, bool is_rgba); -void set_pixel(struct fb_info *info, void *adr, u32 px); -void set_rgb_pixel(struct fb_info *info, void *adr, u8 r, u8 g, u8 b); -void set_rgba_pixel(struct fb_info *info, void *adr, u8 r, u8 g, u8 b, u8 a); -void memset_pixel(struct fb_info *info, void* buf, u32 color, size_t size); -int fb_open(const char * fbdev, struct screen *sc, bool offscreen); +void gu_set_pixel(struct fb_info *info, void *adr, u32 px); +void gu_set_rgb_pixel(struct fb_info *info, void *adr, u8 r, u8 g, u8 b); +void gu_set_rgba_pixel(struct fb_info *info, void *adr, u8 r, u8 g, u8 b, u8 a); +void gu_memset_pixel(struct fb_info *info, void* buf, u32 color, size_t size); +struct screen *fb_create_screen(struct fb_info *info, bool offscreen); +struct screen *fb_open(const char *fbdev, bool offscreen); void fb_close(struct screen *sc); -void screen_blit(struct screen *sc); +void gu_screen_blit(struct screen *sc); +void gu_invert_area(struct fb_info *info, void *buf, int startx, int starty, int width, + int height); #endif /* __GRAPHIC_UTILS_H__ */ diff --git a/include/gui/gui.h b/include/gui/gui.h index 829d156842..03e60aa0de 100644 --- a/include/gui/gui.h +++ b/include/gui/gui.h @@ -18,7 +18,7 @@ struct surface { struct screen { int fd; - struct fb_info info; + struct fb_info *info; struct surface s; @@ -27,7 +27,7 @@ struct screen { int fbsize; }; -static inline void* gui_screen_redering_buffer(struct screen *sc) +static inline void *gui_screen_render_buffer(struct screen *sc) { if (sc->offscreenbuf) return sc->offscreenbuf; diff --git a/include/linux/font.h b/include/linux/font.h new file mode 100644 index 0000000000..62b1879da6 --- /dev/null +++ b/include/linux/font.h @@ -0,0 +1,35 @@ +/* + * font.h -- `Soft' font definitions + * + * Created 1995 by Geert Uytterhoeven + * + * This file is subject to the terms and conditions of the GNU General Public + * License. See the file COPYING in the main directory of this archive + * for more details. + */ + +#ifndef _VIDEO_FONT_H +#define _VIDEO_FONT_H + +#include <param.h> + +struct font_desc { + const char *name; + int width, height; + const void *data; +}; + +extern const struct font_desc font_vga_8x16, + font_7x14, + font_mini_4x6; + +/* Max. length for the name of a predefined font */ +#define MAX_FONT_NAME 32 + +extern const struct font_desc *find_font_enum(int n); +extern struct param_d *add_param_font(struct device_d *dev, + int (*set)(struct param_d *p, void *priv), + int (*get)(struct param_d *p, void *priv), + int *value, void *priv); + +#endif /* _VIDEO_FONT_H */ |