xref: /haiku/src/add-ons/accelerants/radeon_hd/encoder.h (revision 362efe0c9f36d3dd38b22d2c24ac02e54b189d7c)
1 /*
2  * Copyright 2006-2011, Haiku, Inc. All Rights Reserved.
3  * Distributed under the terms of the MIT License.
4  *
5  * Authors:
6  *      Alexander von Gluck, kallisti5@unixzen.com
7  */
8 #ifndef RADEON_HD_ENCODER_H
9 #define RADEON_HD_ENCODER_H
10 
11 
12 #include <SupportDefs.h>
13 
14 void encoder_init();
15 
16 void encoder_assign_crtc(uint8 crtcID);
17 uint32 encoder_pick_dig(uint32 connectorIndex);
18 
19 void encoder_apply_quirks(uint8 crtcID);
20 void encoder_mode_set(uint8 id, uint32 pixelClock);
21 status_t encoder_analog_setup(uint32 connectorIndex,
22 	uint32 pixelClock, int command);
23 status_t encoder_digital_setup(uint32 connectorIndex,
24 	uint32 pixelClock, int command);
25 status_t encoder_dig_setup(uint32 connectorIndex,
26 	uint32 pixelClock, int command);
27 status_t encoder_external_setup(uint32 connectorIndex,
28 	uint32 pixelClock, int command);
29 status_t encoder_tv_setup(uint32 connectorIndex,
30 	uint32 pixelClock, int command);
31 
32 bool encoder_analog_load_detect(uint32 connectorIndex);
33 bool encoder_dac_load_detect(uint32 connectorIndex);
34 bool encoder_dig_load_detect(uint32 connectorIndex);
35 void encoder_output_lock(bool lock);
36 status_t transmitter_dig_setup(uint32 connectorIndex, uint32 pixelClock,
37 	uint8 laneNumber, uint8 laneSet, int command);
38 void encoder_crtc_scratch(uint8 crtcID);
39 void encoder_dpms_scratch(uint8 crtcID, bool power);
40 void encoder_dpms_set(uint8 crtcID, int mode);
41 void encoder_dpms_set_dig(uint8 crtcID, int mode);
42 void encoder_dpms_set_dvo(uint8 crtcID, int mode);
43 void encoder_dpms_set_external(uint8 crtcID, int mode);
44 
45 const char* encoder_name_lookup(uint32 encoderID);
46 uint32 encoder_object_lookup(uint32 encoderFlags, uint8 dacID);
47 uint32 encoder_type_lookup(uint32 encoderID, uint32 connectorFlags);
48 bool encoder_is_external(uint32 encoderID);
49 bool encoder_is_dp_bridge(uint32 encoderID);
50 
51 
52 #endif /* RADEON_HD_ENCODER_H */
53