2017-12-07 09:26:28

by Alex Tu

[permalink] [raw]
Subject: [PATCH] drm/i915: Increase max texture to 16k for gen9+

Rrefer to another patch [1] on mesa to extend width/height to 16384.
For issue :
- https://bugs.freedesktop.org/show_bug.cgi?id=102508
- LP: #1714178 Triple monitor display failed with Dell Dock (HiDPI)

[1] https://patchwork.freedesktop.org/patch/124918/

Signed-off-by: Alex Tu <[email protected]>
---
drivers/gpu/drm/i915/intel_display.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index 47a2f6acee50..556fa57b18b8 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -13905,7 +13905,7 @@ u32 intel_fb_pitch_limit(struct drm_i915_private *dev_priv,
/* "The stride in bytes must not exceed the of the size of 8K
* pixels and 32K bytes."
*/
- return min(8192 * cpp, 32768);
+ return min(16384 * cpp, 65536);
} else if (gen >= 5 && !HAS_GMCH_DISPLAY(dev_priv)) {
return 32*1024;
} else if (gen >= 4) {
@@ -14604,8 +14604,8 @@ int intel_modeset_init(struct drm_device *dev)
dev->mode_config.max_width = 4096;
dev->mode_config.max_height = 4096;
} else {
- dev->mode_config.max_width = 8192;
- dev->mode_config.max_height = 8192;
+ dev->mode_config.max_width = 16384;
+ dev->mode_config.max_height = 16384;
}

if (IS_I845G(dev_priv) || IS_I865G(dev_priv)) {
--
2.11.0


2017-12-07 13:25:12

by Joonas Lahtinen

[permalink] [raw]
Subject: Re: [PATCH] drm/i915: Increase max texture to 16k for gen9+

+ Ville as Jani is OoO

On Thu, 2017-12-07 at 17:26 +0800, Alex Tu wrote:
> Rrefer to another patch [1] on mesa to extend width/height to 16384.
> For issue :
> - https://bugs.freedesktop.org/show_bug.cgi?id=102508
> - LP: #1714178 Triple monitor display failed with Dell Dock (HiDPI)
>
> [1] https://patchwork.freedesktop.org/patch/124918/
>
> Signed-off-by: Alex Tu <[email protected]>
> ---
> drivers/gpu/drm/i915/intel_display.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index 47a2f6acee50..556fa57b18b8 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -13905,7 +13905,7 @@ u32 intel_fb_pitch_limit(struct drm_i915_private *dev_priv,
> /* "The stride in bytes must not exceed the of the size of 8K
> * pixels and 32K bytes."
> */
> - return min(8192 * cpp, 32768);
> + return min(16384 * cpp, 65536);
> } else if (gen >= 5 && !HAS_GMCH_DISPLAY(dev_priv)) {
> return 32*1024;
> } else if (gen >= 4) {
> @@ -14604,8 +14604,8 @@ int intel_modeset_init(struct drm_device *dev)
> dev->mode_config.max_width = 4096;
> dev->mode_config.max_height = 4096;
> } else {
> - dev->mode_config.max_width = 8192;
> - dev->mode_config.max_height = 8192;
> + dev->mode_config.max_width = 16384;
> + dev->mode_config.max_height = 16384;
> }
>
> if (IS_I845G(dev_priv) || IS_I865G(dev_priv)) {
--
Joonas Lahtinen
Open Source Technology Center
Intel Corporation

2017-12-07 15:32:30

by Ville Syrjälä

[permalink] [raw]
Subject: Re: [Intel-gfx] [PATCH] drm/i915: Increase max texture to 16k for gen9+

On Thu, Dec 07, 2017 at 05:26:00PM +0800, Alex Tu wrote:
> Rrefer to another patch [1] on mesa to extend width/height to 16384.
> For issue :
> - https://bugs.freedesktop.org/show_bug.cgi?id=102508
> - LP: #1714178 Triple monitor display failed with Dell Dock (HiDPI)
>
> [1] https://patchwork.freedesktop.org/patch/124918/
>
> Signed-off-by: Alex Tu <[email protected]>
> ---
> drivers/gpu/drm/i915/intel_display.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index 47a2f6acee50..556fa57b18b8 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -13905,7 +13905,7 @@ u32 intel_fb_pitch_limit(struct drm_i915_private *dev_priv,
> /* "The stride in bytes must not exceed the of the size of 8K
> * pixels and 32K bytes."

The spec queote clearly says the patch is wrong. Either that or the spec
quote is outdated.

> */
> - return min(8192 * cpp, 32768);
> + return min(16384 * cpp, 65536);
> } else if (gen >= 5 && !HAS_GMCH_DISPLAY(dev_priv)) {
> return 32*1024;
> } else if (gen >= 4) {
> @@ -14604,8 +14604,8 @@ int intel_modeset_init(struct drm_device *dev)
> dev->mode_config.max_width = 4096;
> dev->mode_config.max_height = 4096;
> } else {
> - dev->mode_config.max_width = 8192;
> - dev->mode_config.max_height = 8192;
> + dev->mode_config.max_width = 16384;
> + dev->mode_config.max_height = 16384;

Even if this would be correct (which it's not for most platforms at
least, not quite sure about the very latest hardware), anyone doing
this should at least do a cursory check of the relevant math in the
driver to make seure we don't end up with integer overflows.

> }
>
> if (IS_I845G(dev_priv) || IS_I865G(dev_priv)) {
> --
> 2.11.0
>
> _______________________________________________
> Intel-gfx mailing list
> [email protected]
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx

--
Ville Syrj?l?
Intel OTC