xref: /haiku/src/add-ons/accelerants/radeon_hd/encoder.h (revision c8677fb1384051cb147d53ff8e5d9f1f41a35201)
17c91a33cSAlexander von Gluck IV /*
27c91a33cSAlexander von Gluck IV  * Copyright 2006-2011, Haiku, Inc. All Rights Reserved.
37c91a33cSAlexander von Gluck IV  * Distributed under the terms of the MIT License.
47c91a33cSAlexander von Gluck IV  *
57c91a33cSAlexander von Gluck IV  * Authors:
67c91a33cSAlexander von Gluck IV  *      Alexander von Gluck, kallisti5@unixzen.com
77c91a33cSAlexander von Gluck IV  */
87c91a33cSAlexander von Gluck IV #ifndef RADEON_HD_ENCODER_H
97c91a33cSAlexander von Gluck IV #define RADEON_HD_ENCODER_H
107c91a33cSAlexander von Gluck IV 
117c91a33cSAlexander von Gluck IV 
1261cf7133SAlexander von Gluck IV #include <SupportDefs.h>
1361cf7133SAlexander von Gluck IV 
1461cf7133SAlexander von Gluck IV 
156b120e4cSAlexander von Gluck IV void encoder_assign_crtc(uint8 crtcID);
16*c8677fb1SAlexander von Gluck IV uint32 encoder_pick_dig(uint32 connectorIndex);
176b120e4cSAlexander von Gluck IV 
1807a90a63SAlexander von Gluck IV void encoder_apply_quirks(uint8 crtcID);
19b54c8119SAlexander von Gluck IV void encoder_mode_set(uint8 id, uint32 pixelClock);
207a13bce5SAlexander von Gluck IV status_t encoder_analog_setup(uint32 connectorIndex,
217a13bce5SAlexander von Gluck IV 	uint32 pixelClock, int command);
227a13bce5SAlexander von Gluck IV status_t encoder_digital_setup(uint32 connectorIndex,
237a13bce5SAlexander von Gluck IV 	uint32 pixelClock, int command);
247a13bce5SAlexander von Gluck IV status_t encoder_dig_setup(uint32 connectorIndex,
257a13bce5SAlexander von Gluck IV 	uint32 pixelClock, int command);
267a13bce5SAlexander von Gluck IV status_t encoder_external_setup(uint32 connectorIndex,
277a13bce5SAlexander von Gluck IV 	uint32 pixelClock, int command);
287a13bce5SAlexander von Gluck IV status_t encoder_tv_setup(uint32 connectorIndex,
297a13bce5SAlexander von Gluck IV 	uint32 pixelClock, int command);
307a13bce5SAlexander von Gluck IV 
317a13bce5SAlexander von Gluck IV bool encoder_analog_load_detect(uint32 connectorIndex);
32b54c8119SAlexander von Gluck IV void encoder_output_lock(bool lock);
336b0b621bSAlexander von Gluck IV void encoder_crtc_scratch(uint8 crtcID);
346b0b621bSAlexander von Gluck IV void encoder_dpms_scratch(uint8 crtcID, bool power);
356b0b621bSAlexander von Gluck IV void encoder_dpms_set(uint8 crtcID, uint8 encoderID, int mode);
36bdd19893SAlexander von Gluck IV const char* encoder_name_lookup(uint32 encoderID);
3791affb2dSAlexander von Gluck IV uint32 encoder_object_lookup(uint32 encoderFlags, uint8 dacID);
385a2c3572SAlexander von Gluck IV uint32 encoder_type_lookup(uint32 encoderID, uint32 connectorFlags);
39dad34be3SAlexander von Gluck IV bool encoder_is_external(uint32 encoderID);
40dad34be3SAlexander von Gluck IV bool encoder_is_dp_bridge(uint32 encoderID);
417c91a33cSAlexander von Gluck IV 
427c91a33cSAlexander von Gluck IV 
437c91a33cSAlexander von Gluck IV #endif /* RADEON_HD_ENCODER_H */
44