Commit 2fd0e5fb authored by Dave Airlie's avatar Dave Airlie
Browse files

Merge tag 'drm-misc-fixes-2022-01-27' of git://anongit.freedesktop.org/drm/drm-misc into drm-fixes



 * drm/ast: Revert 1600x800 with 108MHz PCLK
 * drm/atomic: fix CRTC handling during modeset
 * drm/privacy-screen: Honor acpi=off
 * drm/ttm: build fix for ARCH=um

Signed-off-by: default avatarDave Airlie <airlied@redhat.com>

From: Thomas Zimmermann <tzimmermann@suse.de>
Link: https://patchwork.freedesktop.org/patch/msgid/YfJgH9fz+oo7YSXd@linux-uq9g.fritz.box
parents 23ecd4c1 7fde14d7
Loading
Loading
Loading
Loading
+0 −2
Original line number Original line Diff line number Diff line
@@ -282,8 +282,6 @@ static const struct ast_vbios_enhtable res_1360x768[] = {
};
};


static const struct ast_vbios_enhtable res_1600x900[] = {
static const struct ast_vbios_enhtable res_1600x900[] = {
	{1800, 1600, 24, 80, 1000,  900, 1, 3, VCLK108,		/* 60Hz */
	 (SyncPP | Charx8Dot | LineCompareOff | WideScreenMode | NewModeInfo), 60, 3, 0x3A },
	{1760, 1600, 48, 32, 926, 900, 3, 5, VCLK97_75,		/* 60Hz CVT RB */
	{1760, 1600, 48, 32, 926, 900, 3, 5, VCLK97_75,		/* 60Hz CVT RB */
	 (SyncNP | Charx8Dot | LineCompareOff | WideScreenMode | NewModeInfo |
	 (SyncNP | Charx8Dot | LineCompareOff | WideScreenMode | NewModeInfo |
	  AST2500PreCatchCRT), 60, 1, 0x3A },
	  AST2500PreCatchCRT), 60, 1, 0x3A },
+8 −4
Original line number Original line Diff line number Diff line
@@ -1327,8 +1327,10 @@ int drm_atomic_check_only(struct drm_atomic_state *state)


	drm_dbg_atomic(dev, "checking %p\n", state);
	drm_dbg_atomic(dev, "checking %p\n", state);


	for_each_new_crtc_in_state(state, crtc, new_crtc_state, i)
	for_each_new_crtc_in_state(state, crtc, new_crtc_state, i) {
		if (new_crtc_state->enable)
			requested_crtc |= drm_crtc_mask(crtc);
			requested_crtc |= drm_crtc_mask(crtc);
	}


	for_each_oldnew_plane_in_state(state, plane, old_plane_state, new_plane_state, i) {
	for_each_oldnew_plane_in_state(state, plane, old_plane_state, new_plane_state, i) {
		ret = drm_atomic_plane_check(old_plane_state, new_plane_state);
		ret = drm_atomic_plane_check(old_plane_state, new_plane_state);
@@ -1377,8 +1379,10 @@ int drm_atomic_check_only(struct drm_atomic_state *state)
		}
		}
	}
	}


	for_each_new_crtc_in_state(state, crtc, new_crtc_state, i)
	for_each_new_crtc_in_state(state, crtc, new_crtc_state, i) {
		if (new_crtc_state->enable)
			affected_crtc |= drm_crtc_mask(crtc);
			affected_crtc |= drm_crtc_mask(crtc);
	}


	/*
	/*
	 * For commits that allow modesets drivers can add other CRTCs to the
	 * For commits that allow modesets drivers can add other CRTCs to the
+3 −0
Original line number Original line Diff line number Diff line
@@ -33,6 +33,9 @@ static bool __init detect_thinkpad_privacy_screen(void)
	unsigned long long output;
	unsigned long long output;
	acpi_status status;
	acpi_status status;


	if (acpi_disabled)
		return false;

	/* Get embedded-controller handle */
	/* Get embedded-controller handle */
	status = acpi_get_devices("PNP0C09", acpi_set_handle, NULL, &ec_handle);
	status = acpi_get_devices("PNP0C09", acpi_set_handle, NULL, &ec_handle);
	if (ACPI_FAILURE(status) || !ec_handle)
	if (ACPI_FAILURE(status) || !ec_handle)