intel_chipset.h revision cad0e03f5a616fabc276f5195353bff1f8a31669
1cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt/* 2cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt * 3cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt * Copyright 2003 Tungsten Graphics, Inc., Cedar Park, Texas. 4cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt * All Rights Reserved. 5cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt * 6cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt * Permission is hereby granted, free of charge, to any person obtaining a 7cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt * copy of this software and associated documentation files (the 8cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt * "Software"), to deal in the Software without restriction, including 9cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt * without limitation the rights to use, copy, modify, merge, publish, 10cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt * distribute, sub license, and/or sell copies of the Software, and to 11cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt * permit persons to whom the Software is furnished to do so, subject to 12cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt * the following conditions: 13cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt * 14cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt * The above copyright notice and this permission notice (including the 15cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt * next paragraph) shall be included in all copies or substantial portions 16cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt * of the Software. 17cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt * 18cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 19cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 20cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. 21cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt * IN NO EVENT SHALL TUNGSTEN GRAPHICS AND/OR ITS SUPPLIERS BE LIABLE FOR 22cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 23cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 24cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 25cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt * 26cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt */ 27cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt 28cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt#ifndef _INTEL_CHIPSET_H 29cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt#define _INTEL_CHIPSET_H 30cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt 3136d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky#define PCI_CHIP_I810 0x7121 3236d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky#define PCI_CHIP_I810_DC100 0x7123 3336d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky#define PCI_CHIP_I810_E 0x7125 3436d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky#define PCI_CHIP_I815 0x1132 3536d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky 3636d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky#define PCI_CHIP_I830_M 0x3577 3736d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky#define PCI_CHIP_845_G 0x2562 3836d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky#define PCI_CHIP_I855_GM 0x3582 3936d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky#define PCI_CHIP_I865_G 0x2572 4036d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky 4136d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky#define PCI_CHIP_I915_G 0x2582 4236d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky#define PCI_CHIP_E7221_G 0x258A 4336d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky#define PCI_CHIP_I915_GM 0x2592 4436d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky#define PCI_CHIP_I945_G 0x2772 4536d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky#define PCI_CHIP_I945_GM 0x27A2 4636d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky#define PCI_CHIP_I945_GME 0x27AE 4736d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky 4836d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky#define PCI_CHIP_Q35_G 0x29B2 4936d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky#define PCI_CHIP_G33_G 0x29C2 5036d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky#define PCI_CHIP_Q33_G 0x29D2 5136d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky 5236d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky#define PCI_CHIP_IGD_GM 0xA011 5336d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky#define PCI_CHIP_IGD_G 0xA001 5436d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky 556e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define IS_IGDGM(devid) ((devid) == PCI_CHIP_IGD_GM) 566e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define IS_IGDG(devid) ((devid) == PCI_CHIP_IGD_G) 576e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define IS_IGD(devid) (IS_IGDG(devid) || IS_IGDGM(devid)) 5836d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky 5936d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky#define PCI_CHIP_I965_G 0x29A2 6036d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky#define PCI_CHIP_I965_Q 0x2992 6136d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky#define PCI_CHIP_I965_G_1 0x2982 6236d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky#define PCI_CHIP_I946_GZ 0x2972 636e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define PCI_CHIP_I965_GM 0x2A02 646e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define PCI_CHIP_I965_GME 0x2A12 6536d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky 666e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define PCI_CHIP_GM45_GM 0x2A42 6736d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky 686e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define PCI_CHIP_IGD_E_G 0x2E02 696e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define PCI_CHIP_Q45_G 0x2E12 706e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define PCI_CHIP_G45_G 0x2E22 716e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define PCI_CHIP_G41_G 0x2E32 7236d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky 736e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define PCI_CHIP_ILD_G 0x0042 746e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define PCI_CHIP_ILM_G 0x0046 751d318e2a79c3ae02fa886bcba79ac68b5222e1a3Eric Anholt 761d318e2a79c3ae02fa886bcba79ac68b5222e1a3Eric Anholt#define PCI_CHIP_SANDYBRIDGE_GT1 0x0102 /* desktop */ 771d318e2a79c3ae02fa886bcba79ac68b5222e1a3Eric Anholt#define PCI_CHIP_SANDYBRIDGE_GT2 0x0112 781d318e2a79c3ae02fa886bcba79ac68b5222e1a3Eric Anholt#define PCI_CHIP_SANDYBRIDGE_GT2_PLUS 0x0122 791d318e2a79c3ae02fa886bcba79ac68b5222e1a3Eric Anholt#define PCI_CHIP_SANDYBRIDGE_M_GT1 0x0106 /* mobile */ 801d318e2a79c3ae02fa886bcba79ac68b5222e1a3Eric Anholt#define PCI_CHIP_SANDYBRIDGE_M_GT2 0x0116 811d318e2a79c3ae02fa886bcba79ac68b5222e1a3Eric Anholt#define PCI_CHIP_SANDYBRIDGE_M_GT2_PLUS 0x0126 821d318e2a79c3ae02fa886bcba79ac68b5222e1a3Eric Anholt#define PCI_CHIP_SANDYBRIDGE_S 0x010A /* server */ 831d318e2a79c3ae02fa886bcba79ac68b5222e1a3Eric Anholt 841d318e2a79c3ae02fa886bcba79ac68b5222e1a3Eric Anholt#define PCI_CHIP_IVYBRIDGE_GT1 0x0152 /* desktop */ 851d318e2a79c3ae02fa886bcba79ac68b5222e1a3Eric Anholt#define PCI_CHIP_IVYBRIDGE_GT2 0x0162 861d318e2a79c3ae02fa886bcba79ac68b5222e1a3Eric Anholt#define PCI_CHIP_IVYBRIDGE_M_GT1 0x0156 /* mobile */ 871d318e2a79c3ae02fa886bcba79ac68b5222e1a3Eric Anholt#define PCI_CHIP_IVYBRIDGE_M_GT2 0x0166 881d318e2a79c3ae02fa886bcba79ac68b5222e1a3Eric Anholt#define PCI_CHIP_IVYBRIDGE_S 0x015a /* server */ 89e057a56448e2e785f74bc13dbd6ead8572ebed91Eugeni Dodonov#define PCI_CHIP_IVYBRIDGE_S_GT2 0x016a /* server */ 901d318e2a79c3ae02fa886bcba79ac68b5222e1a3Eric Anholt 916e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define PCI_CHIP_HASWELL_GT1 0x0402 /* Desktop */ 926e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define PCI_CHIP_HASWELL_GT2 0x0412 93150c3555e7ba53f6ad2d3970cca8e4d5970410aaRodrigo Vivi#define PCI_CHIP_HASWELL_GT3 0x0422 946e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define PCI_CHIP_HASWELL_M_GT1 0x0406 /* Mobile */ 956e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define PCI_CHIP_HASWELL_M_GT2 0x0416 96150c3555e7ba53f6ad2d3970cca8e4d5970410aaRodrigo Vivi#define PCI_CHIP_HASWELL_M_GT3 0x0426 976e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define PCI_CHIP_HASWELL_S_GT1 0x040A /* Server */ 986e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define PCI_CHIP_HASWELL_S_GT2 0x041A 99150c3555e7ba53f6ad2d3970cca8e4d5970410aaRodrigo Vivi#define PCI_CHIP_HASWELL_S_GT3 0x042A 1001669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi#define PCI_CHIP_HASWELL_B_GT1 0x040B /* Reserved */ 1011669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi#define PCI_CHIP_HASWELL_B_GT2 0x041B 1021669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi#define PCI_CHIP_HASWELL_B_GT3 0x042B 1031669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi#define PCI_CHIP_HASWELL_E_GT1 0x040E /* Reserved */ 1041669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi#define PCI_CHIP_HASWELL_E_GT2 0x041E 1051669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi#define PCI_CHIP_HASWELL_E_GT3 0x042E 1066e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define PCI_CHIP_HASWELL_SDV_GT1 0x0C02 /* Desktop */ 1076e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define PCI_CHIP_HASWELL_SDV_GT2 0x0C12 108150c3555e7ba53f6ad2d3970cca8e4d5970410aaRodrigo Vivi#define PCI_CHIP_HASWELL_SDV_GT3 0x0C22 1096e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define PCI_CHIP_HASWELL_SDV_M_GT1 0x0C06 /* Mobile */ 1106e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define PCI_CHIP_HASWELL_SDV_M_GT2 0x0C16 111150c3555e7ba53f6ad2d3970cca8e4d5970410aaRodrigo Vivi#define PCI_CHIP_HASWELL_SDV_M_GT3 0x0C26 1126e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define PCI_CHIP_HASWELL_SDV_S_GT1 0x0C0A /* Server */ 1136e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define PCI_CHIP_HASWELL_SDV_S_GT2 0x0C1A 114150c3555e7ba53f6ad2d3970cca8e4d5970410aaRodrigo Vivi#define PCI_CHIP_HASWELL_SDV_S_GT3 0x0C2A 1151669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi#define PCI_CHIP_HASWELL_SDV_B_GT1 0x0C0B /* Reserved */ 1161669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi#define PCI_CHIP_HASWELL_SDV_B_GT2 0x0C1B 1171669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi#define PCI_CHIP_HASWELL_SDV_B_GT3 0x0C2B 1181669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi#define PCI_CHIP_HASWELL_SDV_E_GT1 0x0C0E /* Reserved */ 1191669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi#define PCI_CHIP_HASWELL_SDV_E_GT2 0x0C1E 1201669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi#define PCI_CHIP_HASWELL_SDV_E_GT3 0x0C2E 1216e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define PCI_CHIP_HASWELL_ULT_GT1 0x0A02 /* Desktop */ 1226e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define PCI_CHIP_HASWELL_ULT_GT2 0x0A12 123150c3555e7ba53f6ad2d3970cca8e4d5970410aaRodrigo Vivi#define PCI_CHIP_HASWELL_ULT_GT3 0x0A22 1246e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define PCI_CHIP_HASWELL_ULT_M_GT1 0x0A06 /* Mobile */ 1256e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define PCI_CHIP_HASWELL_ULT_M_GT2 0x0A16 126150c3555e7ba53f6ad2d3970cca8e4d5970410aaRodrigo Vivi#define PCI_CHIP_HASWELL_ULT_M_GT3 0x0A26 1276e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define PCI_CHIP_HASWELL_ULT_S_GT1 0x0A0A /* Server */ 1286e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define PCI_CHIP_HASWELL_ULT_S_GT2 0x0A1A 129150c3555e7ba53f6ad2d3970cca8e4d5970410aaRodrigo Vivi#define PCI_CHIP_HASWELL_ULT_S_GT3 0x0A2A 1301669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi#define PCI_CHIP_HASWELL_ULT_B_GT1 0x0A0B /* Reserved */ 1311669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi#define PCI_CHIP_HASWELL_ULT_B_GT2 0x0A1B 1321669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi#define PCI_CHIP_HASWELL_ULT_B_GT3 0x0A2B 1331669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi#define PCI_CHIP_HASWELL_ULT_E_GT1 0x0A0E /* Reserved */ 1341669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi#define PCI_CHIP_HASWELL_ULT_E_GT2 0x0A1E 1351669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi#define PCI_CHIP_HASWELL_ULT_E_GT3 0x0A2E 136ca678bc073462623cfc89dea80271bc361f1655fKenneth Graunke#define PCI_CHIP_HASWELL_CRW_GT1 0x0D02 /* Desktop */ 137ca678bc073462623cfc89dea80271bc361f1655fKenneth Graunke#define PCI_CHIP_HASWELL_CRW_GT2 0x0D12 138150c3555e7ba53f6ad2d3970cca8e4d5970410aaRodrigo Vivi#define PCI_CHIP_HASWELL_CRW_GT3 0x0D22 139ca678bc073462623cfc89dea80271bc361f1655fKenneth Graunke#define PCI_CHIP_HASWELL_CRW_M_GT1 0x0D06 /* Mobile */ 140ca678bc073462623cfc89dea80271bc361f1655fKenneth Graunke#define PCI_CHIP_HASWELL_CRW_M_GT2 0x0D16 141150c3555e7ba53f6ad2d3970cca8e4d5970410aaRodrigo Vivi#define PCI_CHIP_HASWELL_CRW_M_GT3 0x0D26 142ca678bc073462623cfc89dea80271bc361f1655fKenneth Graunke#define PCI_CHIP_HASWELL_CRW_S_GT1 0x0D0A /* Server */ 143ca678bc073462623cfc89dea80271bc361f1655fKenneth Graunke#define PCI_CHIP_HASWELL_CRW_S_GT2 0x0D1A 144150c3555e7ba53f6ad2d3970cca8e4d5970410aaRodrigo Vivi#define PCI_CHIP_HASWELL_CRW_S_GT3 0x0D2A 1451669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi#define PCI_CHIP_HASWELL_CRW_B_GT1 0x0D0B /* Reserved */ 1461669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi#define PCI_CHIP_HASWELL_CRW_B_GT2 0x0D1B 1471669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi#define PCI_CHIP_HASWELL_CRW_B_GT3 0x0D2B 1481669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi#define PCI_CHIP_HASWELL_CRW_E_GT1 0x0D0E /* Reserved */ 1491669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi#define PCI_CHIP_HASWELL_CRW_E_GT2 0x0D1E 1501669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi#define PCI_CHIP_HASWELL_CRW_E_GT3 0x0D2E 1516ea20a0fe2f3ede1c89176db0aa447b9758fefd1Ben Widawsky#define BDW_SPARE 0x2 1526ea20a0fe2f3ede1c89176db0aa447b9758fefd1Ben Widawsky#define BDW_ULT 0x6 1536ea20a0fe2f3ede1c89176db0aa447b9758fefd1Ben Widawsky#define BDW_SERVER 0xa 1546ea20a0fe2f3ede1c89176db0aa447b9758fefd1Ben Widawsky#define BDW_IRIS 0xb 1556ea20a0fe2f3ede1c89176db0aa447b9758fefd1Ben Widawsky#define BDW_WORKSTATION 0xd 1566ea20a0fe2f3ede1c89176db0aa447b9758fefd1Ben Widawsky#define BDW_ULX 0xe 157617213357e94299a5e9a3cb1342de55de949d156Kenneth Graunke 15836d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky#define PCI_CHIP_VALLEYVIEW_PO 0x0f30 /* VLV PO board */ 159ef866c7293e699b119ae61738e221857a36a5362Jesse Barnes#define PCI_CHIP_VALLEYVIEW_1 0x0f31 160ef866c7293e699b119ae61738e221857a36a5362Jesse Barnes#define PCI_CHIP_VALLEYVIEW_2 0x0f32 161ef866c7293e699b119ae61738e221857a36a5362Jesse Barnes#define PCI_CHIP_VALLEYVIEW_3 0x0f33 1629d9cb8553c945fac15421770da233fb3e38396e0Jesse Barnes 163bb1f4263b7ce169ab484b8463f0bf630a1ab4f2bVille Syrjälä#define PCI_CHIP_CHERRYVIEW_0 0x22b0 164bb1f4263b7ce169ab484b8463f0bf630a1ab4f2bVille Syrjälä#define PCI_CHIP_CHERRYVIEW_1 0x22b1 165bb1f4263b7ce169ab484b8463f0bf630a1ab4f2bVille Syrjälä#define PCI_CHIP_CHERRYVIEW_2 0x22b2 166bb1f4263b7ce169ab484b8463f0bf630a1ab4f2bVille Syrjälä#define PCI_CHIP_CHERRYVIEW_3 0x22b3 167bb1f4263b7ce169ab484b8463f0bf630a1ab4f2bVille Syrjälä 168c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau#define PCI_CHIP_SKYLAKE_ULT_GT2 0x1916 169c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau#define PCI_CHIP_SKYLAKE_ULT_GT1 0x1906 170c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau#define PCI_CHIP_SKYLAKE_ULT_GT3 0x1926 171c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau#define PCI_CHIP_SKYLAKE_ULT_GT2F 0x1921 172c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau#define PCI_CHIP_SKYLAKE_ULX_GT1 0x190E 173c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau#define PCI_CHIP_SKYLAKE_ULX_GT2 0x191E 174c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau#define PCI_CHIP_SKYLAKE_DT_GT2 0x1912 175c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau#define PCI_CHIP_SKYLAKE_DT_GT1 0x1902 176c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau#define PCI_CHIP_SKYLAKE_HALO_GT2 0x191B 177c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau#define PCI_CHIP_SKYLAKE_HALO_GT3 0x192B 178c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau#define PCI_CHIP_SKYLAKE_HALO_GT1 0x190B 179c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau#define PCI_CHIP_SKYLAKE_SRV_GT2 0x191A 180c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau#define PCI_CHIP_SKYLAKE_SRV_GT1 0x190A 181c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau#define PCI_CHIP_SKYLAKE_WKS_GT2 0x191D 182cad0e03f5a616fabc276f5195353bff1f8a31669Ben Widawsky#define PCI_CHIP_SKYLAKE_SRV_GT4 0x192A 183cad0e03f5a616fabc276f5195353bff1f8a31669Ben Widawsky#define PCI_CHIP_SKYLAKE_DT_GT4 0x1932 184cad0e03f5a616fabc276f5195353bff1f8a31669Ben Widawsky#define PCI_CHIP_SKYLAKE_SRV_GT4X 0x193A 185cad0e03f5a616fabc276f5195353bff1f8a31669Ben Widawsky#define PCI_CHIP_SKYLAKE_H_GT4 0x193B 186cad0e03f5a616fabc276f5195353bff1f8a31669Ben Widawsky#define PCI_CHIP_SKYLAKE_WKS_GT4 0x193D 187c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau 188e9ea1f42d14e10852f292f3470aee260c7349978Damien Lespiau#define PCI_CHIP_BROXTON_0 0x0A84 189e9ea1f42d14e10852f292f3470aee260c7349978Damien Lespiau#define PCI_CHIP_BROXTON_1 0x1A84 190e9ea1f42d14e10852f292f3470aee260c7349978Damien Lespiau#define PCI_CHIP_BROXTON_2 0x5A84 191e9ea1f42d14e10852f292f3470aee260c7349978Damien Lespiau 1926e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define IS_MOBILE(devid) ((devid) == PCI_CHIP_I855_GM || \ 1936e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_I915_GM || \ 1946e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_I945_GM || \ 1956e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_I945_GME || \ 1966e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_I965_GM || \ 1976e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_I965_GME || \ 1986e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_GM45_GM || IS_IGD(devid) || \ 1996e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_IVYBRIDGE_M_GT1 || \ 2006e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_IVYBRIDGE_M_GT2) 2016e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä 2026e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define IS_G45(devid) ((devid) == PCI_CHIP_IGD_E_G || \ 2036e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_Q45_G || \ 2046e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_G45_G || \ 2056e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_G41_G) 2066e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define IS_GM45(devid) ((devid) == PCI_CHIP_GM45_GM) 20736d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky#define IS_G4X(devid) (IS_G45(devid) || IS_GM45(devid)) 208f6dc964e1d4d43e4053b84b31e76d974af128276Eric Anholt 2096e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define IS_ILD(devid) ((devid) == PCI_CHIP_ILD_G) 2106e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define IS_ILM(devid) ((devid) == PCI_CHIP_ILM_G) 211f6dc964e1d4d43e4053b84b31e76d974af128276Eric Anholt 2126e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define IS_915(devid) ((devid) == PCI_CHIP_I915_G || \ 2136e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_E7221_G || \ 2146e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_I915_GM) 215f6dc964e1d4d43e4053b84b31e76d974af128276Eric Anholt 2166e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define IS_945GM(devid) ((devid) == PCI_CHIP_I945_GM || \ 2176e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_I945_GME) 218f6dc964e1d4d43e4053b84b31e76d974af128276Eric Anholt 2196e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define IS_945(devid) ((devid) == PCI_CHIP_I945_G || \ 2206e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_I945_GM || \ 2216e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_I945_GME || \ 22236d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky IS_G33(devid)) 223f6dc964e1d4d43e4053b84b31e76d974af128276Eric Anholt 2246e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define IS_G33(devid) ((devid) == PCI_CHIP_G33_G || \ 2256e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_Q33_G || \ 2266e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_Q35_G || IS_IGD(devid)) 227f6dc964e1d4d43e4053b84b31e76d974af128276Eric Anholt 2286e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define IS_GEN2(devid) ((devid) == PCI_CHIP_I830_M || \ 2296e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_845_G || \ 2306e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_I855_GM || \ 2316e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_I865_G) 232cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt 23336d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky#define IS_GEN3(devid) (IS_945(devid) || IS_915(devid)) 234cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt 2356e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define IS_GEN4(devid) ((devid) == PCI_CHIP_I965_G || \ 2366e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_I965_Q || \ 2376e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_I965_G_1 || \ 2386e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_I965_GM || \ 2396e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_I965_GME || \ 2406e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_I946_GZ || \ 24136d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky IS_G4X(devid)) 2429d9cb8553c945fac15421770da233fb3e38396e0Jesse Barnes 24336d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky#define IS_GEN5(devid) (IS_ILD(devid) || IS_ILM(devid)) 24436d18211b196cad4761ac70c4fd08aba323f5b0dBen Widawsky 2456e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define IS_GEN6(devid) ((devid) == PCI_CHIP_SANDYBRIDGE_GT1 || \ 2466e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_SANDYBRIDGE_GT2 || \ 2476e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_SANDYBRIDGE_GT2_PLUS || \ 2486e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_SANDYBRIDGE_M_GT1 || \ 2496e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_SANDYBRIDGE_M_GT2 || \ 2506e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_SANDYBRIDGE_M_GT2_PLUS || \ 2516e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_SANDYBRIDGE_S) 2526e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä 2536e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define IS_GEN7(devid) (IS_IVYBRIDGE(devid) || \ 25493d12593e5f1b251a09b112d7beaf5cfca026896Ville Syrjälä IS_HASWELL(devid) || \ 25593d12593e5f1b251a09b112d7beaf5cfca026896Ville Syrjälä IS_VALLEYVIEW(devid)) 2566e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä 2576e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define IS_IVYBRIDGE(devid) ((devid) == PCI_CHIP_IVYBRIDGE_GT1 || \ 2586e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_IVYBRIDGE_GT2 || \ 2596e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_IVYBRIDGE_M_GT1 || \ 2606e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_IVYBRIDGE_M_GT2 || \ 2616e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_IVYBRIDGE_S || \ 26293d12593e5f1b251a09b112d7beaf5cfca026896Ville Syrjälä (devid) == PCI_CHIP_IVYBRIDGE_S_GT2) 2636e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä 2646e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define IS_VALLEYVIEW(devid) ((devid) == PCI_CHIP_VALLEYVIEW_PO || \ 2656e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_VALLEYVIEW_1 || \ 2666e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_VALLEYVIEW_2 || \ 2676e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_VALLEYVIEW_3) 2686e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä 2696e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define IS_HSW_GT1(devid) ((devid) == PCI_CHIP_HASWELL_GT1 || \ 2706e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_HASWELL_M_GT1 || \ 2716e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_HASWELL_S_GT1 || \ 2721669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi (devid) == PCI_CHIP_HASWELL_B_GT1 || \ 2731669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi (devid) == PCI_CHIP_HASWELL_E_GT1 || \ 2746e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_HASWELL_SDV_GT1 || \ 2756e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_HASWELL_SDV_M_GT1 || \ 2766e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_HASWELL_SDV_S_GT1 || \ 2771669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi (devid) == PCI_CHIP_HASWELL_SDV_B_GT1 || \ 2781669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi (devid) == PCI_CHIP_HASWELL_SDV_E_GT1 || \ 2796e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_HASWELL_ULT_GT1 || \ 2806e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_HASWELL_ULT_M_GT1 || \ 2816e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_HASWELL_ULT_S_GT1 || \ 2821669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi (devid) == PCI_CHIP_HASWELL_ULT_B_GT1 || \ 2831669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi (devid) == PCI_CHIP_HASWELL_ULT_E_GT1 || \ 2846e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_HASWELL_CRW_GT1 || \ 2856e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_HASWELL_CRW_M_GT1 || \ 2861669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi (devid) == PCI_CHIP_HASWELL_CRW_S_GT1 || \ 2871669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi (devid) == PCI_CHIP_HASWELL_CRW_B_GT1 || \ 2881669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi (devid) == PCI_CHIP_HASWELL_CRW_E_GT1) 2896e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define IS_HSW_GT2(devid) ((devid) == PCI_CHIP_HASWELL_GT2 || \ 2906e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_HASWELL_M_GT2 || \ 2916e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_HASWELL_S_GT2 || \ 2921669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi (devid) == PCI_CHIP_HASWELL_B_GT2 || \ 2931669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi (devid) == PCI_CHIP_HASWELL_E_GT2 || \ 2946e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_HASWELL_SDV_GT2 || \ 2956e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_HASWELL_SDV_M_GT2 || \ 2966e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_HASWELL_SDV_S_GT2 || \ 2971669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi (devid) == PCI_CHIP_HASWELL_SDV_B_GT2 || \ 2981669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi (devid) == PCI_CHIP_HASWELL_SDV_E_GT2 || \ 2996e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_HASWELL_ULT_GT2 || \ 3006e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_HASWELL_ULT_M_GT2 || \ 3016e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_HASWELL_ULT_S_GT2 || \ 3021669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi (devid) == PCI_CHIP_HASWELL_ULT_B_GT2 || \ 3031669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi (devid) == PCI_CHIP_HASWELL_ULT_E_GT2 || \ 3046e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_HASWELL_CRW_GT2 || \ 3056e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä (devid) == PCI_CHIP_HASWELL_CRW_M_GT2 || \ 3061669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi (devid) == PCI_CHIP_HASWELL_CRW_S_GT2 || \ 3071669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi (devid) == PCI_CHIP_HASWELL_CRW_B_GT2 || \ 3081669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi (devid) == PCI_CHIP_HASWELL_CRW_E_GT2) 309150c3555e7ba53f6ad2d3970cca8e4d5970410aaRodrigo Vivi#define IS_HSW_GT3(devid) ((devid) == PCI_CHIP_HASWELL_GT3 || \ 310150c3555e7ba53f6ad2d3970cca8e4d5970410aaRodrigo Vivi (devid) == PCI_CHIP_HASWELL_M_GT3 || \ 311150c3555e7ba53f6ad2d3970cca8e4d5970410aaRodrigo Vivi (devid) == PCI_CHIP_HASWELL_S_GT3 || \ 3121669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi (devid) == PCI_CHIP_HASWELL_B_GT3 || \ 3131669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi (devid) == PCI_CHIP_HASWELL_E_GT3 || \ 314150c3555e7ba53f6ad2d3970cca8e4d5970410aaRodrigo Vivi (devid) == PCI_CHIP_HASWELL_SDV_GT3 || \ 315150c3555e7ba53f6ad2d3970cca8e4d5970410aaRodrigo Vivi (devid) == PCI_CHIP_HASWELL_SDV_M_GT3 || \ 316150c3555e7ba53f6ad2d3970cca8e4d5970410aaRodrigo Vivi (devid) == PCI_CHIP_HASWELL_SDV_S_GT3 || \ 3171669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi (devid) == PCI_CHIP_HASWELL_SDV_B_GT3 || \ 3181669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi (devid) == PCI_CHIP_HASWELL_SDV_E_GT3 || \ 319150c3555e7ba53f6ad2d3970cca8e4d5970410aaRodrigo Vivi (devid) == PCI_CHIP_HASWELL_ULT_GT3 || \ 320150c3555e7ba53f6ad2d3970cca8e4d5970410aaRodrigo Vivi (devid) == PCI_CHIP_HASWELL_ULT_M_GT3 || \ 321150c3555e7ba53f6ad2d3970cca8e4d5970410aaRodrigo Vivi (devid) == PCI_CHIP_HASWELL_ULT_S_GT3 || \ 3221669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi (devid) == PCI_CHIP_HASWELL_ULT_B_GT3 || \ 3231669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi (devid) == PCI_CHIP_HASWELL_ULT_E_GT3 || \ 324150c3555e7ba53f6ad2d3970cca8e4d5970410aaRodrigo Vivi (devid) == PCI_CHIP_HASWELL_CRW_GT3 || \ 325150c3555e7ba53f6ad2d3970cca8e4d5970410aaRodrigo Vivi (devid) == PCI_CHIP_HASWELL_CRW_M_GT3 || \ 3261669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi (devid) == PCI_CHIP_HASWELL_CRW_S_GT3 || \ 3271669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi (devid) == PCI_CHIP_HASWELL_CRW_B_GT3 || \ 3281669a67d063e82a58dae4d906015172d471e9a2aRodrigo Vivi (devid) == PCI_CHIP_HASWELL_CRW_E_GT3) 3296e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä 3306e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define IS_HASWELL(devid) (IS_HSW_GT1(devid) || \ 331150c3555e7ba53f6ad2d3970cca8e4d5970410aaRodrigo Vivi IS_HSW_GT2(devid) || \ 332150c3555e7ba53f6ad2d3970cca8e4d5970410aaRodrigo Vivi IS_HSW_GT3(devid)) 3336e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä 3346ea20a0fe2f3ede1c89176db0aa447b9758fefd1Ben Widawsky#define IS_BROADWELL(devid) (((devid & 0xff00) != 0x1600) ? 0 : \ 3356ea20a0fe2f3ede1c89176db0aa447b9758fefd1Ben Widawsky (((devid & 0x00f0) >> 4) > 3) ? 0 : \ 3366ea20a0fe2f3ede1c89176db0aa447b9758fefd1Ben Widawsky ((devid & 0x000f) == BDW_SPARE) ? 1 : \ 3376ea20a0fe2f3ede1c89176db0aa447b9758fefd1Ben Widawsky ((devid & 0x000f) == BDW_ULT) ? 1 : \ 3386ea20a0fe2f3ede1c89176db0aa447b9758fefd1Ben Widawsky ((devid & 0x000f) == BDW_IRIS) ? 1 : \ 3396ea20a0fe2f3ede1c89176db0aa447b9758fefd1Ben Widawsky ((devid & 0x000f) == BDW_SERVER) ? 1 : \ 3406ea20a0fe2f3ede1c89176db0aa447b9758fefd1Ben Widawsky ((devid & 0x000f) == BDW_WORKSTATION) ? 1 : \ 3416ea20a0fe2f3ede1c89176db0aa447b9758fefd1Ben Widawsky ((devid & 0x000f) == BDW_ULX) ? 1 : 0) 3426ea20a0fe2f3ede1c89176db0aa447b9758fefd1Ben Widawsky 343bb1f4263b7ce169ab484b8463f0bf630a1ab4f2bVille Syrjälä#define IS_CHERRYVIEW(devid) ((devid) == PCI_CHIP_CHERRYVIEW_0 || \ 344bb1f4263b7ce169ab484b8463f0bf630a1ab4f2bVille Syrjälä (devid) == PCI_CHIP_CHERRYVIEW_1 || \ 345bb1f4263b7ce169ab484b8463f0bf630a1ab4f2bVille Syrjälä (devid) == PCI_CHIP_CHERRYVIEW_2 || \ 346bb1f4263b7ce169ab484b8463f0bf630a1ab4f2bVille Syrjälä (devid) == PCI_CHIP_CHERRYVIEW_3) 3476ea20a0fe2f3ede1c89176db0aa447b9758fefd1Ben Widawsky 348bb1f4263b7ce169ab484b8463f0bf630a1ab4f2bVille Syrjälä#define IS_GEN8(devid) (IS_BROADWELL(devid) || \ 349bb1f4263b7ce169ab484b8463f0bf630a1ab4f2bVille Syrjälä IS_CHERRYVIEW(devid)) 3506ea20a0fe2f3ede1c89176db0aa447b9758fefd1Ben Widawsky 351c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau#define IS_SKL_GT1(devid) ((devid) == PCI_CHIP_SKYLAKE_ULT_GT1 || \ 352c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau (devid) == PCI_CHIP_SKYLAKE_ULX_GT1 || \ 353c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau (devid) == PCI_CHIP_SKYLAKE_DT_GT1 || \ 354c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau (devid) == PCI_CHIP_SKYLAKE_HALO_GT1 || \ 355c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau (devid) == PCI_CHIP_SKYLAKE_SRV_GT1) 356c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau 357c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau#define IS_SKL_GT2(devid) ((devid) == PCI_CHIP_SKYLAKE_ULT_GT2 || \ 358c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau (devid) == PCI_CHIP_SKYLAKE_ULT_GT2F || \ 359c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau (devid) == PCI_CHIP_SKYLAKE_ULX_GT2 || \ 360c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau (devid) == PCI_CHIP_SKYLAKE_DT_GT2 || \ 361c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau (devid) == PCI_CHIP_SKYLAKE_HALO_GT2 || \ 362c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau (devid) == PCI_CHIP_SKYLAKE_SRV_GT2 || \ 363c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau (devid) == PCI_CHIP_SKYLAKE_WKS_GT2) 364c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau 365c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau#define IS_SKL_GT3(devid) ((devid) == PCI_CHIP_SKYLAKE_ULT_GT3 || \ 366cad0e03f5a616fabc276f5195353bff1f8a31669Ben Widawsky (devid) == PCI_CHIP_SKYLAKE_HALO_GT3) 367cad0e03f5a616fabc276f5195353bff1f8a31669Ben Widawsky 368cad0e03f5a616fabc276f5195353bff1f8a31669Ben Widawsky#define IS_SKL_GT4(devid) ((devid) == PCI_CHIP_SKYLAKE_SRV_GT4 || \ 369cad0e03f5a616fabc276f5195353bff1f8a31669Ben Widawsky (devid) == PCI_CHIP_SKYLAKE_DT_GT4 || \ 370cad0e03f5a616fabc276f5195353bff1f8a31669Ben Widawsky (devid) == PCI_CHIP_SKYLAKE_SRV_GT4X || \ 371cad0e03f5a616fabc276f5195353bff1f8a31669Ben Widawsky (devid) == PCI_CHIP_SKYLAKE_H_GT4 || \ 372cad0e03f5a616fabc276f5195353bff1f8a31669Ben Widawsky (devid) == PCI_CHIP_SKYLAKE_WKS_GT4) 373c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau 374c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau#define IS_SKYLAKE(devid) (IS_SKL_GT1(devid) || \ 375c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau IS_SKL_GT2(devid) || \ 376cad0e03f5a616fabc276f5195353bff1f8a31669Ben Widawsky IS_SKL_GT3(devid) || \ 377cad0e03f5a616fabc276f5195353bff1f8a31669Ben Widawsky IS_SKL_GT4(devid)) 378c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau 379e9ea1f42d14e10852f292f3470aee260c7349978Damien Lespiau#define IS_BROXTON(devid) ((devid) == PCI_CHIP_BROXTON_0 || \ 380e9ea1f42d14e10852f292f3470aee260c7349978Damien Lespiau (devid) == PCI_CHIP_BROXTON_1 || \ 381e9ea1f42d14e10852f292f3470aee260c7349978Damien Lespiau (devid) == PCI_CHIP_BROXTON_2) 382e9ea1f42d14e10852f292f3470aee260c7349978Damien Lespiau 383e9ea1f42d14e10852f292f3470aee260c7349978Damien Lespiau#define IS_GEN9(devid) (IS_SKYLAKE(devid) || \ 384e9ea1f42d14e10852f292f3470aee260c7349978Damien Lespiau IS_BROXTON(devid)) 385c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau 3866e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä#define IS_9XX(dev) (IS_GEN3(dev) || \ 3876e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä IS_GEN4(dev) || \ 3886e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä IS_GEN5(dev) || \ 3896e55fd7dee48dabcd46939df1aa8729eba426298Ville Syrjälä IS_GEN6(dev) || \ 3906ea20a0fe2f3ede1c89176db0aa447b9758fefd1Ben Widawsky IS_GEN7(dev) || \ 391c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau IS_GEN8(dev) || \ 392c19a9867ab35834b0fc6a8b0cb8d19382424ff07Damien Lespiau IS_GEN9(dev)) 3936ea20a0fe2f3ede1c89176db0aa447b9758fefd1Ben Widawsky 394cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt 395cbdd6272c04f487c8a63b595829d2d551e2b58f8Eric Anholt#endif /* _INTEL_CHIPSET_H */ 396