etnaviv: drm-shim: add GC400
authorChristian Gmeiner <christian.gmeiner@gmail.com>
Sat, 21 Dec 2019 19:54:29 +0000 (20:54 +0100)
committerMarge Bot <eric+marge@anholt.net>
Thu, 30 Jan 2020 04:05:39 +0000 (04:05 +0000)
These are the ETNAVIV_PARAM's returned from a GC400 found on a
STM32MP157C-DK2 Discovery Board running mainline kernel.

Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3195>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3195>

src/etnaviv/drm-shim/etnaviv_noop.c

index f1f9e8a51f9fbdea891de8c0ff7d3d96f8f063bd..66b1c420efb1e9e49d94fa99b7e3fd5356518413 100644 (file)
@@ -38,6 +38,33 @@ struct etna_shim_gpu
 };
 
 static const struct etna_shim_gpu gpus[] = {
+   {
+      .name = "GC400",
+      .reg_map = (const uint64_t[]){
+         [ETNAVIV_PARAM_GPU_MODEL] = 0x400,
+         [ETNAVIV_PARAM_GPU_REVISION] = 0x4652,
+         [ETNAVIV_PARAM_GPU_FEATURES_0] = 0xa0e9e004,
+         [ETNAVIV_PARAM_GPU_FEATURES_1] = 0xe1299fff,
+         [ETNAVIV_PARAM_GPU_FEATURES_2] = 0xbe13b219,
+         [ETNAVIV_PARAM_GPU_FEATURES_3] = 0xce110010,
+         [ETNAVIV_PARAM_GPU_FEATURES_4] = 0x8000001,
+         [ETNAVIV_PARAM_GPU_FEATURES_5] = 0x20102,
+         [ETNAVIV_PARAM_GPU_FEATURES_6] = 0x120000,
+         [ETNAVIV_PARAM_GPU_FEATURES_7] = 0x0,
+         [ETNAVIV_PARAM_GPU_STREAM_COUNT] = 0x4,
+         [ETNAVIV_PARAM_GPU_REGISTER_MAX] = 0x40,
+         [ETNAVIV_PARAM_GPU_THREAD_COUNT] = 0x80,
+         [ETNAVIV_PARAM_GPU_VERTEX_CACHE_SIZE] = 0x8,
+         [ETNAVIV_PARAM_GPU_SHADER_CORE_COUNT] = 0x1,
+         [ETNAVIV_PARAM_GPU_PIXEL_PIPES] = 0x1,
+         [ETNAVIV_PARAM_GPU_VERTEX_OUTPUT_BUFFER_SIZE] = 0x80,
+         [ETNAVIV_PARAM_GPU_BUFFER_SIZE] = 0x0,
+         [ETNAVIV_PARAM_GPU_INSTRUCTION_COUNT] = 0x100,
+         [ETNAVIV_PARAM_GPU_NUM_CONSTANTS] = 0x140,
+         [ETNAVIV_PARAM_GPU_NUM_VARYINGS] = 0x8,
+         [ETNAVIV_PARAM_SOFTPIN_START_ADDR] = ~0ULL,
+      }
+   },
    {
       .name = "GC2000",
       .reg_map = (const uint64_t[]){
@@ -214,7 +241,7 @@ drm_shim_driver_init(void)
 
    /* NOTE: keep keep default value and fallback index in sync */
    if (!shim_gpu)
-      shim_gpu = &gpus[0];
+      shim_gpu = &gpus[1];
 
    fprintf(stderr, "Using %s as shim gpu\n", shim_gpu->name);
 }