Commit 5fa576d7 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge tag 'drm-fixes-2022-05-06' of git://anongit.freedesktop.org/drm/drm

Pull drm fixes from Dave Airlie:
 "A pretty quiet week, one fbdev, msm, kconfig, and two amdgpu fixes,
  about what I'd expect for rc6.

  fbdev:

   - hotunplugging fix

  amdgpu:

   - Fix a xen dom0 regression on APUs

   - Fix a potential array overflow if a receiver were to send an
     erroneous audio channel count

  msm:

   - lockdep fix.

  it6505:

   - kconfig fix"

* tag 'drm-fixes-2022-05-06' of git://anongit.freedesktop.org/drm/drm:
  drm/amd/display: Avoid reading audio pattern past AUDIO_CHANNELS_COUNT
  drm/amdgpu: do not use passthrough mode in Xen dom0
  drm/bridge: ite-it6505: add missing Kconfig option select
  fbdev: Make fb_release() return -ENODEV if fbdev was unregistered
  drm/msm/dp: remove fail safe mode related code
parents fe27d189 57273752
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -24,6 +24,7 @@
#include <linux/module.h>

#include <drm/drm_drv.h>
#include <xen/xen.h>

#include "amdgpu.h"
#include "amdgpu_ras.h"
@@ -710,7 +711,8 @@ void amdgpu_detect_virtualization(struct amdgpu_device *adev)
		adev->virt.caps |= AMDGPU_SRIOV_CAPS_ENABLE_IOV;

	if (!reg) {
		if (is_virtual_machine())	/* passthrough mode exclus sriov mod */
		/* passthrough mode exclus sriov mod */
		if (is_virtual_machine() && !xen_initial_domain())
			adev->virt.caps |= AMDGPU_PASSTHROUGH_MODE;
	}

+1 −1
Original line number Diff line number Diff line
@@ -4440,7 +4440,7 @@ static void dp_test_get_audio_test_data(struct dc_link *link, bool disable_video
		&dpcd_pattern_type.value,
		sizeof(dpcd_pattern_type));

	channel_count = dpcd_test_mode.bits.channel_count + 1;
	channel_count = min(dpcd_test_mode.bits.channel_count + 1, AUDIO_CHANNELS_COUNT);

	// read pattern periods for requested channels when sawTooth pattern is requested
	if (dpcd_pattern_type.value == AUDIO_TEST_PATTERN_SAWTOOTH ||
+1 −0
Original line number Diff line number Diff line
@@ -78,6 +78,7 @@ config DRM_ITE_IT6505
        tristate "ITE IT6505 DisplayPort bridge"
        depends on OF
        select DRM_KMS_HELPER
        select DRM_DP_HELPER
        select EXTCON
        help
          ITE IT6505 DisplayPort bridge chip driver.
+0 −6
Original line number Diff line number Diff line
@@ -580,12 +580,6 @@ static int dp_hpd_plug_handle(struct dp_display_private *dp, u32 data)
			dp->dp_display.connector_type, state);
	mutex_unlock(&dp->event_mutex);

	/*
	 * add fail safe mode outside event_mutex scope
	 * to avoid potiential circular lock with drm thread
	 */
	dp_panel_add_fail_safe_mode(dp->dp_display.connector);

	/* uevent will complete connection part */
	return 0;
};
+0 −11
Original line number Diff line number Diff line
@@ -151,15 +151,6 @@ static int dp_panel_update_modes(struct drm_connector *connector,
	return rc;
}

void dp_panel_add_fail_safe_mode(struct drm_connector *connector)
{
	/* fail safe edid */
	mutex_lock(&connector->dev->mode_config.mutex);
	if (drm_add_modes_noedid(connector, 640, 480))
		drm_set_preferred_mode(connector, 640, 480);
	mutex_unlock(&connector->dev->mode_config.mutex);
}

int dp_panel_read_sink_caps(struct dp_panel *dp_panel,
	struct drm_connector *connector)
{
@@ -215,8 +206,6 @@ int dp_panel_read_sink_caps(struct dp_panel *dp_panel,
			rc = -ETIMEDOUT;
			goto end;
		}

		dp_panel_add_fail_safe_mode(connector);
	}

	if (panel->aux_cfg_update_done) {
Loading