mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-20 09:30:13 +01:00
pvr: add device info for GE7800 (15.5.1.64)
Requested by the community [1]. [1] https://gitlab.freedesktop.org/imagination/linux-firmware/-/issues/13 Signed-off-by: Alessio Belle <alessio.belle@imgtec.com> Reviewed-by: Simon Perretta <simon.perretta@imgtec.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38211>
This commit is contained in:
parent
8005bf631c
commit
b83bd94d69
3 changed files with 109 additions and 0 deletions
|
|
@ -43,6 +43,7 @@ Product Series B.V.N.C
|
||||||
GX6250 Series 6XT 4.45.2.58
|
GX6250 Series 6XT 4.45.2.58
|
||||||
GX6650 Series 6XT 4.46.6.62
|
GX6650 Series 6XT 4.46.6.62
|
||||||
G6110 Series 6XE 5.9.1.46
|
G6110 Series 6XE 5.9.1.46
|
||||||
|
GE7800 Series 7XE 15.5.1.64
|
||||||
GE8300 Series 8XE 22.68.54.30
|
GE8300 Series 8XE 22.68.54.30
|
||||||
GE8300 Series 8XE 22.102.54.38
|
GE8300 Series 8XE 22.102.54.38
|
||||||
BXE-2-32 B-Series 36.29.52.182
|
BXE-2-32 B-Series 36.29.52.182
|
||||||
|
|
|
||||||
105
src/imagination/common/device_info/ge7800.h
Normal file
105
src/imagination/common/device_info/ge7800.h
Normal file
|
|
@ -0,0 +1,105 @@
|
||||||
|
/*
|
||||||
|
* Copyright © 2025 Imagination Technologies Ltd.
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef GE7800_H
|
||||||
|
#define GE7800_H
|
||||||
|
|
||||||
|
#include <stdbool.h>
|
||||||
|
|
||||||
|
#include "pvr_device_info.h"
|
||||||
|
|
||||||
|
#define PVR_DEVICE_IDENT_15_V_1_64 \
|
||||||
|
.device_id = 0x15001064, .series_name = "Rogue", .public_name = "GE7800"
|
||||||
|
|
||||||
|
static const struct pvr_device_features pvr_device_features_15_V_1_64 = {
|
||||||
|
.has_astc = true,
|
||||||
|
.has_common_store_size_in_dwords = true,
|
||||||
|
.has_compute = true,
|
||||||
|
.has_fbcdc_algorithm = true,
|
||||||
|
.has_gs_rta_support = true,
|
||||||
|
.has_isp_max_tiles_in_flight = true,
|
||||||
|
.has_isp_samples_per_pixel = true,
|
||||||
|
.has_max_instances_per_pds_task = true,
|
||||||
|
.has_max_multisample = true,
|
||||||
|
.has_max_partitions = true,
|
||||||
|
.has_max_usc_tasks = true,
|
||||||
|
.has_num_clusters = true,
|
||||||
|
.has_num_raster_pipes = true,
|
||||||
|
.has_pbe_filterable_f16 = true,
|
||||||
|
.has_roguexe = true,
|
||||||
|
.has_slc_cache_line_size_bits = true,
|
||||||
|
.has_tile_size_x = true,
|
||||||
|
.has_tile_size_y = true,
|
||||||
|
.has_tpu_parallel_instances = true,
|
||||||
|
.has_unified_store_depth = true,
|
||||||
|
.has_usc_f16sop_u8 = true,
|
||||||
|
.has_usc_min_output_registers_per_pix = true,
|
||||||
|
.has_usc_slots = true,
|
||||||
|
.has_uvs_banks = true,
|
||||||
|
.has_uvs_pba_entries = true,
|
||||||
|
.has_uvs_vtx_entries = true,
|
||||||
|
.has_vdm_cam_size = true,
|
||||||
|
|
||||||
|
.common_store_size_in_dwords = 1344U * 4U * 4U,
|
||||||
|
.fbcdc_algorithm = 2U,
|
||||||
|
.isp_max_tiles_in_flight = 2U,
|
||||||
|
.isp_samples_per_pixel = 2U,
|
||||||
|
.max_instances_per_pds_task = 32U,
|
||||||
|
.max_multisample = 4U,
|
||||||
|
.max_partitions = 12U,
|
||||||
|
.max_usc_tasks = 96U,
|
||||||
|
.num_clusters = 1U,
|
||||||
|
.num_raster_pipes = 1U,
|
||||||
|
.slc_cache_line_size_bits = 512U,
|
||||||
|
.tile_size_x = 32U,
|
||||||
|
.tile_size_y = 32U,
|
||||||
|
.tpu_parallel_instances = 4U,
|
||||||
|
.unified_store_depth = 208U,
|
||||||
|
.usc_min_output_registers_per_pix = 2U,
|
||||||
|
.usc_slots = 56U,
|
||||||
|
.uvs_banks = 8U,
|
||||||
|
.uvs_pba_entries = 320U,
|
||||||
|
.uvs_vtx_entries = 288U,
|
||||||
|
.vdm_cam_size = 128U,
|
||||||
|
|
||||||
|
.has_requires_fb_cdc_zls_setup = true,
|
||||||
|
.has_usc_itr_parallel_instances = true,
|
||||||
|
|
||||||
|
.usc_itr_parallel_instances = 16U,
|
||||||
|
};
|
||||||
|
|
||||||
|
static const struct pvr_device_enhancements
|
||||||
|
pvr_device_enhancements_15_5_1_64 = {
|
||||||
|
.has_ern35421 = true,
|
||||||
|
};
|
||||||
|
|
||||||
|
static const struct pvr_device_quirks pvr_device_quirks_15_5_1_64 = {
|
||||||
|
.has_brn44079 = true,
|
||||||
|
.has_brn48492 = true,
|
||||||
|
.has_brn49032 = true,
|
||||||
|
.has_brn49927 = true,
|
||||||
|
.has_brn52942 = true,
|
||||||
|
.has_brn58839 = true,
|
||||||
|
.has_brn62269 = true,
|
||||||
|
.has_brn66011 = true,
|
||||||
|
.has_brn70165 = true,
|
||||||
|
.has_brn74056 = true,
|
||||||
|
};
|
||||||
|
|
||||||
|
static const struct pvr_device_info pvr_device_info_15_5_1_64 = {
|
||||||
|
.ident = {
|
||||||
|
PVR_DEVICE_IDENT_15_V_1_64,
|
||||||
|
.b = 15,
|
||||||
|
.v = 5,
|
||||||
|
.n = 1,
|
||||||
|
.c = 64,
|
||||||
|
},
|
||||||
|
.features = pvr_device_features_15_V_1_64,
|
||||||
|
.enhancements = pvr_device_enhancements_15_5_1_64,
|
||||||
|
.quirks = pvr_device_quirks_15_5_1_64,
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif /* GE7800_H */
|
||||||
|
|
@ -34,6 +34,7 @@
|
||||||
#include "device_info/g6110.h"
|
#include "device_info/g6110.h"
|
||||||
#include "device_info/gx6250.h"
|
#include "device_info/gx6250.h"
|
||||||
#include "device_info/gx6650.h"
|
#include "device_info/gx6650.h"
|
||||||
|
#include "device_info/ge7800.h"
|
||||||
#include "device_info/ge8300.h"
|
#include "device_info/ge8300.h"
|
||||||
#include "device_info/axe-1-16m.h"
|
#include "device_info/axe-1-16m.h"
|
||||||
#include "device_info/bxe-2-32.h"
|
#include "device_info/bxe-2-32.h"
|
||||||
|
|
@ -49,6 +50,7 @@ static const struct pvr_device_info *device_infos[] = {
|
||||||
&pvr_device_info_4_45_2_58,
|
&pvr_device_info_4_45_2_58,
|
||||||
&pvr_device_info_4_46_6_62,
|
&pvr_device_info_4_46_6_62,
|
||||||
&pvr_device_info_5_9_1_46,
|
&pvr_device_info_5_9_1_46,
|
||||||
|
&pvr_device_info_15_5_1_64,
|
||||||
&pvr_device_info_22_68_54_30,
|
&pvr_device_info_22_68_54_30,
|
||||||
&pvr_device_info_22_102_54_38,
|
&pvr_device_info_22_102_54_38,
|
||||||
&pvr_device_info_33_15_11_3,
|
&pvr_device_info_33_15_11_3,
|
||||||
|
|
@ -81,6 +83,7 @@ int pvr_device_info_init(struct pvr_device_info *info, uint64_t bvnc)
|
||||||
CASE_PACKED_BVNC_DEVICE_INFO(4, 45, 2, 58);
|
CASE_PACKED_BVNC_DEVICE_INFO(4, 45, 2, 58);
|
||||||
CASE_PACKED_BVNC_DEVICE_INFO(4, 46, 6, 62);
|
CASE_PACKED_BVNC_DEVICE_INFO(4, 46, 6, 62);
|
||||||
CASE_PACKED_BVNC_DEVICE_INFO(5, 9, 1, 46);
|
CASE_PACKED_BVNC_DEVICE_INFO(5, 9, 1, 46);
|
||||||
|
CASE_PACKED_BVNC_DEVICE_INFO(15, 5, 1, 64);
|
||||||
CASE_PACKED_BVNC_DEVICE_INFO(22, 68, 54, 30);
|
CASE_PACKED_BVNC_DEVICE_INFO(22, 68, 54, 30);
|
||||||
CASE_PACKED_BVNC_DEVICE_INFO(22, 102, 54, 38);
|
CASE_PACKED_BVNC_DEVICE_INFO(22, 102, 54, 38);
|
||||||
CASE_PACKED_BVNC_DEVICE_INFO(33, 15, 11, 3);
|
CASE_PACKED_BVNC_DEVICE_INFO(33, 15, 11, 3);
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue