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 15 struct 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 36 enum { 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