···291291bool radeon_atom_get_tv_timings(struct radeon_device *rdev, int index,292292 struct drm_display_mode *mode);293293294294-295295-static inline bool radeon_encoder_is_digital(struct drm_encoder *encoder)296296-{297297- struct radeon_encoder *radeon_encoder = to_radeon_encoder(encoder);298298- switch (radeon_encoder->encoder_id) {299299- case ENCODER_OBJECT_ID_INTERNAL_LVDS:300300- case ENCODER_OBJECT_ID_INTERNAL_TMDS1:301301- case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_TMDS1:302302- case ENCODER_OBJECT_ID_INTERNAL_LVTM1:303303- case ENCODER_OBJECT_ID_INTERNAL_DVO1:304304- case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DVO1:305305- case ENCODER_OBJECT_ID_INTERNAL_DDI:306306- case ENCODER_OBJECT_ID_INTERNAL_UNIPHY:307307- case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_LVTMA:308308- case ENCODER_OBJECT_ID_INTERNAL_UNIPHY1:309309- case ENCODER_OBJECT_ID_INTERNAL_UNIPHY2:310310- case ENCODER_OBJECT_ID_INTERNAL_UNIPHY3:311311- return true;312312- default:313313- return false;314314- }315315-}316316-317294static bool radeon_atom_mode_fixup(struct drm_encoder *encoder,318295 const struct drm_display_mode *mode,319296 struct drm_display_mode *adjusted_mode)
+1-24
drivers/gpu/drm/radeon/r600_audio.c
···3030#include "atom.h"31313232/*3333- * check if enc_priv stores radeon_encoder_atom_dig3434- */3535-static bool radeon_dig_encoder(struct drm_encoder *encoder)3636-{3737- struct radeon_encoder *radeon_encoder = to_radeon_encoder(encoder);3838- switch (radeon_encoder->encoder_id) {3939- case ENCODER_OBJECT_ID_INTERNAL_LVDS:4040- case ENCODER_OBJECT_ID_INTERNAL_TMDS1:4141- case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_TMDS1:4242- case ENCODER_OBJECT_ID_INTERNAL_LVTM1:4343- case ENCODER_OBJECT_ID_INTERNAL_DVO1:4444- case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DVO1:4545- case ENCODER_OBJECT_ID_INTERNAL_DDI:4646- case ENCODER_OBJECT_ID_INTERNAL_UNIPHY:4747- case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_LVTMA:4848- case ENCODER_OBJECT_ID_INTERNAL_UNIPHY1:4949- case ENCODER_OBJECT_ID_INTERNAL_UNIPHY2:5050- return true;5151- }5252- return false;5353-}5454-5555-/*5633 * check if the chipset is supported5734 */5835static int r600_audio_chipset_supported(struct radeon_device *rdev)···111134 }112135113136 list_for_each_entry(encoder, &dev->mode_config.encoder_list, head) {114114- if (!radeon_dig_encoder(encoder))137137+ if (!radeon_encoder_is_digital(encoder))115138 continue;116139 if (changed || r600_hdmi_buffer_status_changed(encoder))117140 r600_hdmi_update_audio_settings(encoder);
+21
drivers/gpu/drm/radeon/radeon_encoders.c
···382382 }383383}384384385385+bool radeon_encoder_is_digital(struct drm_encoder *encoder)386386+{387387+ struct radeon_encoder *radeon_encoder = to_radeon_encoder(encoder);388388+ switch (radeon_encoder->encoder_id) {389389+ case ENCODER_OBJECT_ID_INTERNAL_LVDS:390390+ case ENCODER_OBJECT_ID_INTERNAL_TMDS1:391391+ case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_TMDS1:392392+ case ENCODER_OBJECT_ID_INTERNAL_LVTM1:393393+ case ENCODER_OBJECT_ID_INTERNAL_DVO1:394394+ case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DVO1:395395+ case ENCODER_OBJECT_ID_INTERNAL_DDI:396396+ case ENCODER_OBJECT_ID_INTERNAL_UNIPHY:397397+ case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_LVTMA:398398+ case ENCODER_OBJECT_ID_INTERNAL_UNIPHY1:399399+ case ENCODER_OBJECT_ID_INTERNAL_UNIPHY2:400400+ case ENCODER_OBJECT_ID_INTERNAL_UNIPHY3:401401+ return true;402402+ default:403403+ return false;404404+ }405405+}
+1
drivers/gpu/drm/radeon/radeon_mode.h
···777777extern int atombios_get_encoder_mode(struct drm_encoder *encoder);778778extern bool atombios_set_edp_panel_power(struct drm_connector *connector, int action);779779extern void radeon_encoder_set_active_device(struct drm_encoder *encoder);780780+extern bool radeon_encoder_is_digital(struct drm_encoder *encoder);780781781782extern void radeon_crtc_load_lut(struct drm_crtc *crtc);782783extern int atombios_crtc_set_base(struct drm_crtc *crtc, int x, int y,