1 /* 2 * Copyright © 2014 Intel Corporation 3 * 4 * Permission is hereby granted, free of charge, to any person obtaining a 5 * copy of this software and associated documentation files (the 6 * "Software"), to deal in the Software without restriction, including 7 * without limitation the rights to use, copy, modify, merge, publish, 8 * distribute, sub license, and/or sell copies of the Software, and to 9 * permit persons to whom the Software is furnished to do so, subject to 10 * the following conditions: 11 * 12 * The above copyright notice and this permission notice (including the 13 * next paragraph) shall be included in all copies or substantial portions 14 * of the Software. 15 * 16 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 17 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 18 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. 19 * IN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS SUPPLIERS BE LIABLE FOR 20 * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 21 * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 22 * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 23 * 24 * Authors: 25 * Wei Lin<wei.w.lin@intel.com> 26 * Yuting Yang<yuting.yang@intel.com> 27 */ 28 29 #ifndef __HWINFO_LINUX_H__ 30 #define __HWINFO_LINUX_H__ 31 32 typedef enum __GTTYPE { 33 GTTYPE_GT1 = 0x0, 34 GTTYPE_GT2, 35 GTTYPE_GT2_FUSED_TO_GT1, 36 GTTYPE_GT2_FUSED_TO_GT1_6, 37 GTTYPE_GTL, 38 GTTYPE_GTM, 39 GTTYPE_GTH, 40 GTTYPE_GT1_5, 41 GTTYPE_GT1_75, 42 GTTYPE_GT3, 43 GTTYPE_GT4, 44 GTTYPE_GT0, 45 GTTYPE_GTA,// BXT 46 GTTYPE_GTC,// BXT 47 GTTYPE_GTX, // BXT 48 GTTYPE_GT3_5,//SKL 49 GTTYPE_UNDEFINED, 50 } GTTYPE, *PGTTYPE; 51 52 typedef enum { 53 IGFX_UNKNOWN = 0, 54 IGFX_HASWELL, 55 IGFX_BROADWELL, 56 IGFX_CHERRYVIEW, 57 IGFX_SKYLAKE, 58 IGFX_BROXTON, 59 IGFX_KABYLAKE, 60 61 IGFX_GENNEXT = 0x7ffffffe, 62 PRODUCT_FAMILY_FORCE_ULONG = 0x7fffffff 63 } PRODUCT_FAMILY; 64 65 typedef enum { 66 PCH_UNKNOWN = 0, 67 PCH_IBX, 68 PCH_CPT, 69 PCH_CPTR, 70 PCH_PPT, 71 PCH_LPT, 72 PCH_LPTR, 73 PCH_WPT, 74 PCH_PRODUCT_FAMILY_FORCE_ULONG = 0x7fffffff 75 } PCH_PRODUCT_FAMILY; 76 77 typedef enum { 78 IGFX_UNKNOWN_CORE = 0, 79 IGFX_GEN5_CORE = 5, 80 IGFX_GEN6_CORE = 8, 81 IGFX_GEN7_CORE = 9, 82 IGFX_GEN7_5_CORE = 10, 83 IGFX_GEN8_CORE = 11, 84 IGFX_GEN9_CORE = 12, 85 86 IGFX_GENNEXT_CORE = 0x7ffffffe, 87 GFXCORE_FAMILY_FORCE_ULONG = 0x7fffffff 88 } GFXCORE_FAMILY; 89 90 typedef enum { 91 PLATFORM_NONE = 0x00, 92 PLATFORM_DESKTOP = 0x01, 93 PLATFORM_MOBILE = 0x02, 94 PLATFORM_TABLET = 0X03, 95 PLATFORM_ALL = 0xff, 96 } PLATFORM_TYPE; 97 98 typedef struct PLATFORM_STR { 99 PRODUCT_FAMILY eProductFamily; 100 PCH_PRODUCT_FAMILY ePCHProductFamily; 101 GFXCORE_FAMILY eDisplayCoreFamily; 102 GFXCORE_FAMILY eRenderCoreFamily; 103 PLATFORM_TYPE ePlatformType; 104 105 unsigned short usRevId; 106 unsigned short usRevId_PCH; 107 unsigned int pchDeviceID; 108 GTTYPE GtType; 109 } PLATFORM; 110 111 #define PCH_IS_PRODUCT(p, r) ( (p).ePCHProductFamily == r ) 112 #define PCH_GET_CURRENT_PRODUCT(p) ( (p).ePCHProductFamily ) 113 114 #define GFX_IS_PRODUCT(p, r) ( (p).eProductFamily == r ) 115 #define GFX_IS_DISPLAYCORE(p, d) ( (p).eDisplayCoreFamily == d ) 116 #define GFX_IS_RENDERCORE(p, r) ( (p).eRenderCoreFamily == r ) 117 118 #define GFX_GET_CURRENT_PRODUCT(p) ( (p).eProductFamily ) 119 #define GFX_GET_CURRENT_DISPLAYCORE(p) ( (p).eDisplayCoreFamily ) 120 #define GFX_GET_CURRENT_RENDERCORE(p) ( (p).eRenderCoreFamily ) 121 122 #define IHSW_GTH_DESK_DEVICE_F0_ID 0x0090 123 #define IHSW_GTM_DESK_DEVICE_F0_ID 0x0091 124 #define IHSW_GTL_DESK_DEVICE_F0_ID 0x0092 125 #define IHSW_DESK_DEV_F0_ID 0x0C02 126 #define IHSW_MOBL_DEV_F0_ID 0x0C06 127 #define IHSW_DESK_DEV_F0_M_ID 0x0C12 128 #define IHSW_MOBL_DEV_F0_M_ID 0x0C16 129 #define IHSW_DESK_DEV_F0_H_ID 0x0C22 130 #define IHSW_MOBL_DEV_F0_H_ID 0x0C26 131 #define IHSW_VA_DEV_F0_ID 0x0C0B 132 133 #define IHSW_MOBL_DEVICE_F0_ID 0x0094 134 135 #define IHSW_CL_DESK_GT1_DEV_ID 0x402 136 #define IHSW_CL_MOBL_GT1_DEV_ID 0x406 137 #define IHSW_CL_SERV_GT1_DEV_ID 0x40A 138 #define IHSW_CL_DESK_GT2_DEV_ID 0x412 139 #define IHSW_CL_MOBL_GT2_DEV_ID 0x416 140 #define IHSW_CL_WS_GT2_DEV_ID 0x41B 141 #define IHSW_CL_SERV_GT2_DEV_ID 0x41A 142 143 #define IHSW_ULT_MOBL_GT1_DEV_ID 0xA06 144 #define IHSW_ULT_MOBL_GT2_DEV_ID 0xA16 145 #define IHSW_ULT_MOBL_GT3_DEV_ID 0xA26 146 #define IHSW_ULT_MRKT_GT3_DEV_ID 0xA2E 147 148 #define IHSW_ULX_MOBL_GT1_DEV_ID 0xA0E 149 #define IHSW_ULX_MOBL_GT2_DEV_ID 0xA1E 150 151 #define IHSW_CRW_DESK_GT2_DEV_ID 0xD12 152 #define IHSW_CRW_MOBL_GT2_DEV_ID 0xD16 153 #define IHSW_CRW_DESK_GT3_DEV_ID 0xD22 154 #define IHSW_CRW_MOBL_GT3_DEV_ID 0xD26 155 #define IHSW_CRW_SERV_GT3_DEV_ID 0xD2A 156 157 #define IVLV_PLUS_MOBL_DEVICE_F0_ID 0x0F31 158 159 #define ICHV_MOBL_DEVICE_F0_ID 0x22B0 160 #define ICHV_PLUS_MOBL_DEVICE_F0_ID 0x22B1 161 #define ICHV_DESK_DEVICE_F0_ID 0x22B2 162 #define ICHV_PLUS_DESK_DEVICE_F0_ID 0x22B3 163 164 #define IBDW_GT0_DESK_DEVICE_F0_ID 0x0BD0 165 #define IBDW_GT1_DESK_DEVICE_F0_ID 0x0BD1 166 #define IBDW_GT2_DESK_DEVICE_F0_ID 0x0BD2 167 #define IBDW_GT3_DESK_DEVICE_F0_ID 0x0BD3 168 169 #define IBDW_GT1_HALO_MOBL_DEVICE_F0_ID 0x1602 170 #define IBDW_GT1_ULT_MOBL_DEVICE_F0_ID 0x1606 171 #define IBDW_GT1_RSVD_DEVICE_F0_ID 0x160B 172 #define IBDW_GT1_SERV_DEVICE_F0_ID 0x160A 173 #define IBDW_GT1_WRK_DEVICE_F0_ID 0x160D 174 #define IBDW_GT1_ULX_DEVICE_F0_ID 0x160E 175 #define IBDW_GT2_HALO_MOBL_DEVICE_F0_ID 0x1612 176 #define IBDW_GT2_ULT_MOBL_DEVICE_F0_ID 0x1616 177 #define IBDW_GT2_RSVD_DEVICE_F0_ID 0x161B 178 #define IBDW_GT2_SERV_DEVICE_F0_ID 0x161A 179 #define IBDW_GT2_WRK_DEVICE_F0_ID 0x161D 180 #define IBDW_GT2_ULX_DEVICE_F0_ID 0x161E 181 #define IBDW_GT3_HALO_MOBL_DEVICE_F0_ID 0x1622 182 #define IBDW_GT3_ULT_MOBL_DEVICE_F0_ID 0x1626 183 #define IBDW_GT3_ULT25W_MOBL_DEVICE_F0_ID 0x162B 184 #define IBDW_GT3_SERV_DEVICE_F0_ID 0x162A 185 #define IBDW_GT3_WRK_DEVICE_F0_ID 0x162D 186 #define IBDW_GT3_ULX_DEVICE_F0_ID 0x162E 187 #define IBDW_RSVD_MRKT_DEVICE_F0_ID 0x1632 188 #define IBDW_RSVD_ULT_MOBL_DEVICE_F0_ID 0x1636 189 #define IBDW_RSVD_HALO_MOBL_DEVICE_F0_ID 0x163B 190 #define IBDW_RSVD_SERV_DEVICE_F0_ID 0x163A 191 #define IBDW_RSVD_WRK_DEVICE_F0_ID 0x163D 192 #define IBDW_RSVD_ULX_DEVICE_F0_ID 0x163E 193 194 #define ISKL_GT0_DESK_DEVICE_F0_ID 0x0900 195 #define ISKL_GT1_DESK_DEVICE_F0_ID 0x0901 196 #define ISKL_GT2_DESK_DEVICE_F0_ID 0x0902 197 #define ISKL_GT4_DT_DEVICE_F0_ID 0x1932 198 #define ISKL_GT2_DT_DEVICE_F0_ID 0x1912 199 #define ISKL_GT1_5_DT_DEVICE_F0_ID 0x1917 200 #define ISKL_GT1_DT_DEVICE_F0_ID 0x1902 201 #define ISKL_GT3_DESK_DEVICE_F0_ID 0x0903 202 #define ISKL_GT4_DESK_DEVICE_F0_ID 0x0904 203 #define ISKL_GT2_ULT_DEVICE_F0_ID 0x1916 204 #define ISKL_GT2F_ULT_DEVICE_F0_ID 0x1921 205 #define ISKL_GT2_ULX_DEVICE_F0_ID 0x191E 206 #define ISKL_GT1_ULT_DEVICE_F0_ID 0x1906 207 #define ISKL_GT1_ULX_DEVICE_F0_ID 0x190E 208 #define ISKL_GT1_5_ULT_DEVICE_F0_ID 0x1913 209 #define ISKL_GT1_5_ULX_DEVICE_F0_ID 0x1915 210 #define ISKL_GT3_ULT_DEVICE_F0_ID 0x1926 211 #define ISKL_GT1_HALO_MOBL_DEVICE_F0_ID 0x190B 212 #define ISKL_GT2_HALO_MOBL_DEVICE_F0_ID 0x191B 213 #define ISKL_GT3_HALO_MOBL_DEVICE_F0_ID 0x192B 214 #define ISKL_GT4_HALO_MOBL_DEVICE_F0_ID 0x193B 215 #define ISKL_GT0_MOBL_DEVICE_F0_ID 0xFFFF 216 #define ISKL_GT1_SERV_DEVICE_F0_ID 0x190A 217 #define ISKL_GT2_SERV_DEVICE_F0_ID 0x191A 218 #define ISKL_GT3_SERV_DEVICE_F0_ID 0x192A 219 #define ISKL_GT4_SERV_DEVICE_F0_ID 0x193A 220 #define ISKL_GT2_WRK_DEVICE_F0_ID 0x191D 221 #define ISKL_GT4_WRK_DEVICE_F0_ID 0x193D 222 223 #define IBXT_GT_3x6_DEVICE_ID 0x0A84 224 #define IBXT_PRO_3x6_DEVICE_ID 0x1A84 //18EU 225 #define IBXT_PRO_12EU_3x6_DEVICE_ID 0x1A85 //12 EU 226 #define IBXT_P_3x6_DEVICE_ID 0x5A84 //18EU APL 227 #define IBXT_P_12EU_3x6_DEVICE_ID 0x5A85 //12EU APL 228 229 #define IKBL_GT1_ULT_DEVICE_F0_ID 0x5906 230 #define IKBL_GT1_5_ULT_DEVICE_F0_ID 0x5913 231 #define IKBL_GT2_ULT_DEVICE_F0_ID 0x5916 232 #define IKBL_GT2F_ULT_DEVICE_F0_ID 0x5921 233 #define IKBL_GT3_ULT_DEVICE_F0_ID 0x5926 234 #define IKBL_GT1_ULX_DEVICE_F0_ID 0x590E 235 #define IKBL_GT1_5_ULX_DEVICE_F0_ID 0x5915 236 #define IKBL_GT2_ULX_DEVICE_F0_ID 0x591E 237 #define IKBL_GT1_DT_DEVICE_F0_ID 0x5902 238 #define IKBL_GT1_5_DT_DEVICE_F0_ID 0x5917 239 #define IKBL_GT2_DT_DEVICE_F0_ID 0x5912 240 #define IKBL_GT4_DT_DEVICE_F0_ID 0x5932 241 #define IKBL_GT1_HALO_DEVICE_F0_ID 0x590B 242 #define IKBL_GT2_HALO_DEVICE_F0_ID 0x591B 243 #define IKBL_GT3_HALO_DEVICE_F0_ID 0x592B 244 #define IKBL_GT4_HALO_DEVICE_F0_ID 0x593B 245 #define IKBL_GT1_SERV_DEVICE_F0_ID 0x590A 246 #define IKBL_GT2_SERV_DEVICE_F0_ID 0x591A 247 #define IKBL_GT3_SERV_DEVICE_F0_ID 0x592A 248 #define IKBL_GT4_SERV_DEVICE_F0_ID 0x593A 249 #define IKBL_GT2_WRK_DEVICE_F0_ID 0x591D 250 #define IKBL_GT4_WRK_DEVICE_F0_ID 0x593D 251 252 #define IS_GEN7_5(device_id) ( device_id == IHSW_GTH_DESK_DEVICE_F0_ID || \ 253 device_id == IHSW_GTM_DESK_DEVICE_F0_ID || \ 254 device_id == IHSW_GTL_DESK_DEVICE_F0_ID || \ 255 device_id == IHSW_DESK_DEV_F0_ID || \ 256 device_id == IHSW_MOBL_DEV_F0_ID || \ 257 device_id == IHSW_DESK_DEV_F0_M_ID || \ 258 device_id == IHSW_MOBL_DEV_F0_M_ID || \ 259 device_id == IHSW_DESK_DEV_F0_H_ID || \ 260 device_id == IHSW_MOBL_DEV_F0_H_ID || \ 261 device_id == IHSW_VA_DEV_F0_ID || \ 262 device_id == IHSW_MOBL_DEVICE_F0_ID || \ 263 device_id == IHSW_CL_DESK_GT1_DEV_ID || \ 264 device_id == IHSW_CL_MOBL_GT1_DEV_ID || \ 265 device_id == IHSW_CL_SERV_GT1_DEV_ID || \ 266 device_id == IHSW_CL_DESK_GT2_DEV_ID || \ 267 device_id == IHSW_CL_MOBL_GT2_DEV_ID || \ 268 device_id == IHSW_CL_WS_GT2_DEV_ID || \ 269 device_id == IHSW_CL_SERV_GT2_DEV_ID || \ 270 device_id == IHSW_ULT_MOBL_GT1_DEV_ID || \ 271 device_id == IHSW_ULT_MOBL_GT2_DEV_ID || \ 272 device_id == IHSW_ULT_MOBL_GT3_DEV_ID || \ 273 device_id == IHSW_ULT_MRKT_GT3_DEV_ID || \ 274 device_id == IHSW_ULX_MOBL_GT1_DEV_ID || \ 275 device_id == IHSW_ULX_MOBL_GT2_DEV_ID || \ 276 device_id == IHSW_CRW_DESK_GT2_DEV_ID || \ 277 device_id == IHSW_CRW_MOBL_GT2_DEV_ID || \ 278 device_id == IHSW_CRW_DESK_GT3_DEV_ID || \ 279 device_id == IHSW_CRW_MOBL_GT3_DEV_ID || \ 280 device_id == IHSW_CRW_SERV_GT3_DEV_ID ) 281 282 #define IS_BROADWELL(device_id) ( device_id == IBDW_GT0_DESK_DEVICE_F0_ID || \ 283 device_id == IBDW_GT1_DESK_DEVICE_F0_ID || \ 284 device_id == IBDW_GT2_DESK_DEVICE_F0_ID || \ 285 device_id == IBDW_GT3_DESK_DEVICE_F0_ID || \ 286 device_id == IBDW_GT1_RSVD_DEVICE_F0_ID || \ 287 device_id == IBDW_GT1_ULT_MOBL_DEVICE_F0_ID || \ 288 device_id == IBDW_GT1_HALO_MOBL_DEVICE_F0_ID || \ 289 device_id == IBDW_GT1_SERV_DEVICE_F0_ID || \ 290 device_id == IBDW_GT1_WRK_DEVICE_F0_ID || \ 291 device_id == IBDW_GT1_ULX_DEVICE_F0_ID || \ 292 device_id == IBDW_GT2_RSVD_DEVICE_F0_ID || \ 293 device_id == IBDW_GT2_ULT_MOBL_DEVICE_F0_ID || \ 294 device_id == IBDW_GT2_HALO_MOBL_DEVICE_F0_ID || \ 295 device_id == IBDW_GT2_SERV_DEVICE_F0_ID || \ 296 device_id == IBDW_GT2_WRK_DEVICE_F0_ID || \ 297 device_id == IBDW_GT2_ULX_DEVICE_F0_ID || \ 298 device_id == IBDW_GT3_ULT25W_MOBL_DEVICE_F0_ID || \ 299 device_id == IBDW_GT3_ULT_MOBL_DEVICE_F0_ID || \ 300 device_id == IBDW_GT3_HALO_MOBL_DEVICE_F0_ID || \ 301 device_id == IBDW_GT3_SERV_DEVICE_F0_ID || \ 302 device_id == IBDW_GT3_WRK_DEVICE_F0_ID || \ 303 device_id == IBDW_GT3_ULX_DEVICE_F0_ID || \ 304 device_id == IBDW_RSVD_MRKT_DEVICE_F0_ID || \ 305 device_id == IBDW_RSVD_ULT_MOBL_DEVICE_F0_ID || \ 306 device_id == IBDW_RSVD_HALO_MOBL_DEVICE_F0_ID || \ 307 device_id == IBDW_RSVD_SERV_DEVICE_F0_ID || \ 308 device_id == IBDW_RSVD_WRK_DEVICE_F0_ID || \ 309 device_id == IBDW_RSVD_ULX_DEVICE_F0_ID ) 310 311 #define IS_CHERRYVIEW(device_id) ( device_id == ICHV_DESK_DEVICE_F0_ID || \ 312 device_id == ICHV_MOBL_DEVICE_F0_ID || \ 313 device_id == ICHV_PLUS_DESK_DEVICE_F0_ID || \ 314 device_id == ICHV_PLUS_MOBL_DEVICE_F0_ID ) 315 316 #define IS_GEN8(device_id) ( IS_BROADWELL(device_id) || IS_CHERRYVIEW(device_id) ) 317 318 #define IS_SKYLAKE(device_id) ( device_id == ISKL_GT0_DESK_DEVICE_F0_ID || \ 319 device_id == ISKL_GT1_DESK_DEVICE_F0_ID || \ 320 device_id == ISKL_GT2_DESK_DEVICE_F0_ID || \ 321 device_id == ISKL_GT4_DT_DEVICE_F0_ID || \ 322 device_id == ISKL_GT2_DT_DEVICE_F0_ID || \ 323 device_id == ISKL_GT1_5_DT_DEVICE_F0_ID || \ 324 device_id == ISKL_GT1_DT_DEVICE_F0_ID || \ 325 device_id == ISKL_GT3_DESK_DEVICE_F0_ID || \ 326 device_id == ISKL_GT4_DESK_DEVICE_F0_ID || \ 327 device_id == ISKL_GT2_ULT_DEVICE_F0_ID || \ 328 device_id == ISKL_GT2F_ULT_DEVICE_F0_ID || \ 329 device_id == ISKL_GT2_ULX_DEVICE_F0_ID || \ 330 device_id == ISKL_GT1_ULT_DEVICE_F0_ID || \ 331 device_id == ISKL_GT1_ULX_DEVICE_F0_ID || \ 332 device_id == ISKL_GT1_5_ULT_DEVICE_F0_ID || \ 333 device_id == ISKL_GT1_5_ULX_DEVICE_F0_ID || \ 334 device_id == ISKL_GT3_ULT_DEVICE_F0_ID || \ 335 device_id == ISKL_GT1_HALO_MOBL_DEVICE_F0_ID || \ 336 device_id == ISKL_GT2_HALO_MOBL_DEVICE_F0_ID || \ 337 device_id == ISKL_GT3_HALO_MOBL_DEVICE_F0_ID || \ 338 device_id == ISKL_GT4_HALO_MOBL_DEVICE_F0_ID || \ 339 device_id == ISKL_GT0_MOBL_DEVICE_F0_ID || \ 340 device_id == ISKL_GT1_SERV_DEVICE_F0_ID || \ 341 device_id == ISKL_GT2_SERV_DEVICE_F0_ID || \ 342 device_id == ISKL_GT3_SERV_DEVICE_F0_ID || \ 343 device_id == ISKL_GT4_SERV_DEVICE_F0_ID || \ 344 device_id == ISKL_GT2_WRK_DEVICE_F0_ID || \ 345 device_id == ISKL_GT4_WRK_DEVICE_F0_ID ) 346 347 #define IS_KABYLAKE(device_id) ( device_id == IKBL_GT1_ULT_DEVICE_F0_ID || \ 348 device_id == IKBL_GT1_5_ULT_DEVICE_F0_ID || \ 349 device_id == IKBL_GT2_ULT_DEVICE_F0_ID || \ 350 device_id == IKBL_GT2F_ULT_DEVICE_F0_ID || \ 351 device_id == IKBL_GT3_ULT_DEVICE_F0_ID || \ 352 device_id == IKBL_GT1_ULX_DEVICE_F0_ID || \ 353 device_id == IKBL_GT1_5_ULX_DEVICE_F0_ID || \ 354 device_id == IKBL_GT2_ULX_DEVICE_F0_ID || \ 355 device_id == IKBL_GT1_DT_DEVICE_F0_ID || \ 356 device_id == IKBL_GT1_5_DT_DEVICE_F0_ID || \ 357 device_id == IKBL_GT2_DT_DEVICE_F0_ID || \ 358 device_id == IKBL_GT4_DT_DEVICE_F0_ID || \ 359 device_id == IKBL_GT1_HALO_DEVICE_F0_ID || \ 360 device_id == IKBL_GT2_HALO_DEVICE_F0_ID || \ 361 device_id == IKBL_GT3_HALO_DEVICE_F0_ID || \ 362 device_id == IKBL_GT4_HALO_DEVICE_F0_ID || \ 363 device_id == IKBL_GT1_SERV_DEVICE_F0_ID || \ 364 device_id == IKBL_GT2_SERV_DEVICE_F0_ID || \ 365 device_id == IKBL_GT3_SERV_DEVICE_F0_ID || \ 366 device_id == IKBL_GT4_SERV_DEVICE_F0_ID || \ 367 device_id == IKBL_GT2_WRK_DEVICE_F0_ID || \ 368 device_id == IKBL_GT4_WRK_DEVICE_F0_ID ) 369 370 371 #define IS_BROXTON(device_id) ( device_id == IBXT_GT_3x6_DEVICE_ID || \ 372 device_id == IBXT_PRO_3x6_DEVICE_ID || \ 373 device_id == IBXT_PRO_12EU_3x6_DEVICE_ID || \ 374 device_id == IBXT_P_3x6_DEVICE_ID || \ 375 device_id == IBXT_P_12EU_3x6_DEVICE_ID ) 376 377 #define IS_GEN9(device_id) (IS_SKYLAKE(device_id) || IS_BROXTON(device_id)) 378 #define IS_GEN9_5(device_id) (IS_KABYLAKE(device_id)) 379 380 #define IS_SUPPORTED_GEN(device_id) ( \ 381 IS_GEN7_5(device_id) || \ 382 IS_GEN8(device_id) || \ 383 IS_VALLEYVIEW_A0(device_id) || \ 384 IS_GEN9(device_id) || \ 385 IS_GEN9_5(device_id) ) 386 387 #define IS_GEN7_5_PLUS(device_id) ( IS_GEN7_5(device_id) || \ 388 IS_GEN8(device_id) || \ 389 IS_GEN9(device_id) || \ 390 IS_GEN9_5(device_id) ) 391 392 #define IS_GEN8_PLUS(device_id) ( IS_GEN8(device_id) || \ 393 IS_GEN9(device_id) || \ 394 IS_GEN9_5(device_id) ) 395 396 #endif 397