|
40 | 40 | * their own names :-( |
41 | 41 | */ |
42 | 42 |
|
| 43 | +#define IFM(_fam, _model) VFM_MAKE(X86_VENDOR_INTEL, _fam, _model) |
| 44 | + |
43 | 45 | /* Wildcard match for FAM6 so X86_MATCH_INTEL_FAM6_MODEL(ANY) works */ |
44 | 46 | #define INTEL_FAM6_ANY X86_MODEL_ANY |
| 47 | +/* Wildcard match for FAM6 so X86_MATCH_VFM(ANY) works */ |
| 48 | +#define INTEL_ANY IFM(X86_FAMILY_ANY, X86_MODEL_ANY) |
45 | 49 |
|
46 | 50 | #define INTEL_FAM6_CORE_YONAH 0x0E |
| 51 | +#define INTEL_CORE_YONAH IFM(6, 0x0E) |
47 | 52 |
|
48 | 53 | #define INTEL_FAM6_CORE2_MEROM 0x0F |
| 54 | +#define INTEL_CORE2_MEROM IFM(6, 0x0F) |
49 | 55 | #define INTEL_FAM6_CORE2_MEROM_L 0x16 |
| 56 | +#define INTEL_CORE2_MEROM_L IFM(6, 0x16) |
50 | 57 | #define INTEL_FAM6_CORE2_PENRYN 0x17 |
| 58 | +#define INTEL_CORE2_PENRYN IFM(6, 0x17) |
51 | 59 | #define INTEL_FAM6_CORE2_DUNNINGTON 0x1D |
| 60 | +#define INTEL_CORE2_DUNNINGTON IFM(6, 0x1D) |
52 | 61 |
|
53 | 62 | #define INTEL_FAM6_NEHALEM 0x1E |
| 63 | +#define INTEL_NEHALEM IFM(6, 0x1E) |
54 | 64 | #define INTEL_FAM6_NEHALEM_G 0x1F /* Auburndale / Havendale */ |
| 65 | +#define INTEL_NEHALEM_G IFM(6, 0x1F) /* Auburndale / Havendale */ |
55 | 66 | #define INTEL_FAM6_NEHALEM_EP 0x1A |
| 67 | +#define INTEL_NEHALEM_EP IFM(6, 0x1A) |
56 | 68 | #define INTEL_FAM6_NEHALEM_EX 0x2E |
| 69 | +#define INTEL_NEHALEM_EX IFM(6, 0x2E) |
57 | 70 |
|
58 | 71 | #define INTEL_FAM6_WESTMERE 0x25 |
| 72 | +#define INTEL_WESTMERE IFM(6, 0x25) |
59 | 73 | #define INTEL_FAM6_WESTMERE_EP 0x2C |
| 74 | +#define INTEL_WESTMERE_EP IFM(6, 0x2C) |
60 | 75 | #define INTEL_FAM6_WESTMERE_EX 0x2F |
| 76 | +#define INTEL_WESTMERE_EX IFM(6, 0x2F) |
61 | 77 |
|
62 | 78 | #define INTEL_FAM6_SANDYBRIDGE 0x2A |
| 79 | +#define INTEL_SANDYBRIDGE IFM(6, 0x2A) |
63 | 80 | #define INTEL_FAM6_SANDYBRIDGE_X 0x2D |
| 81 | +#define INTEL_SANDYBRIDGE_X IFM(6, 0x2D) |
64 | 82 | #define INTEL_FAM6_IVYBRIDGE 0x3A |
| 83 | +#define INTEL_IVYBRIDGE IFM(6, 0x3A) |
65 | 84 | #define INTEL_FAM6_IVYBRIDGE_X 0x3E |
| 85 | +#define INTEL_IVYBRIDGE_X IFM(6, 0x3E) |
66 | 86 |
|
67 | 87 | #define INTEL_FAM6_HASWELL 0x3C |
| 88 | +#define INTEL_HASWELL IFM(6, 0x3C) |
68 | 89 | #define INTEL_FAM6_HASWELL_X 0x3F |
| 90 | +#define INTEL_HASWELL_X IFM(6, 0x3F) |
69 | 91 | #define INTEL_FAM6_HASWELL_L 0x45 |
| 92 | +#define INTEL_HASWELL_L IFM(6, 0x45) |
70 | 93 | #define INTEL_FAM6_HASWELL_G 0x46 |
| 94 | +#define INTEL_HASWELL_G IFM(6, 0x46) |
71 | 95 |
|
72 | 96 | #define INTEL_FAM6_BROADWELL 0x3D |
| 97 | +#define INTEL_BROADWELL IFM(6, 0x3D) |
73 | 98 | #define INTEL_FAM6_BROADWELL_G 0x47 |
| 99 | +#define INTEL_BROADWELL_G IFM(6, 0x47) |
74 | 100 | #define INTEL_FAM6_BROADWELL_X 0x4F |
| 101 | +#define INTEL_BROADWELL_X IFM(6, 0x4F) |
75 | 102 | #define INTEL_FAM6_BROADWELL_D 0x56 |
| 103 | +#define INTEL_BROADWELL_D IFM(6, 0x56) |
76 | 104 |
|
77 | 105 | #define INTEL_FAM6_SKYLAKE_L 0x4E /* Sky Lake */ |
| 106 | +#define INTEL_SKYLAKE_L IFM(6, 0x4E) /* Sky Lake */ |
78 | 107 | #define INTEL_FAM6_SKYLAKE 0x5E /* Sky Lake */ |
| 108 | +#define INTEL_SKYLAKE IFM(6, 0x5E) /* Sky Lake */ |
79 | 109 | #define INTEL_FAM6_SKYLAKE_X 0x55 /* Sky Lake */ |
| 110 | +#define INTEL_SKYLAKE_X IFM(6, 0x55) /* Sky Lake */ |
80 | 111 | /* CASCADELAKE_X 0x55 Sky Lake -- s: 7 */ |
81 | 112 | /* COOPERLAKE_X 0x55 Sky Lake -- s: 11 */ |
82 | 113 |
|
83 | 114 | #define INTEL_FAM6_KABYLAKE_L 0x8E /* Sky Lake */ |
| 115 | +#define INTEL_KABYLAKE_L IFM(6, 0x8E) /* Sky Lake */ |
84 | 116 | /* AMBERLAKE_L 0x8E Sky Lake -- s: 9 */ |
85 | 117 | /* COFFEELAKE_L 0x8E Sky Lake -- s: 10 */ |
86 | 118 | /* WHISKEYLAKE_L 0x8E Sky Lake -- s: 11,12 */ |
87 | 119 |
|
88 | 120 | #define INTEL_FAM6_KABYLAKE 0x9E /* Sky Lake */ |
| 121 | +#define INTEL_KABYLAKE IFM(6, 0x9E) /* Sky Lake */ |
89 | 122 | /* COFFEELAKE 0x9E Sky Lake -- s: 10-13 */ |
90 | 123 |
|
91 | 124 | #define INTEL_FAM6_COMETLAKE 0xA5 /* Sky Lake */ |
| 125 | +#define INTEL_COMETLAKE IFM(6, 0xA5) /* Sky Lake */ |
92 | 126 | #define INTEL_FAM6_COMETLAKE_L 0xA6 /* Sky Lake */ |
| 127 | +#define INTEL_COMETLAKE_L IFM(6, 0xA6) /* Sky Lake */ |
93 | 128 |
|
94 | 129 | #define INTEL_FAM6_CANNONLAKE_L 0x66 /* Palm Cove */ |
| 130 | +#define INTEL_CANNONLAKE_L IFM(6, 0x66) /* Palm Cove */ |
95 | 131 |
|
96 | 132 | #define INTEL_FAM6_ICELAKE_X 0x6A /* Sunny Cove */ |
| 133 | +#define INTEL_ICELAKE_X IFM(6, 0x6A) /* Sunny Cove */ |
97 | 134 | #define INTEL_FAM6_ICELAKE_D 0x6C /* Sunny Cove */ |
| 135 | +#define INTEL_ICELAKE_D IFM(6, 0x6C) /* Sunny Cove */ |
98 | 136 | #define INTEL_FAM6_ICELAKE 0x7D /* Sunny Cove */ |
| 137 | +#define INTEL_ICELAKE IFM(6, 0x7D) /* Sunny Cove */ |
99 | 138 | #define INTEL_FAM6_ICELAKE_L 0x7E /* Sunny Cove */ |
| 139 | +#define INTEL_ICELAKE_L IFM(6, 0x7E) /* Sunny Cove */ |
100 | 140 | #define INTEL_FAM6_ICELAKE_NNPI 0x9D /* Sunny Cove */ |
| 141 | +#define INTEL_ICELAKE_NNPI IFM(6, 0x9D) /* Sunny Cove */ |
101 | 142 |
|
102 | 143 | #define INTEL_FAM6_ROCKETLAKE 0xA7 /* Cypress Cove */ |
| 144 | +#define INTEL_ROCKETLAKE IFM(6, 0xA7) /* Cypress Cove */ |
103 | 145 |
|
104 | 146 | #define INTEL_FAM6_TIGERLAKE_L 0x8C /* Willow Cove */ |
| 147 | +#define INTEL_TIGERLAKE_L IFM(6, 0x8C) /* Willow Cove */ |
105 | 148 | #define INTEL_FAM6_TIGERLAKE 0x8D /* Willow Cove */ |
| 149 | +#define INTEL_TIGERLAKE IFM(6, 0x8D) /* Willow Cove */ |
106 | 150 |
|
107 | 151 | #define INTEL_FAM6_SAPPHIRERAPIDS_X 0x8F /* Golden Cove */ |
| 152 | +#define INTEL_SAPPHIRERAPIDS_X IFM(6, 0x8F) /* Golden Cove */ |
108 | 153 |
|
109 | 154 | #define INTEL_FAM6_EMERALDRAPIDS_X 0xCF |
| 155 | +#define INTEL_EMERALDRAPIDS_X IFM(6, 0xCF) |
110 | 156 |
|
111 | 157 | #define INTEL_FAM6_GRANITERAPIDS_X 0xAD |
| 158 | +#define INTEL_GRANITERAPIDS_X IFM(6, 0xAD) |
112 | 159 | #define INTEL_FAM6_GRANITERAPIDS_D 0xAE |
| 160 | +#define INTEL_GRANITERAPIDS_D IFM(6, 0xAE) |
113 | 161 |
|
114 | 162 | /* "Hybrid" Processors (P-Core/E-Core) */ |
115 | 163 |
|
116 | 164 | #define INTEL_FAM6_LAKEFIELD 0x8A /* Sunny Cove / Tremont */ |
| 165 | +#define INTEL_LAKEFIELD IFM(6, 0x8A) /* Sunny Cove / Tremont */ |
117 | 166 |
|
118 | 167 | #define INTEL_FAM6_ALDERLAKE 0x97 /* Golden Cove / Gracemont */ |
| 168 | +#define INTEL_ALDERLAKE IFM(6, 0x97) /* Golden Cove / Gracemont */ |
119 | 169 | #define INTEL_FAM6_ALDERLAKE_L 0x9A /* Golden Cove / Gracemont */ |
| 170 | +#define INTEL_ALDERLAKE_L IFM(6, 0x9A) /* Golden Cove / Gracemont */ |
120 | 171 |
|
121 | 172 | #define INTEL_FAM6_RAPTORLAKE 0xB7 /* Raptor Cove / Enhanced Gracemont */ |
| 173 | +#define INTEL_RAPTORLAKE IFM(6, 0xB7) /* Raptor Cove / Enhanced Gracemont */ |
122 | 174 | #define INTEL_FAM6_RAPTORLAKE_P 0xBA |
| 175 | +#define INTEL_RAPTORLAKE_P IFM(6, 0xBA) |
123 | 176 | #define INTEL_FAM6_RAPTORLAKE_S 0xBF |
| 177 | +#define INTEL_RAPTORLAKE_S IFM(6, 0xBF) |
124 | 178 |
|
125 | 179 | #define INTEL_FAM6_METEORLAKE 0xAC |
| 180 | +#define INTEL_METEORLAKE IFM(6, 0xAC) |
126 | 181 | #define INTEL_FAM6_METEORLAKE_L 0xAA |
| 182 | +#define INTEL_METEORLAKE_L IFM(6, 0xAA) |
127 | 183 |
|
128 | 184 | #define INTEL_FAM6_ARROWLAKE_H 0xC5 |
| 185 | +#define INTEL_ARROWLAKE_H IFM(6, 0xC5) |
129 | 186 | #define INTEL_FAM6_ARROWLAKE 0xC6 |
| 187 | +#define INTEL_ARROWLAKE IFM(6, 0xC6) |
130 | 188 | #define INTEL_FAM6_ARROWLAKE_U 0xB5 |
| 189 | +#define INTEL_ARROWLAKE_U IFM(6, 0xB5) |
131 | 190 |
|
132 | 191 | #define INTEL_FAM6_LUNARLAKE_M 0xBD |
| 192 | +#define INTEL_LUNARLAKE_M IFM(6, 0xBD) |
133 | 193 |
|
134 | 194 | #define INTEL_FAM6_ARROWLAKE 0xC6 |
135 | 195 |
|
136 | 196 | /* "Small Core" Processors (Atom/E-Core) */ |
137 | 197 |
|
138 | 198 | #define INTEL_FAM6_ATOM_BONNELL 0x1C /* Diamondville, Pineview */ |
| 199 | +#define INTEL_ATOM_BONNELL IFM(6, 0x1C) /* Diamondville, Pineview */ |
139 | 200 | #define INTEL_FAM6_ATOM_BONNELL_MID 0x26 /* Silverthorne, Lincroft */ |
| 201 | +#define INTEL_ATOM_BONNELL_MID IFM(6, 0x26) /* Silverthorne, Lincroft */ |
140 | 202 |
|
141 | 203 | #define INTEL_FAM6_ATOM_SALTWELL 0x36 /* Cedarview */ |
| 204 | +#define INTEL_ATOM_SALTWELL IFM(6, 0x36) /* Cedarview */ |
142 | 205 | #define INTEL_FAM6_ATOM_SALTWELL_MID 0x27 /* Penwell */ |
| 206 | +#define INTEL_ATOM_SALTWELL_MID IFM(6, 0x27) /* Penwell */ |
143 | 207 | #define INTEL_FAM6_ATOM_SALTWELL_TABLET 0x35 /* Cloverview */ |
| 208 | +#define INTEL_ATOM_SALTWELL_TABLET IFM(6, 0x35) /* Cloverview */ |
144 | 209 |
|
145 | 210 | #define INTEL_FAM6_ATOM_SILVERMONT 0x37 /* Bay Trail, Valleyview */ |
| 211 | +#define INTEL_ATOM_SILVERMONT IFM(6, 0x37) /* Bay Trail, Valleyview */ |
146 | 212 | #define INTEL_FAM6_ATOM_SILVERMONT_D 0x4D /* Avaton, Rangely */ |
| 213 | +#define INTEL_ATOM_SILVERMONT_D IFM(6, 0x4D) /* Avaton, Rangely */ |
147 | 214 | #define INTEL_FAM6_ATOM_SILVERMONT_MID 0x4A /* Merriefield */ |
| 215 | +#define INTEL_ATOM_SILVERMONT_MID IFM(6, 0x4A) /* Merriefield */ |
148 | 216 |
|
149 | 217 | #define INTEL_FAM6_ATOM_AIRMONT 0x4C /* Cherry Trail, Braswell */ |
| 218 | +#define INTEL_ATOM_AIRMONT IFM(6, 0x4C) /* Cherry Trail, Braswell */ |
150 | 219 | #define INTEL_FAM6_ATOM_AIRMONT_MID 0x5A /* Moorefield */ |
| 220 | +#define INTEL_ATOM_AIRMONT_MID IFM(6, 0x5A) /* Moorefield */ |
151 | 221 | #define INTEL_FAM6_ATOM_AIRMONT_NP 0x75 /* Lightning Mountain */ |
| 222 | +#define INTEL_ATOM_AIRMONT_NP IFM(6, 0x75) /* Lightning Mountain */ |
152 | 223 |
|
153 | 224 | #define INTEL_FAM6_ATOM_GOLDMONT 0x5C /* Apollo Lake */ |
| 225 | +#define INTEL_ATOM_GOLDMONT IFM(6, 0x5C) /* Apollo Lake */ |
154 | 226 | #define INTEL_FAM6_ATOM_GOLDMONT_D 0x5F /* Denverton */ |
| 227 | +#define INTEL_ATOM_GOLDMONT_D IFM(6, 0x5F) /* Denverton */ |
155 | 228 |
|
156 | 229 | /* Note: the micro-architecture is "Goldmont Plus" */ |
157 | 230 | #define INTEL_FAM6_ATOM_GOLDMONT_PLUS 0x7A /* Gemini Lake */ |
| 231 | +#define INTEL_ATOM_GOLDMONT_PLUS IFM(6, 0x7A) /* Gemini Lake */ |
158 | 232 |
|
159 | 233 | #define INTEL_FAM6_ATOM_TREMONT_D 0x86 /* Jacobsville */ |
| 234 | +#define INTEL_ATOM_TREMONT_D IFM(6, 0x86) /* Jacobsville */ |
160 | 235 | #define INTEL_FAM6_ATOM_TREMONT 0x96 /* Elkhart Lake */ |
| 236 | +#define INTEL_ATOM_TREMONT IFM(6, 0x96) /* Elkhart Lake */ |
161 | 237 | #define INTEL_FAM6_ATOM_TREMONT_L 0x9C /* Jasper Lake */ |
| 238 | +#define INTEL_ATOM_TREMONT_L IFM(6, 0x9C) /* Jasper Lake */ |
162 | 239 |
|
163 | 240 | #define INTEL_FAM6_ATOM_GRACEMONT 0xBE /* Alderlake N */ |
| 241 | +#define INTEL_ATOM_GRACEMONT IFM(6, 0xBE) /* Alderlake N */ |
164 | 242 |
|
165 | 243 | #define INTEL_FAM6_ATOM_CRESTMONT_X 0xAF /* Sierra Forest */ |
| 244 | +#define INTEL_ATOM_CRESTMONT_X IFM(6, 0xAF) /* Sierra Forest */ |
166 | 245 | #define INTEL_FAM6_ATOM_CRESTMONT 0xB6 /* Grand Ridge */ |
| 246 | +#define INTEL_ATOM_CRESTMONT IFM(6, 0xB6) /* Grand Ridge */ |
167 | 247 |
|
168 | 248 | #define INTEL_FAM6_ATOM_DARKMONT_X 0xDD /* Clearwater Forest */ |
| 249 | +#define INTEL_ATOM_DARKMONT_X IFM(6, 0xDD) /* Clearwater Forest */ |
169 | 250 |
|
170 | 251 | /* Xeon Phi */ |
171 | 252 |
|
172 | 253 | #define INTEL_FAM6_XEON_PHI_KNL 0x57 /* Knights Landing */ |
| 254 | +#define INTEL_XEON_PHI_KNL IFM(6, 0x57) /* Knights Landing */ |
173 | 255 | #define INTEL_FAM6_XEON_PHI_KNM 0x85 /* Knights Mill */ |
| 256 | +#define INTEL_XEON_PHI_KNM IFM(6, 0x85) /* Knights Mill */ |
174 | 257 |
|
175 | 258 | /* Family 5 */ |
176 | 259 | #define INTEL_FAM5_QUARK_X1000 0x09 /* Quark X1000 SoC */ |
| 260 | +#define INTEL_QUARK_X1000 IFM(5, 0x09) /* Quark X1000 SoC */ |
177 | 261 |
|
178 | 262 | #endif /* _ASM_X86_INTEL_FAMILY_H */ |
0 commit comments