1/*
2 * Copyright 2005-2009, Axel D��rfler, axeld@pinc-software.de.
3 * Distributed under the terms of the MIT License.
4 */
5#ifndef VIRTIO_INFO_H
6#define VIRTIO_INFO_H
7
8
9#include <Drivers.h>
10#include <Accelerant.h>
11
12#include <edid.h>
13
14
15struct virtio_gpu_shared_info {
16	area_id			mode_list_area;		// area containing display mode list
17	uint32			mode_count;
18	display_mode	current_mode;
19	uint32			bytes_per_row;
20
21	area_id			frame_buffer_area;	// area of frame buffer
22	uint8*			frame_buffer;
23		// pointer to frame buffer (visible by all apps!)
24
25	edid1_raw		edid_raw;
26	bool			has_edid;
27	uint32			dpms_capabilities;
28
29	char			name[32];
30	uint32			vram_size;
31};
32
33//----------------- ioctl() interface ----------------
34
35// list ioctls
36enum {
37	VIRTIO_GPU_GET_PRIVATE_DATA = B_DEVICE_OP_CODES_END + 1,
38	VIRTIO_GPU_GET_DEVICE_NAME,
39	VIRTIO_GPU_SET_DISPLAY_MODE,
40};
41
42
43#endif	/* VIRTIO_INFO_H */
44