-
Notifications
You must be signed in to change notification settings - Fork 31
/
7001-drm-i915-fbdev-Discard-BIOS-framebuffers-exceeding-h.patch
40 lines (35 loc) · 1.66 KB
/
7001-drm-i915-fbdev-Discard-BIOS-framebuffers-exceeding-h.patch
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
From 155bb242ee7f4e177386fbdec565db6d4a173d5e Mon Sep 17 00:00:00 2001
From: Aun-Ali Zaidi <[email protected]>
Date: Wed, 16 Sep 2020 18:31:10 -0500
Subject: [PATCH] drm/i915/fbdev: Discard BIOS framebuffers exceeding hardware
supported size
On certain devices with high-DPI panels, the BIOS supplied framebuffer is larger
than what is physically supported by the panel, resulting in overscan. A previous
check introduced with edd586fe ("drm/i915: Discard BIOS framebuffers too small to
accommodate chosen mode"), handles the lower bound case. We extend that check
to include the upper bound case.
Signed-off-by: Aun-Ali Zaidi <[email protected]>
---
drivers/gpu/drm/i915/display/intel_fbdev.c | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_fbdev.c b/drivers/gpu/drm/i915/display/intel_fbdev.c
index bd39eb6a21b8..1949526cbe20 100644
--- a/drivers/gpu/drm/i915/display/intel_fbdev.c
+++ b/drivers/gpu/drm/i915/display/intel_fbdev.c
@@ -181,10 +181,12 @@ static int intelfb_create(struct drm_fb_helper *helper,
int ret;
if (intel_fb &&
- (sizes->fb_width > intel_fb->base.width ||
- sizes->fb_height > intel_fb->base.height)) {
+ ((sizes->fb_width > intel_fb->base.width ||
+ sizes->fb_height > intel_fb->base.height) ||
+ (sizes->fb_width < intel_fb->base.width ||
+ sizes->fb_height < intel_fb->base.height))) {
drm_dbg_kms(&dev_priv->drm,
- "BIOS fb too small (%dx%d), we require (%dx%d),"
+ "BIOS fb invalid size (%dx%d), we require (%dx%d),"
" releasing it\n",
intel_fb->base.width, intel_fb->base.height,
sizes->fb_width, sizes->fb_height);
--
2.28.0