xref: /haiku/src/add-ons/accelerants/virtio/accelerant_protos.h (revision 1978089f7cec856677e46204e992c7273d70b9af)
1 /*
2  * Copyright 2005-2008, Axel Dörfler, axeld@pinc-software.de.
3  * Copyright 2016, Jessica Hamilton, jessica.l.hamilton@gmail.com.
4  * All rights reserved. Distributed under the terms of the MIT License.
5  */
6 #ifndef _ACCELERANT_PROTOS_H
7 #define _ACCELERANT_PROTOS_H
8 
9 
10 #include <Accelerant.h>
11 #include "video_overlay.h"
12 
13 
14 #ifdef __cplusplus
15 extern "C" {
16 #endif
17 
18 // general
19 status_t virtio_gpu_init_accelerant(int fd);
20 ssize_t virtio_gpu_accelerant_clone_info_size(void);
21 void virtio_gpu_get_accelerant_clone_info(void *data);
22 status_t virtio_gpu_clone_accelerant(void *data);
23 void virtio_gpu_uninit_accelerant(void);
24 status_t virtio_gpu_get_accelerant_device_info(accelerant_device_info *adi);
25 sem_id virtio_gpu_accelerant_retrace_semaphore(void);
26 
27 // modes & constraints
28 uint32 virtio_gpu_accelerant_mode_count(void);
29 status_t virtio_gpu_get_mode_list(display_mode *dm);
30 status_t virtio_gpu_get_preferred_mode(display_mode *mode);
31 status_t virtio_gpu_set_display_mode(display_mode *modeToSet);
32 status_t virtio_gpu_get_display_mode(display_mode *currentMode);
33 status_t virtio_gpu_get_edid_info(void *info, size_t size, uint32 *_version);
34 status_t virtio_gpu_get_frame_buffer_config(frame_buffer_config *config);
35 status_t virtio_gpu_get_pixel_clock_limits(display_mode *dm, uint32 *low,
36 	uint32 *high);
37 
38 #ifdef __cplusplus
39 }
40 #endif
41 
42 #endif	/* _ACCELERANT_PROTOS_H */
43