xref: /linux/drivers/gpu/drm/msm/adreno/a3xx_catalog.c (revision 566ab427f827b0256d3e8ce0235d088e6a9c28bd)
1 // SPDX-License-Identifier: GPL-2.0-only
2 /*
3  * Copyright (C) 2013-2014 Red Hat
4  * Author: Rob Clark <robdclark@gmail.com>
5  *
6  * Copyright (c) 2014,2017 The Linux Foundation. All rights reserved.
7  */
8 
9 #include "adreno_gpu.h"
10 
11 static const struct adreno_info a3xx_gpus[] = {
12 	{
13 		.chip_ids = ADRENO_CHIP_IDS(0x03000512),
14 		.family = ADRENO_3XX,
15 		.fw = {
16 			[ADRENO_FW_PM4] = "a330_pm4.fw",
17 			[ADRENO_FW_PFP] = "a330_pfp.fw",
18 		},
19 		.gmem  = SZ_128K,
20 		.inactive_period = DRM_MSM_INACTIVE_PERIOD,
21 		.init  = a3xx_gpu_init,
22 	}, {
23 		.chip_ids = ADRENO_CHIP_IDS(0x03000520),
24 		.family = ADRENO_3XX,
25 		.revn  = 305,
26 		.fw = {
27 			[ADRENO_FW_PM4] = "a300_pm4.fw",
28 			[ADRENO_FW_PFP] = "a300_pfp.fw",
29 		},
30 		.gmem  = SZ_256K,
31 		.inactive_period = DRM_MSM_INACTIVE_PERIOD,
32 		.init  = a3xx_gpu_init,
33 	}, {
34 		.chip_ids = ADRENO_CHIP_IDS(0x03000600),
35 		.family = ADRENO_3XX,
36 		.revn  = 307,        /* because a305c is revn==306 */
37 		.fw = {
38 			[ADRENO_FW_PM4] = "a300_pm4.fw",
39 			[ADRENO_FW_PFP] = "a300_pfp.fw",
40 		},
41 		.gmem  = SZ_128K,
42 		.inactive_period = DRM_MSM_INACTIVE_PERIOD,
43 		.init  = a3xx_gpu_init,
44 	}, {
45 		.chip_ids = ADRENO_CHIP_IDS(0x03000620),
46 		.family = ADRENO_3XX,
47 		.revn = 308,
48 		.fw = {
49 			[ADRENO_FW_PM4] = "a300_pm4.fw",
50 			[ADRENO_FW_PFP] = "a300_pfp.fw",
51 		},
52 		.gmem = SZ_128K,
53 		.inactive_period = DRM_MSM_INACTIVE_PERIOD,
54 		.init = a3xx_gpu_init,
55 	}, {
56 		.chip_ids = ADRENO_CHIP_IDS(
57 			0x03020000,
58 			0x03020001,
59 			0x03020002
60 		),
61 		.family = ADRENO_3XX,
62 		.revn  = 320,
63 		.fw = {
64 			[ADRENO_FW_PM4] = "a300_pm4.fw",
65 			[ADRENO_FW_PFP] = "a300_pfp.fw",
66 		},
67 		.gmem  = SZ_512K,
68 		.inactive_period = DRM_MSM_INACTIVE_PERIOD,
69 		.init  = a3xx_gpu_init,
70 	}, {
71 		.chip_ids = ADRENO_CHIP_IDS(
72 			0x03030000,
73 			0x03030001,
74 			0x03030002
75 		),
76 		.family = ADRENO_3XX,
77 		.revn  = 330,
78 		.fw = {
79 			[ADRENO_FW_PM4] = "a330_pm4.fw",
80 			[ADRENO_FW_PFP] = "a330_pfp.fw",
81 		},
82 		.gmem  = SZ_1M,
83 		.inactive_period = DRM_MSM_INACTIVE_PERIOD,
84 		.init  = a3xx_gpu_init,
85 	}
86 };
87 DECLARE_ADRENO_GPULIST(a3xx);
88 
89 MODULE_FIRMWARE("qcom/a300_pm4.fw");
90 MODULE_FIRMWARE("qcom/a300_pfp.fw");
91 MODULE_FIRMWARE("qcom/a330_pm4.fw");
92 MODULE_FIRMWARE("qcom/a330_pfp.fw");
93