2005-02-12 06:50:49 +03:00
|
|
|
/*
|
2009-08-14 13:49:28 +04:00
|
|
|
* Copyright 2005-2009, Axel Dörfler, axeld@pinc-software.de.
|
2005-02-12 06:50:49 +03:00
|
|
|
* Distributed under the terms of the MIT License.
|
|
|
|
*/
|
|
|
|
#ifndef KERNEL_FRAME_BUFFER_CONSOLE_H
|
|
|
|
#define KERNEL_FRAME_BUFFER_CONSOLE_H
|
|
|
|
|
2009-08-14 13:49:28 +04:00
|
|
|
|
2005-02-12 06:50:49 +03:00
|
|
|
#include <console.h>
|
|
|
|
|
2009-08-14 13:49:28 +04:00
|
|
|
|
2005-02-12 06:50:49 +03:00
|
|
|
struct kernel_args;
|
|
|
|
|
|
|
|
|
|
|
|
#define FRAME_BUFFER_CONSOLE_MODULE_NAME "console/frame_buffer/v1"
|
2005-04-01 19:09:09 +04:00
|
|
|
#define FRAME_BUFFER_BOOT_INFO "frame_buffer/v1"
|
|
|
|
|
|
|
|
struct frame_buffer_boot_info {
|
|
|
|
area_id area;
|
2009-11-24 18:26:52 +03:00
|
|
|
addr_t physical_frame_buffer;
|
2005-04-01 19:09:09 +04:00
|
|
|
addr_t frame_buffer;
|
|
|
|
int32 width;
|
|
|
|
int32 height;
|
|
|
|
int32 depth;
|
|
|
|
int32 bytes_per_row;
|
2009-08-14 13:49:28 +04:00
|
|
|
uint8 vesa_capabilities;
|
2005-04-01 19:09:09 +04:00
|
|
|
};
|
2005-02-12 06:50:49 +03:00
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
|
|
|
|
2009-08-14 13:49:28 +04:00
|
|
|
bool frame_buffer_console_available(void);
|
2010-01-01 17:54:41 +03:00
|
|
|
status_t frame_buffer_update(addr_t baseAddress, int32 width, int32 height,
|
|
|
|
int32 depth, int32 bytesPerRow);
|
2009-08-14 13:49:28 +04:00
|
|
|
status_t frame_buffer_console_init(struct kernel_args* args);
|
|
|
|
status_t frame_buffer_console_init_post_modules(struct kernel_args* args);
|
2005-02-12 06:50:49 +03:00
|
|
|
|
2009-08-14 13:49:28 +04:00
|
|
|
status_t _user_frame_buffer_update(addr_t baseAddress, int32 width,
|
|
|
|
int32 height, int32 depth, int32 bytesPerRow);
|
2005-05-29 20:23:00 +04:00
|
|
|
|
2005-02-12 06:50:49 +03:00
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#endif /* KERNEL_FRAME_BUFFER_CONSOLE_H */
|