GNU Linux-libre 6.8.9-gnu
[releases.git] / include / drm / xe_pciids.h
1 /* SPDX-License-Identifier: MIT */
2 /*
3  * Copyright © 2022 Intel Corporation
4  */
5
6 #ifndef _XE_PCIIDS_H_
7 #define _XE_PCIIDS_H_
8
9 /*
10  * Lists below can be turned into initializers for a struct pci_device_id
11  * by defining INTEL_VGA_DEVICE:
12  *
13  * #define INTEL_VGA_DEVICE(id, info) { \
14  *      0x8086, id,                     \
15  *      ~0, ~0,                         \
16  *      0x030000, 0xff0000,             \
17  *      (unsigned long) info }
18  *
19  * And then calling like:
20  *
21  * XE_TGL_12_GT1_IDS(INTEL_VGA_DEVICE, ## __VA_ARGS__)
22  *
23  * To turn them into something else, just provide a different macro passed as
24  * first argument.
25  */
26
27 /* TGL */
28 #define XE_TGL_GT1_IDS(MACRO__, ...)            \
29         MACRO__(0x9A60, ## __VA_ARGS__),        \
30         MACRO__(0x9A68, ## __VA_ARGS__),        \
31         MACRO__(0x9A70, ## __VA_ARGS__)
32
33 #define XE_TGL_GT2_IDS(MACRO__, ...)            \
34         MACRO__(0x9A40, ## __VA_ARGS__),        \
35         MACRO__(0x9A49, ## __VA_ARGS__),        \
36         MACRO__(0x9A59, ## __VA_ARGS__),        \
37         MACRO__(0x9A78, ## __VA_ARGS__),        \
38         MACRO__(0x9AC0, ## __VA_ARGS__),        \
39         MACRO__(0x9AC9, ## __VA_ARGS__),        \
40         MACRO__(0x9AD9, ## __VA_ARGS__),        \
41         MACRO__(0x9AF8, ## __VA_ARGS__)
42
43 #define XE_TGL_IDS(MACRO__, ...)                \
44         XE_TGL_GT1_IDS(MACRO__, ## __VA_ARGS__),\
45         XE_TGL_GT2_IDS(MACRO__, ## __VA_ARGS__)
46
47 /* RKL */
48 #define XE_RKL_IDS(MACRO__, ...)                \
49         MACRO__(0x4C80, ## __VA_ARGS__),        \
50         MACRO__(0x4C8A, ## __VA_ARGS__),        \
51         MACRO__(0x4C8B, ## __VA_ARGS__),        \
52         MACRO__(0x4C8C, ## __VA_ARGS__),        \
53         MACRO__(0x4C90, ## __VA_ARGS__),        \
54         MACRO__(0x4C9A, ## __VA_ARGS__)
55
56 /* DG1 */
57 #define XE_DG1_IDS(MACRO__, ...)                \
58         MACRO__(0x4905, ## __VA_ARGS__),        \
59         MACRO__(0x4906, ## __VA_ARGS__),        \
60         MACRO__(0x4907, ## __VA_ARGS__),        \
61         MACRO__(0x4908, ## __VA_ARGS__),        \
62         MACRO__(0x4909, ## __VA_ARGS__)
63
64 /* ADL-S */
65 #define XE_ADLS_IDS(MACRO__, ...)               \
66         MACRO__(0x4680, ## __VA_ARGS__),        \
67         MACRO__(0x4682, ## __VA_ARGS__),        \
68         MACRO__(0x4688, ## __VA_ARGS__),        \
69         MACRO__(0x468A, ## __VA_ARGS__),        \
70         MACRO__(0x468B, ## __VA_ARGS__),        \
71         MACRO__(0x4690, ## __VA_ARGS__),        \
72         MACRO__(0x4692, ## __VA_ARGS__),        \
73         MACRO__(0x4693, ## __VA_ARGS__)
74
75 /* ADL-P */
76 #define XE_ADLP_IDS(MACRO__, ...)               \
77         MACRO__(0x46A0, ## __VA_ARGS__),        \
78         MACRO__(0x46A1, ## __VA_ARGS__),        \
79         MACRO__(0x46A2, ## __VA_ARGS__),        \
80         MACRO__(0x46A3, ## __VA_ARGS__),        \
81         MACRO__(0x46A6, ## __VA_ARGS__),        \
82         MACRO__(0x46A8, ## __VA_ARGS__),        \
83         MACRO__(0x46AA, ## __VA_ARGS__),        \
84         MACRO__(0x462A, ## __VA_ARGS__),        \
85         MACRO__(0x4626, ## __VA_ARGS__),        \
86         MACRO__(0x4628, ## __VA_ARGS__),        \
87         MACRO__(0x46B0, ## __VA_ARGS__),        \
88         MACRO__(0x46B1, ## __VA_ARGS__),        \
89         MACRO__(0x46B2, ## __VA_ARGS__),        \
90         MACRO__(0x46B3, ## __VA_ARGS__),        \
91         MACRO__(0x46C0, ## __VA_ARGS__),        \
92         MACRO__(0x46C1, ## __VA_ARGS__),        \
93         MACRO__(0x46C2, ## __VA_ARGS__),        \
94         MACRO__(0x46C3, ## __VA_ARGS__)
95
96 /* ADL-N */
97 #define XE_ADLN_IDS(MACRO__, ...)               \
98         MACRO__(0x46D0, ## __VA_ARGS__),        \
99         MACRO__(0x46D1, ## __VA_ARGS__),        \
100         MACRO__(0x46D2, ## __VA_ARGS__)
101
102 /* RPL-S */
103 #define XE_RPLS_IDS(MACRO__, ...)               \
104         MACRO__(0xA780, ## __VA_ARGS__),        \
105         MACRO__(0xA781, ## __VA_ARGS__),        \
106         MACRO__(0xA782, ## __VA_ARGS__),        \
107         MACRO__(0xA783, ## __VA_ARGS__),        \
108         MACRO__(0xA788, ## __VA_ARGS__),        \
109         MACRO__(0xA789, ## __VA_ARGS__),        \
110         MACRO__(0xA78A, ## __VA_ARGS__),        \
111         MACRO__(0xA78B, ## __VA_ARGS__)
112
113 /* RPL-U */
114 #define XE_RPLU_IDS(MACRO__, ...)               \
115         MACRO__(0xA721, ## __VA_ARGS__),        \
116         MACRO__(0xA7A1, ## __VA_ARGS__),        \
117         MACRO__(0xA7A9, ## __VA_ARGS__),        \
118         MACRO__(0xA7AC, ## __VA_ARGS__),        \
119         MACRO__(0xA7AD, ## __VA_ARGS__)
120
121 /* RPL-P */
122 #define XE_RPLP_IDS(MACRO__, ...)               \
123         XE_RPLU_IDS(MACRO__, ## __VA_ARGS__),   \
124         MACRO__(0xA720, ## __VA_ARGS__),        \
125         MACRO__(0xA7A0, ## __VA_ARGS__),        \
126         MACRO__(0xA7A8, ## __VA_ARGS__),        \
127         MACRO__(0xA7AA, ## __VA_ARGS__),        \
128         MACRO__(0xA7AB, ## __VA_ARGS__)
129
130 /* DG2 */
131 #define XE_DG2_G10_IDS(MACRO__, ...)            \
132         MACRO__(0x5690, ## __VA_ARGS__),        \
133         MACRO__(0x5691, ## __VA_ARGS__),        \
134         MACRO__(0x5692, ## __VA_ARGS__),        \
135         MACRO__(0x56A0, ## __VA_ARGS__),        \
136         MACRO__(0x56A1, ## __VA_ARGS__),        \
137         MACRO__(0x56A2, ## __VA_ARGS__)
138
139 #define XE_DG2_G11_IDS(MACRO__, ...)            \
140         MACRO__(0x5693, ## __VA_ARGS__),        \
141         MACRO__(0x5694, ## __VA_ARGS__),        \
142         MACRO__(0x5695, ## __VA_ARGS__),        \
143         MACRO__(0x56A5, ## __VA_ARGS__),        \
144         MACRO__(0x56A6, ## __VA_ARGS__),        \
145         MACRO__(0x56B0, ## __VA_ARGS__),        \
146         MACRO__(0x56B1, ## __VA_ARGS__),        \
147         MACRO__(0x56BA, ## __VA_ARGS__),        \
148         MACRO__(0x56BB, ## __VA_ARGS__),        \
149         MACRO__(0x56BC, ## __VA_ARGS__),        \
150         MACRO__(0x56BD, ## __VA_ARGS__)
151
152 #define XE_DG2_G12_IDS(MACRO__, ...)            \
153         MACRO__(0x5696, ## __VA_ARGS__),        \
154         MACRO__(0x5697, ## __VA_ARGS__),        \
155         MACRO__(0x56A3, ## __VA_ARGS__),        \
156         MACRO__(0x56A4, ## __VA_ARGS__),        \
157         MACRO__(0x56B2, ## __VA_ARGS__),        \
158         MACRO__(0x56B3, ## __VA_ARGS__)
159
160 #define XE_DG2_IDS(MACRO__, ...)                \
161         XE_DG2_G10_IDS(MACRO__, ## __VA_ARGS__),\
162         XE_DG2_G11_IDS(MACRO__, ## __VA_ARGS__),\
163         XE_DG2_G12_IDS(MACRO__, ## __VA_ARGS__)
164
165 #define XE_ATS_M150_IDS(MACRO__, ...)           \
166         MACRO__(0x56C0, ## __VA_ARGS__),        \
167         MACRO__(0x56C2, ## __VA_ARGS__)
168
169 #define XE_ATS_M75_IDS(MACRO__, ...)            \
170         MACRO__(0x56C1, ## __VA_ARGS__)
171
172 #define XE_ATS_M_IDS(MACRO__, ...)              \
173         XE_ATS_M150_IDS(MACRO__, ## __VA_ARGS__),\
174         XE_ATS_M75_IDS(MACRO__, ## __VA_ARGS__)
175
176 /* MTL / ARL */
177 #define XE_MTL_IDS(MACRO__, ...)                \
178         MACRO__(0x7D40, ## __VA_ARGS__),        \
179         MACRO__(0x7D45, ## __VA_ARGS__),        \
180         MACRO__(0x7D55, ## __VA_ARGS__),        \
181         MACRO__(0x7D60, ## __VA_ARGS__),        \
182         MACRO__(0x7D67, ## __VA_ARGS__),        \
183         MACRO__(0x7DD5, ## __VA_ARGS__)
184
185 #define XE_LNL_IDS(MACRO__, ...) \
186         MACRO__(0x6420, ## __VA_ARGS__), \
187         MACRO__(0x64A0, ## __VA_ARGS__), \
188         MACRO__(0x64B0, ## __VA_ARGS__)
189
190 #endif