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