Mesa (master): intel/isl/icl: Add the maximum surface size limit

Anuj Phogat aphogat at kemper.freedesktop.org
Fri Feb 16 01:05:06 UTC 2018


Module: Mesa
Branch: master
Commit: 0427bd4954acfd99c3b00b8a0993ca3c9e816d47
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=0427bd4954acfd99c3b00b8a0993ca3c9e816d47

Author: Anuj Phogat <anuj.phogat at gmail.com>
Date:   Fri May 19 12:13:40 2017 -0700

intel/isl/icl: Add the maximum surface size limit

Signed-off-by: Anuj Phogat <anuj.phogat at gmail.com>
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>

---

 src/intel/isl/isl.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/intel/isl/isl.c b/src/intel/isl/isl.c
index 59f512fc05..f70ac22aac 100644
--- a/src/intel/isl/isl.c
+++ b/src/intel/isl/isl.c
@@ -1483,7 +1483,7 @@ isl_surf_init_s(const struct isl_device *dev,
        */
       if (size > (uint64_t) 1 << 31)
          return false;
-   } else {
+   } else if (ISL_DEV_GEN(dev) < 11) {
       /* From the Skylake PRM Vol 5, Maximum Surface Size in Bytes:
        *    "In addition to restrictions on maximum height, width, and depth,
        *     surfaces are also restricted to a maximum size of 2^38 bytes.
@@ -1492,6 +1492,10 @@ isl_surf_init_s(const struct isl_device *dev,
        */
       if (size > (uint64_t) 1 << 38)
          return false;
+   } else {
+      /* gen11+ platforms raised this limit to 2^44 bytes. */
+      if (size > (uint64_t) 1 << 44)
+         return false;
    }
 
    *surf = (struct isl_surf) {




More information about the mesa-commit mailing list