1/*
2 * Copyright 2005-2009, Axel D��rfler, axeld@pinc-software.de.
3 * Copyright 2016, Jessica Hamilton, jessica.l.hamilton@gmail.com.
4 * Distributed under the terms of the MIT License.
5 */
6#ifndef FRAMEBUFFER_PRIVATE_H
7#define FRAMEBUFFER_PRIVATE_H
8
9
10#include <Drivers.h>
11#include <Accelerant.h>
12#include <PCI.h>
13
14
15#define DEVICE_NAME				"framebuffer"
16#define ACCELERANT_NAME	"framebuffer.accelerant"
17
18
19struct framebuffer_info {
20	uint32			cookie_magic;
21	int32			open_count;
22	int32			id;
23	struct vesa_shared_info* shared_info;
24	area_id			shared_area;
25
26	addr_t			frame_buffer;
27	addr_t			physical_frame_buffer;
28	size_t			physical_frame_buffer_size;
29	bool			complete_frame_buffer_mapped;
30};
31
32extern status_t framebuffer_init(framebuffer_info& info);
33extern void framebuffer_uninit(framebuffer_info& info);
34
35#endif	/* FRAMEBUFFER_PRIVATE_H */
36