2 Copyright 1999, Be Incorporated. All Rights Reserved.
3 This file may be used under the terms of the Be Sample Code License.
6 #if !defined(GENERIC_H)
9 #include <Accelerant.h>
10 #include "video_overlay.h"
12 status_t
INIT_ACCELERANT(int fd
);
13 ssize_t
ACCELERANT_CLONE_INFO_SIZE(void);
14 void GET_ACCELERANT_CLONE_INFO(void *data
);
15 status_t
CLONE_ACCELERANT(void *data
);
16 void UNINIT_ACCELERANT(void);
17 status_t
GET_ACCELERANT_DEVICE_INFO(accelerant_device_info
*adi
);
18 sem_id
ACCELERANT_RETRACE_SEMAPHORE(void);
20 uint32
ACCELERANT_MODE_COUNT(void);
21 status_t
GET_MODE_LIST(display_mode
*dm
);
22 status_t
PROPOSE_DISPLAY_MODE(display_mode
*target
, const display_mode
*low
, const display_mode
*high
);
23 status_t
SET_DISPLAY_MODE(display_mode
*mode_to_set
);
24 status_t
GET_DISPLAY_MODE(display_mode
*current_mode
);
25 status_t
GET_FRAME_BUFFER_CONFIG(frame_buffer_config
*a_frame_buffer
);
26 status_t
GET_PIXEL_CLOCK_LIMITS(display_mode
*dm
, uint32
*low
, uint32
*high
);
27 status_t
MOVE_DISPLAY(uint16 h_display_start
, uint16 v_display_start
);
28 status_t
GET_TIMING_CONSTRAINTS(display_timing_constraints
*dtc
);
29 void SET_INDEXED_COLORS(uint count
, uint8 first
, uint8
*color_data
, uint32 flags
);
30 status_t
radeon_get_preferred_display_mode(display_mode
*mode
);
31 status_t
radeon_get_edid_info(void* info
, size_t size
, uint32
* _version
);
33 uint32
DPMS_CAPABILITIES(void);
34 uint32
DPMS_MODE(void);
35 status_t
SET_DPMS_MODE(uint32 dpms_flags
);
37 status_t
SET_CURSOR_SHAPE(uint16 width
, uint16 height
, uint16 hot_x
, uint16 hot_y
, uint8
*andMask
, uint8
*xorMask
);
38 void MOVE_CURSOR(uint16 x
, uint16 y
);
39 void SHOW_CURSOR(bool is_visible
);
41 uint32
ACCELERANT_ENGINE_COUNT(void);
42 status_t
ACQUIRE_ENGINE(uint32 capabilities
, uint32 max_wait
, sync_token
*st
, engine_token
**et
);
43 status_t
RELEASE_ENGINE(engine_token
*et
, sync_token
*st
);
44 void WAIT_ENGINE_IDLE(void);
45 status_t
GET_SYNC_TOKEN(engine_token
*et
, sync_token
*st
);
46 status_t
SYNC_TO_TOKEN(sync_token
*st
);
48 void SCREEN_TO_SCREEN_BLIT(engine_token
*et
, blit_params
*list
, uint32 count
);
49 void FILL_RECTANGLE(engine_token
*et
, uint32 color
, fill_rect_params
*list
, uint32 count
);
50 void INVERT_RECTANGLE(engine_token
*et
, fill_rect_params
*list
, uint32 count
);
52 void FILL_SPAN(engine_token
*et
, uint32 color
, uint16
*list
, uint32 count
);
54 void SCREEN_TO_SCREEN_BLIT_DMA(engine_token
*et
, blit_params
*list
, uint32 count
);
55 void FILL_RECTANGLE_DMA(engine_token
*et
, uint32 color
, fill_rect_params
*list
, uint32 count
);
56 void INVERT_RECTANGLE_DMA(engine_token
*et
, fill_rect_params
*list
, uint32 count
);
58 void FILL_SPAN_DMA(engine_token
*et
, uint32 color
, uint16
*list
, uint32 count
);
60 void SCREEN_TO_SCREEN_BLIT_PIO(engine_token
*et
, blit_params
*list
, uint32 count
);
61 void FILL_RECTANGLE_PIO(engine_token
*et
, uint32 color
, fill_rect_params
*list
, uint32 count
);
62 void INVERT_RECTANGLE_PIO(engine_token
*et
, fill_rect_params
*list
, uint32 count
);
64 void FILL_SPAN_PIO(engine_token
*et
, uint32 color
, uint16
*list
, uint32 count
);
66 uint32
OVERLAY_COUNT(const display_mode
*dm
);
67 const uint32
*OVERLAY_SUPPORTED_SPACES(const display_mode
*dm
);
68 uint32
OVERLAY_SUPPORTED_FEATURES(uint32 a_color_space
);
69 const overlay_buffer
*ALLOCATE_OVERLAY_BUFFER(color_space cs
, uint16 width
, uint16 height
);
70 status_t
RELEASE_OVERLAY_BUFFER(const overlay_buffer
*ob
);
71 status_t
GET_OVERLAY_CONSTRAINTS(const display_mode
*dm
, const overlay_buffer
*ob
, overlay_constraints
*oc
);
72 overlay_token
ALLOCATE_OVERLAY(void);
73 status_t
RELEASE_OVERLAY(overlay_token ot
);
74 status_t
CONFIGURE_OVERLAY(overlay_token ot
, const overlay_buffer
*ob
, const overlay_window
*ow
, const overlay_view
*ov
);