summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/v3d/v3d_screen.c
diff options
context:
space:
mode:
authorEric Anholt <[email protected]>2019-04-11 12:28:30 -0700
committerEric Anholt <[email protected]>2019-04-12 15:59:31 -0700
commit8a2d91e1248e31426ff656c02d3e598f9e117422 (patch)
tree612f30a6394ceaeb540fb89c99548b635a916fd7 /src/gallium/drivers/v3d/v3d_screen.c
parent11ba8a46e4e72e028b77519b3b90af36f4982f26 (diff)
v3d: Detect the correct number of QPUs and use it to fix the spill size.
We were missing a * 4 even if the particular hardware matched our assumption.
Diffstat (limited to 'src/gallium/drivers/v3d/v3d_screen.c')
-rw-r--r--src/gallium/drivers/v3d/v3d_screen.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/gallium/drivers/v3d/v3d_screen.c b/src/gallium/drivers/v3d/v3d_screen.c
index b77e3d9060e..6f91e35521a 100644
--- a/src/gallium/drivers/v3d/v3d_screen.c
+++ b/src/gallium/drivers/v3d/v3d_screen.c
@@ -594,6 +594,10 @@ v3d_get_device_info(struct v3d_screen *screen)
screen->devinfo.vpm_size = (ident1.value >> 28 & 0xf) * 8192;
+ int nslc = (ident1.value >> 4) & 0xf;
+ int qups = (ident1.value >> 8) & 0xf;
+ screen->devinfo.qpu_count = nslc * qups;
+
switch (screen->devinfo.ver) {
case 33:
case 41: