~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/x86/include/asm/intel-family.h

Version: ~ [ linux-6.11-rc3 ] ~ [ linux-6.10.4 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.45 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.104 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.164 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.223 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.281 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.319 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 /* SPDX-License-Identifier: GPL-2.0 */
  2 #ifndef _ASM_X86_INTEL_FAMILY_H
  3 #define _ASM_X86_INTEL_FAMILY_H
  4 
  5 /*
  6  * "Big Core" Processors (Branded as Core, Xeon, etc...)
  7  *
  8  * While adding a new CPUID for a new microarchitecture, add a new
  9  * group to keep logically sorted out in chronological order. Within
 10  * that group keep the CPUID for the variants sorted by model number.
 11  *
 12  * The defined symbol names have the following form:
 13  *      INTEL_FAM6{OPTFAMILY}_{MICROARCH}{OPTDIFF}
 14  * where:
 15  * OPTFAMILY    Describes the family of CPUs that this belongs to. Default
 16  *              is assumed to be "_CORE" (and should be omitted). Other values
 17  *              currently in use are _ATOM and _XEON_PHI
 18  * MICROARCH    Is the code name for the micro-architecture for this core.
 19  *              N.B. Not the platform name.
 20  * OPTDIFF      If needed, a short string to differentiate by market segment.
 21  *
 22  *              Common OPTDIFFs:
 23  *
 24  *                      - regular client parts
 25  *              _L      - regular mobile parts
 26  *              _G      - parts with extra graphics on
 27  *              _X      - regular server parts
 28  *              _D      - micro server parts
 29  *              _N,_P   - other mobile parts
 30  *              _H      - premium mobile parts
 31  *              _S      - other client parts
 32  *
 33  *              Historical OPTDIFFs:
 34  *
 35  *              _EP     - 2 socket server parts
 36  *              _EX     - 4+ socket server parts
 37  *
 38  * The #define line may optionally include a comment including platform or core
 39  * names. An exception is made for skylake/kabylake where steppings seem to have gotten
 40  * their own names :-(
 41  */
 42 
 43 #define IFM(_fam, _model)       VFM_MAKE(X86_VENDOR_INTEL, _fam, _model)
 44 
 45 /* Wildcard match for FAM6 so X86_MATCH_INTEL_FAM6_MODEL(ANY) works */
 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)
 49 
 50 #define INTEL_FAM6_CORE_YONAH           0x0E
 51 #define INTEL_CORE_YONAH                IFM(6, 0x0E)
 52 
 53 #define INTEL_FAM6_CORE2_MEROM          0x0F
 54 #define INTEL_CORE2_MEROM               IFM(6, 0x0F)
 55 #define INTEL_FAM6_CORE2_MEROM_L        0x16
 56 #define INTEL_CORE2_MEROM_L             IFM(6, 0x16)
 57 #define INTEL_FAM6_CORE2_PENRYN         0x17
 58 #define INTEL_CORE2_PENRYN              IFM(6, 0x17)
 59 #define INTEL_FAM6_CORE2_DUNNINGTON     0x1D
 60 #define INTEL_CORE2_DUNNINGTON          IFM(6, 0x1D)
 61 
 62 #define INTEL_FAM6_NEHALEM              0x1E
 63 #define INTEL_NEHALEM                   IFM(6, 0x1E)
 64 #define INTEL_FAM6_NEHALEM_G            0x1F /* Auburndale / Havendale */
 65 #define INTEL_NEHALEM_G                 IFM(6, 0x1F) /* Auburndale / Havendale */
 66 #define INTEL_FAM6_NEHALEM_EP           0x1A
 67 #define INTEL_NEHALEM_EP                IFM(6, 0x1A)
 68 #define INTEL_FAM6_NEHALEM_EX           0x2E
 69 #define INTEL_NEHALEM_EX                IFM(6, 0x2E)
 70 
 71 #define INTEL_FAM6_WESTMERE             0x25
 72 #define INTEL_WESTMERE                  IFM(6, 0x25)
 73 #define INTEL_FAM6_WESTMERE_EP          0x2C
 74 #define INTEL_WESTMERE_EP               IFM(6, 0x2C)
 75 #define INTEL_FAM6_WESTMERE_EX          0x2F
 76 #define INTEL_WESTMERE_EX               IFM(6, 0x2F)
 77 
 78 #define INTEL_FAM6_SANDYBRIDGE          0x2A
 79 #define INTEL_SANDYBRIDGE               IFM(6, 0x2A)
 80 #define INTEL_FAM6_SANDYBRIDGE_X        0x2D
 81 #define INTEL_SANDYBRIDGE_X             IFM(6, 0x2D)
 82 #define INTEL_FAM6_IVYBRIDGE            0x3A
 83 #define INTEL_IVYBRIDGE                 IFM(6, 0x3A)
 84 #define INTEL_FAM6_IVYBRIDGE_X          0x3E
 85 #define INTEL_IVYBRIDGE_X               IFM(6, 0x3E)
 86 
 87 #define INTEL_FAM6_HASWELL              0x3C
 88 #define INTEL_HASWELL                   IFM(6, 0x3C)
 89 #define INTEL_FAM6_HASWELL_X            0x3F
 90 #define INTEL_HASWELL_X                 IFM(6, 0x3F)
 91 #define INTEL_FAM6_HASWELL_L            0x45
 92 #define INTEL_HASWELL_L                 IFM(6, 0x45)
 93 #define INTEL_FAM6_HASWELL_G            0x46
 94 #define INTEL_HASWELL_G                 IFM(6, 0x46)
 95 
 96 #define INTEL_FAM6_BROADWELL            0x3D
 97 #define INTEL_BROADWELL                 IFM(6, 0x3D)
 98 #define INTEL_FAM6_BROADWELL_G          0x47
 99 #define INTEL_BROADWELL_G               IFM(6, 0x47)
100 #define INTEL_FAM6_BROADWELL_X          0x4F
101 #define INTEL_BROADWELL_X               IFM(6, 0x4F)
102 #define INTEL_FAM6_BROADWELL_D          0x56
103 #define INTEL_BROADWELL_D               IFM(6, 0x56)
104 
105 #define INTEL_FAM6_SKYLAKE_L            0x4E    /* Sky Lake             */
106 #define INTEL_SKYLAKE_L                 IFM(6, 0x4E) /* Sky Lake */
107 #define INTEL_FAM6_SKYLAKE              0x5E    /* Sky Lake             */
108 #define INTEL_SKYLAKE                   IFM(6, 0x5E) /* Sky Lake */
109 #define INTEL_FAM6_SKYLAKE_X            0x55    /* Sky Lake             */
110 #define INTEL_SKYLAKE_X                 IFM(6, 0x55) /* Sky Lake */
111 /*                 CASCADELAKE_X        0x55       Sky Lake -- s: 7     */
112 /*                 COOPERLAKE_X         0x55       Sky Lake -- s: 11    */
113 
114 #define INTEL_FAM6_KABYLAKE_L           0x8E    /* Sky Lake             */
115 #define INTEL_KABYLAKE_L                IFM(6, 0x8E) /* Sky Lake */
116 /*                 AMBERLAKE_L          0x8E       Sky Lake -- s: 9     */
117 /*                 COFFEELAKE_L         0x8E       Sky Lake -- s: 10    */
118 /*                 WHISKEYLAKE_L        0x8E       Sky Lake -- s: 11,12 */
119 
120 #define INTEL_FAM6_KABYLAKE             0x9E    /* Sky Lake             */
121 #define INTEL_KABYLAKE                  IFM(6, 0x9E) /* Sky Lake */
122 /*                 COFFEELAKE           0x9E       Sky Lake -- s: 10-13 */
123 
124 #define INTEL_FAM6_COMETLAKE            0xA5    /* Sky Lake             */
125 #define INTEL_COMETLAKE                 IFM(6, 0xA5) /* Sky Lake */
126 #define INTEL_FAM6_COMETLAKE_L          0xA6    /* Sky Lake             */
127 #define INTEL_COMETLAKE_L               IFM(6, 0xA6) /* Sky Lake */
128 
129 #define INTEL_FAM6_CANNONLAKE_L         0x66    /* Palm Cove */
130 #define INTEL_CANNONLAKE_L              IFM(6, 0x66) /* Palm Cove */
131 
132 #define INTEL_FAM6_ICELAKE_X            0x6A    /* Sunny Cove */
133 #define INTEL_ICELAKE_X                 IFM(6, 0x6A) /* Sunny Cove */
134 #define INTEL_FAM6_ICELAKE_D            0x6C    /* Sunny Cove */
135 #define INTEL_ICELAKE_D                 IFM(6, 0x6C) /* Sunny Cove */
136 #define INTEL_FAM6_ICELAKE              0x7D    /* Sunny Cove */
137 #define INTEL_ICELAKE                   IFM(6, 0x7D) /* Sunny Cove */
138 #define INTEL_FAM6_ICELAKE_L            0x7E    /* Sunny Cove */
139 #define INTEL_ICELAKE_L                 IFM(6, 0x7E) /* Sunny Cove */
140 #define INTEL_FAM6_ICELAKE_NNPI         0x9D    /* Sunny Cove */
141 #define INTEL_ICELAKE_NNPI              IFM(6, 0x9D) /* Sunny Cove */
142 
143 #define INTEL_FAM6_ROCKETLAKE           0xA7    /* Cypress Cove */
144 #define INTEL_ROCKETLAKE                IFM(6, 0xA7) /* Cypress Cove */
145 
146 #define INTEL_FAM6_TIGERLAKE_L          0x8C    /* Willow Cove */
147 #define INTEL_TIGERLAKE_L               IFM(6, 0x8C) /* Willow Cove */
148 #define INTEL_FAM6_TIGERLAKE            0x8D    /* Willow Cove */
149 #define INTEL_TIGERLAKE                 IFM(6, 0x8D) /* Willow Cove */
150 
151 #define INTEL_FAM6_SAPPHIRERAPIDS_X     0x8F    /* Golden Cove */
152 #define INTEL_SAPPHIRERAPIDS_X          IFM(6, 0x8F) /* Golden Cove */
153 
154 #define INTEL_FAM6_EMERALDRAPIDS_X      0xCF
155 #define INTEL_EMERALDRAPIDS_X           IFM(6, 0xCF)
156 
157 #define INTEL_FAM6_GRANITERAPIDS_X      0xAD
158 #define INTEL_GRANITERAPIDS_X           IFM(6, 0xAD)
159 #define INTEL_FAM6_GRANITERAPIDS_D      0xAE
160 #define INTEL_GRANITERAPIDS_D           IFM(6, 0xAE)
161 
162 /* "Hybrid" Processors (P-Core/E-Core) */
163 
164 #define INTEL_FAM6_LAKEFIELD            0x8A    /* Sunny Cove / Tremont */
165 #define INTEL_LAKEFIELD                 IFM(6, 0x8A) /* Sunny Cove / Tremont */
166 
167 #define INTEL_FAM6_ALDERLAKE            0x97    /* Golden Cove / Gracemont */
168 #define INTEL_ALDERLAKE                 IFM(6, 0x97) /* Golden Cove / Gracemont */
169 #define INTEL_FAM6_ALDERLAKE_L          0x9A    /* Golden Cove / Gracemont */
170 #define INTEL_ALDERLAKE_L               IFM(6, 0x9A) /* Golden Cove / Gracemont */
171 
172 #define INTEL_FAM6_RAPTORLAKE           0xB7    /* Raptor Cove / Enhanced Gracemont */
173 #define INTEL_RAPTORLAKE                IFM(6, 0xB7) /* Raptor Cove / Enhanced Gracemont */
174 #define INTEL_FAM6_RAPTORLAKE_P         0xBA
175 #define INTEL_RAPTORLAKE_P              IFM(6, 0xBA)
176 #define INTEL_FAM6_RAPTORLAKE_S         0xBF
177 #define INTEL_RAPTORLAKE_S              IFM(6, 0xBF)
178 
179 #define INTEL_FAM6_METEORLAKE           0xAC
180 #define INTEL_METEORLAKE                IFM(6, 0xAC)
181 #define INTEL_FAM6_METEORLAKE_L         0xAA
182 #define INTEL_METEORLAKE_L              IFM(6, 0xAA)
183 
184 #define INTEL_FAM6_ARROWLAKE_H          0xC5
185 #define INTEL_ARROWLAKE_H               IFM(6, 0xC5)
186 #define INTEL_FAM6_ARROWLAKE            0xC6
187 #define INTEL_ARROWLAKE                 IFM(6, 0xC6)
188 #define INTEL_FAM6_ARROWLAKE_U          0xB5
189 #define INTEL_ARROWLAKE_U               IFM(6, 0xB5)
190 
191 #define INTEL_FAM6_LUNARLAKE_M          0xBD
192 #define INTEL_LUNARLAKE_M               IFM(6, 0xBD)
193 
194 /* "Small Core" Processors (Atom/E-Core) */
195 
196 #define INTEL_FAM6_ATOM_BONNELL         0x1C /* Diamondville, Pineview */
197 #define INTEL_ATOM_BONNELL              IFM(6, 0x1C) /* Diamondville, Pineview */
198 #define INTEL_FAM6_ATOM_BONNELL_MID     0x26 /* Silverthorne, Lincroft */
199 #define INTEL_ATOM_BONNELL_MID          IFM(6, 0x26) /* Silverthorne, Lincroft */
200 
201 #define INTEL_FAM6_ATOM_SALTWELL        0x36 /* Cedarview */
202 #define INTEL_ATOM_SALTWELL             IFM(6, 0x36) /* Cedarview */
203 #define INTEL_FAM6_ATOM_SALTWELL_MID    0x27 /* Penwell */
204 #define INTEL_ATOM_SALTWELL_MID         IFM(6, 0x27) /* Penwell */
205 #define INTEL_FAM6_ATOM_SALTWELL_TABLET 0x35 /* Cloverview */
206 #define INTEL_ATOM_SALTWELL_TABLET      IFM(6, 0x35) /* Cloverview */
207 
208 #define INTEL_FAM6_ATOM_SILVERMONT      0x37 /* Bay Trail, Valleyview */
209 #define INTEL_ATOM_SILVERMONT           IFM(6, 0x37) /* Bay Trail, Valleyview */
210 #define INTEL_FAM6_ATOM_SILVERMONT_D    0x4D /* Avaton, Rangely */
211 #define INTEL_ATOM_SILVERMONT_D         IFM(6, 0x4D) /* Avaton, Rangely */
212 #define INTEL_FAM6_ATOM_SILVERMONT_MID  0x4A /* Merriefield */
213 #define INTEL_ATOM_SILVERMONT_MID       IFM(6, 0x4A) /* Merriefield */
214 
215 #define INTEL_FAM6_ATOM_AIRMONT         0x4C /* Cherry Trail, Braswell */
216 #define INTEL_ATOM_AIRMONT              IFM(6, 0x4C) /* Cherry Trail, Braswell */
217 #define INTEL_FAM6_ATOM_AIRMONT_MID     0x5A /* Moorefield */
218 #define INTEL_ATOM_AIRMONT_MID          IFM(6, 0x5A) /* Moorefield */
219 #define INTEL_FAM6_ATOM_AIRMONT_NP      0x75 /* Lightning Mountain */
220 #define INTEL_ATOM_AIRMONT_NP           IFM(6, 0x75) /* Lightning Mountain */
221 
222 #define INTEL_FAM6_ATOM_GOLDMONT        0x5C /* Apollo Lake */
223 #define INTEL_ATOM_GOLDMONT             IFM(6, 0x5C) /* Apollo Lake */
224 #define INTEL_FAM6_ATOM_GOLDMONT_D      0x5F /* Denverton */
225 #define INTEL_ATOM_GOLDMONT_D           IFM(6, 0x5F) /* Denverton */
226 
227 /* Note: the micro-architecture is "Goldmont Plus" */
228 #define INTEL_FAM6_ATOM_GOLDMONT_PLUS   0x7A /* Gemini Lake */
229 #define INTEL_ATOM_GOLDMONT_PLUS        IFM(6, 0x7A) /* Gemini Lake */
230 
231 #define INTEL_FAM6_ATOM_TREMONT_D       0x86 /* Jacobsville */
232 #define INTEL_ATOM_TREMONT_D            IFM(6, 0x86) /* Jacobsville */
233 #define INTEL_FAM6_ATOM_TREMONT         0x96 /* Elkhart Lake */
234 #define INTEL_ATOM_TREMONT              IFM(6, 0x96) /* Elkhart Lake */
235 #define INTEL_FAM6_ATOM_TREMONT_L       0x9C /* Jasper Lake */
236 #define INTEL_ATOM_TREMONT_L            IFM(6, 0x9C) /* Jasper Lake */
237 
238 #define INTEL_FAM6_ATOM_GRACEMONT       0xBE /* Alderlake N */
239 #define INTEL_ATOM_GRACEMONT            IFM(6, 0xBE) /* Alderlake N */
240 
241 #define INTEL_FAM6_ATOM_CRESTMONT_X     0xAF /* Sierra Forest */
242 #define INTEL_ATOM_CRESTMONT_X          IFM(6, 0xAF) /* Sierra Forest */
243 #define INTEL_FAM6_ATOM_CRESTMONT       0xB6 /* Grand Ridge */
244 #define INTEL_ATOM_CRESTMONT            IFM(6, 0xB6) /* Grand Ridge */
245 
246 #define INTEL_FAM6_ATOM_DARKMONT_X      0xDD /* Clearwater Forest */
247 #define INTEL_ATOM_DARKMONT_X           IFM(6, 0xDD) /* Clearwater Forest */
248 
249 /* Xeon Phi */
250 
251 #define INTEL_FAM6_XEON_PHI_KNL         0x57 /* Knights Landing */
252 #define INTEL_XEON_PHI_KNL              IFM(6, 0x57) /* Knights Landing */
253 #define INTEL_FAM6_XEON_PHI_KNM         0x85 /* Knights Mill */
254 #define INTEL_XEON_PHI_KNM              IFM(6, 0x85) /* Knights Mill */
255 
256 /* Family 5 */
257 #define INTEL_FAM5_QUARK_X1000          0x09 /* Quark X1000 SoC */
258 #define INTEL_QUARK_X1000               IFM(5, 0x09) /* Quark X1000 SoC */
259 
260 #endif /* _ASM_X86_INTEL_FAMILY_H */
261 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php