.. | .. |
---|
23 | 23 | */ |
---|
24 | 24 | |
---|
25 | 25 | #include <linux/gcd.h> |
---|
26 | | -#include <drm/drmP.h> |
---|
| 26 | + |
---|
27 | 27 | #include <drm/drm_crtc.h> |
---|
28 | 28 | #include "radeon.h" |
---|
29 | 29 | #include "atom.h" |
---|
.. | .. |
---|
288 | 288 | } else { |
---|
289 | 289 | rdev->audio.funcs = &r600_funcs; |
---|
290 | 290 | rdev->audio.hdmi_funcs = &r600_hdmi_funcs; |
---|
291 | | - rdev->audio.dp_funcs = 0; |
---|
| 291 | + rdev->audio.dp_funcs = NULL; |
---|
292 | 292 | } |
---|
293 | 293 | } |
---|
294 | 294 | |
---|
.. | .. |
---|
367 | 367 | return; |
---|
368 | 368 | |
---|
369 | 369 | sad_count = drm_edid_to_sad(radeon_connector_edid(connector), &sads); |
---|
370 | | - if (sad_count <= 0) { |
---|
| 370 | + if (sad_count < 0) |
---|
371 | 371 | DRM_ERROR("Couldn't read SADs: %d\n", sad_count); |
---|
| 372 | + if (sad_count <= 0) |
---|
372 | 373 | return; |
---|
373 | | - } |
---|
374 | 374 | BUG_ON(!sads); |
---|
375 | 375 | |
---|
376 | 376 | if (radeon_encoder->audio && radeon_encoder->audio->write_sad_regs) |
---|
.. | .. |
---|
516 | 516 | if (!connector) |
---|
517 | 517 | return -EINVAL; |
---|
518 | 518 | |
---|
519 | | - err = drm_hdmi_avi_infoframe_from_display_mode(&frame, mode, false); |
---|
| 519 | + err = drm_hdmi_avi_infoframe_from_display_mode(&frame, connector, mode); |
---|
520 | 520 | if (err < 0) { |
---|
521 | 521 | DRM_ERROR("failed to setup AVI infoframe: %d\n", err); |
---|
522 | 522 | return err; |
---|
523 | 523 | } |
---|
524 | 524 | |
---|
525 | 525 | 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); |
---|
534 | 530 | } |
---|
535 | 531 | |
---|
536 | 532 | err = hdmi_avi_infoframe_pack(&frame, buffer, sizeof(buffer)); |
---|