hc
2023-12-11 d2ccde1c8e90d38cee87a1b0309ad2827f3fd30d
kernel/drivers/gpu/drm/radeon/radeon_audio.c
....@@ -23,7 +23,7 @@
2323 */
2424
2525 #include <linux/gcd.h>
26
-#include <drm/drmP.h>
26
+
2727 #include <drm/drm_crtc.h>
2828 #include "radeon.h"
2929 #include "atom.h"
....@@ -288,7 +288,7 @@
288288 } else {
289289 rdev->audio.funcs = &r600_funcs;
290290 rdev->audio.hdmi_funcs = &r600_hdmi_funcs;
291
- rdev->audio.dp_funcs = 0;
291
+ rdev->audio.dp_funcs = NULL;
292292 }
293293 }
294294
....@@ -367,10 +367,10 @@
367367 return;
368368
369369 sad_count = drm_edid_to_sad(radeon_connector_edid(connector), &sads);
370
- if (sad_count <= 0) {
370
+ if (sad_count < 0)
371371 DRM_ERROR("Couldn't read SADs: %d\n", sad_count);
372
+ if (sad_count <= 0)
372373 return;
373
- }
374374 BUG_ON(!sads);
375375
376376 if (radeon_encoder->audio && radeon_encoder->audio->write_sad_regs)
....@@ -516,21 +516,17 @@
516516 if (!connector)
517517 return -EINVAL;
518518
519
- err = drm_hdmi_avi_infoframe_from_display_mode(&frame, mode, false);
519
+ err = drm_hdmi_avi_infoframe_from_display_mode(&frame, connector, mode);
520520 if (err < 0) {
521521 DRM_ERROR("failed to setup AVI infoframe: %d\n", err);
522522 return err;
523523 }
524524
525525 if (radeon_encoder->output_csc != RADEON_OUTPUT_CSC_BYPASS) {
526
- if (drm_rgb_quant_range_selectable(radeon_connector_edid(connector))) {
527
- if (radeon_encoder->output_csc == RADEON_OUTPUT_CSC_TVRGB)
528
- frame.quantization_range = HDMI_QUANTIZATION_RANGE_LIMITED;
529
- else
530
- frame.quantization_range = HDMI_QUANTIZATION_RANGE_FULL;
531
- } else {
532
- frame.quantization_range = HDMI_QUANTIZATION_RANGE_DEFAULT;
533
- }
526
+ drm_hdmi_avi_infoframe_quant_range(&frame, connector, mode,
527
+ radeon_encoder->output_csc == RADEON_OUTPUT_CSC_TVRGB ?
528
+ HDMI_QUANTIZATION_RANGE_LIMITED :
529
+ HDMI_QUANTIZATION_RANGE_FULL);
534530 }
535531
536532 err = hdmi_avi_infoframe_pack(&frame, buffer, sizeof(buffer));