1*7688df22SAndroid Build Coastguard Worker /* 2*7688df22SAndroid Build Coastguard Worker * 3*7688df22SAndroid Build Coastguard Worker * Copyright 2003 Tungsten Graphics, Inc., Cedar Park, Texas. 4*7688df22SAndroid Build Coastguard Worker * All Rights Reserved. 5*7688df22SAndroid Build Coastguard Worker * 6*7688df22SAndroid Build Coastguard Worker * Permission is hereby granted, free of charge, to any person obtaining a 7*7688df22SAndroid Build Coastguard Worker * copy of this software and associated documentation files (the 8*7688df22SAndroid Build Coastguard Worker * "Software"), to deal in the Software without restriction, including 9*7688df22SAndroid Build Coastguard Worker * without limitation the rights to use, copy, modify, merge, publish, 10*7688df22SAndroid Build Coastguard Worker * distribute, sub license, and/or sell copies of the Software, and to 11*7688df22SAndroid Build Coastguard Worker * permit persons to whom the Software is furnished to do so, subject to 12*7688df22SAndroid Build Coastguard Worker * the following conditions: 13*7688df22SAndroid Build Coastguard Worker * 14*7688df22SAndroid Build Coastguard Worker * The above copyright notice and this permission notice (including the 15*7688df22SAndroid Build Coastguard Worker * next paragraph) shall be included in all copies or substantial portions 16*7688df22SAndroid Build Coastguard Worker * of the Software. 17*7688df22SAndroid Build Coastguard Worker * 18*7688df22SAndroid Build Coastguard Worker * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 19*7688df22SAndroid Build Coastguard Worker * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 20*7688df22SAndroid Build Coastguard Worker * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. 21*7688df22SAndroid Build Coastguard Worker * IN NO EVENT SHALL TUNGSTEN GRAPHICS AND/OR ITS SUPPLIERS BE LIABLE FOR 22*7688df22SAndroid Build Coastguard Worker * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 23*7688df22SAndroid Build Coastguard Worker * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 24*7688df22SAndroid Build Coastguard Worker * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 25*7688df22SAndroid Build Coastguard Worker * 26*7688df22SAndroid Build Coastguard Worker */ 27*7688df22SAndroid Build Coastguard Worker 28*7688df22SAndroid Build Coastguard Worker #ifndef _INTEL_CHIPSET_H 29*7688df22SAndroid Build Coastguard Worker #define _INTEL_CHIPSET_H 30*7688df22SAndroid Build Coastguard Worker 31*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_I810 0x7121 32*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_I810_DC100 0x7123 33*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_I810_E 0x7125 34*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_I815 0x1132 35*7688df22SAndroid Build Coastguard Worker 36*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_I830_M 0x3577 37*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_845_G 0x2562 38*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_I855_GM 0x3582 39*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_I865_G 0x2572 40*7688df22SAndroid Build Coastguard Worker 41*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_I915_G 0x2582 42*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_E7221_G 0x258A 43*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_I915_GM 0x2592 44*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_I945_G 0x2772 45*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_I945_GM 0x27A2 46*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_I945_GME 0x27AE 47*7688df22SAndroid Build Coastguard Worker 48*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_Q35_G 0x29B2 49*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_G33_G 0x29C2 50*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_Q33_G 0x29D2 51*7688df22SAndroid Build Coastguard Worker 52*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_IGD_GM 0xA011 53*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_IGD_G 0xA001 54*7688df22SAndroid Build Coastguard Worker 55*7688df22SAndroid Build Coastguard Worker #define IS_IGDGM(devid) ((devid) == PCI_CHIP_IGD_GM) 56*7688df22SAndroid Build Coastguard Worker #define IS_IGDG(devid) ((devid) == PCI_CHIP_IGD_G) 57*7688df22SAndroid Build Coastguard Worker #define IS_IGD(devid) (IS_IGDG(devid) || IS_IGDGM(devid)) 58*7688df22SAndroid Build Coastguard Worker 59*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_I965_G 0x29A2 60*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_I965_Q 0x2992 61*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_I965_G_1 0x2982 62*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_I946_GZ 0x2972 63*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_I965_GM 0x2A02 64*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_I965_GME 0x2A12 65*7688df22SAndroid Build Coastguard Worker 66*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_GM45_GM 0x2A42 67*7688df22SAndroid Build Coastguard Worker 68*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_IGD_E_G 0x2E02 69*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_Q45_G 0x2E12 70*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_G45_G 0x2E22 71*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_G41_G 0x2E32 72*7688df22SAndroid Build Coastguard Worker 73*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_ILD_G 0x0042 74*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_ILM_G 0x0046 75*7688df22SAndroid Build Coastguard Worker 76*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_SANDYBRIDGE_GT1 0x0102 /* desktop */ 77*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_SANDYBRIDGE_GT2 0x0112 78*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_SANDYBRIDGE_GT2_PLUS 0x0122 79*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_SANDYBRIDGE_M_GT1 0x0106 /* mobile */ 80*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_SANDYBRIDGE_M_GT2 0x0116 81*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_SANDYBRIDGE_M_GT2_PLUS 0x0126 82*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_SANDYBRIDGE_S 0x010A /* server */ 83*7688df22SAndroid Build Coastguard Worker 84*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_IVYBRIDGE_GT1 0x0152 /* desktop */ 85*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_IVYBRIDGE_GT2 0x0162 86*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_IVYBRIDGE_M_GT1 0x0156 /* mobile */ 87*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_IVYBRIDGE_M_GT2 0x0166 88*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_IVYBRIDGE_S 0x015a /* server */ 89*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_IVYBRIDGE_S_GT2 0x016a /* server */ 90*7688df22SAndroid Build Coastguard Worker 91*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_GT1 0x0402 /* Desktop */ 92*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_GT2 0x0412 93*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_GT3 0x0422 94*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_M_GT1 0x0406 /* Mobile */ 95*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_M_GT2 0x0416 96*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_M_GT3 0x0426 97*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_S_GT1 0x040A /* Server */ 98*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_S_GT2 0x041A 99*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_S_GT3 0x042A 100*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_B_GT1 0x040B /* Reserved */ 101*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_B_GT2 0x041B 102*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_B_GT3 0x042B 103*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_E_GT1 0x040E /* Reserved */ 104*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_E_GT2 0x041E 105*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_E_GT3 0x042E 106*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_SDV_GT1 0x0C02 /* Desktop */ 107*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_SDV_GT2 0x0C12 108*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_SDV_GT3 0x0C22 109*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_SDV_M_GT1 0x0C06 /* Mobile */ 110*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_SDV_M_GT2 0x0C16 111*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_SDV_M_GT3 0x0C26 112*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_SDV_S_GT1 0x0C0A /* Server */ 113*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_SDV_S_GT2 0x0C1A 114*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_SDV_S_GT3 0x0C2A 115*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_SDV_B_GT1 0x0C0B /* Reserved */ 116*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_SDV_B_GT2 0x0C1B 117*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_SDV_B_GT3 0x0C2B 118*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_SDV_E_GT1 0x0C0E /* Reserved */ 119*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_SDV_E_GT2 0x0C1E 120*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_SDV_E_GT3 0x0C2E 121*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_ULT_GT1 0x0A02 /* Desktop */ 122*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_ULT_GT2 0x0A12 123*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_ULT_GT3 0x0A22 124*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_ULT_M_GT1 0x0A06 /* Mobile */ 125*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_ULT_M_GT2 0x0A16 126*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_ULT_M_GT3 0x0A26 127*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_ULT_S_GT1 0x0A0A /* Server */ 128*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_ULT_S_GT2 0x0A1A 129*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_ULT_S_GT3 0x0A2A 130*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_ULT_B_GT1 0x0A0B /* Reserved */ 131*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_ULT_B_GT2 0x0A1B 132*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_ULT_B_GT3 0x0A2B 133*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_ULT_E_GT1 0x0A0E /* Reserved */ 134*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_ULT_E_GT2 0x0A1E 135*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_ULT_E_GT3 0x0A2E 136*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_CRW_GT1 0x0D02 /* Desktop */ 137*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_CRW_GT2 0x0D12 138*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_CRW_GT3 0x0D22 139*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_CRW_M_GT1 0x0D06 /* Mobile */ 140*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_CRW_M_GT2 0x0D16 141*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_CRW_M_GT3 0x0D26 142*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_CRW_S_GT1 0x0D0A /* Server */ 143*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_CRW_S_GT2 0x0D1A 144*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_CRW_S_GT3 0x0D2A 145*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_CRW_B_GT1 0x0D0B /* Reserved */ 146*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_CRW_B_GT2 0x0D1B 147*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_CRW_B_GT3 0x0D2B 148*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_CRW_E_GT1 0x0D0E /* Reserved */ 149*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_CRW_E_GT2 0x0D1E 150*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_HASWELL_CRW_E_GT3 0x0D2E 151*7688df22SAndroid Build Coastguard Worker #define BDW_SPARE 0x2 152*7688df22SAndroid Build Coastguard Worker #define BDW_ULT 0x6 153*7688df22SAndroid Build Coastguard Worker #define BDW_SERVER 0xa 154*7688df22SAndroid Build Coastguard Worker #define BDW_IRIS 0xb 155*7688df22SAndroid Build Coastguard Worker #define BDW_WORKSTATION 0xd 156*7688df22SAndroid Build Coastguard Worker #define BDW_ULX 0xe 157*7688df22SAndroid Build Coastguard Worker 158*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_VALLEYVIEW_PO 0x0f30 /* VLV PO board */ 159*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_VALLEYVIEW_1 0x0f31 160*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_VALLEYVIEW_2 0x0f32 161*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_VALLEYVIEW_3 0x0f33 162*7688df22SAndroid Build Coastguard Worker 163*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_CHERRYVIEW_0 0x22b0 164*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_CHERRYVIEW_1 0x22b1 165*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_CHERRYVIEW_2 0x22b2 166*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_CHERRYVIEW_3 0x22b3 167*7688df22SAndroid Build Coastguard Worker 168*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_SKYLAKE_DT_GT2 0x1912 169*7688df22SAndroid Build Coastguard Worker #define PCI_CHIP_KABYLAKE_DT_GT2 0x5912 170*7688df22SAndroid Build Coastguard Worker 171*7688df22SAndroid Build Coastguard Worker #define IS_MOBILE(devid) ((devid) == PCI_CHIP_I855_GM || \ 172*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_I915_GM || \ 173*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_I945_GM || \ 174*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_I945_GME || \ 175*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_I965_GM || \ 176*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_I965_GME || \ 177*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_GM45_GM || IS_IGD(devid) || \ 178*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_IVYBRIDGE_M_GT1 || \ 179*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_IVYBRIDGE_M_GT2) 180*7688df22SAndroid Build Coastguard Worker 181*7688df22SAndroid Build Coastguard Worker #define IS_G45(devid) ((devid) == PCI_CHIP_IGD_E_G || \ 182*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_Q45_G || \ 183*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_G45_G || \ 184*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_G41_G) 185*7688df22SAndroid Build Coastguard Worker #define IS_GM45(devid) ((devid) == PCI_CHIP_GM45_GM) 186*7688df22SAndroid Build Coastguard Worker #define IS_G4X(devid) (IS_G45(devid) || IS_GM45(devid)) 187*7688df22SAndroid Build Coastguard Worker 188*7688df22SAndroid Build Coastguard Worker #define IS_ILD(devid) ((devid) == PCI_CHIP_ILD_G) 189*7688df22SAndroid Build Coastguard Worker #define IS_ILM(devid) ((devid) == PCI_CHIP_ILM_G) 190*7688df22SAndroid Build Coastguard Worker 191*7688df22SAndroid Build Coastguard Worker #define IS_915(devid) ((devid) == PCI_CHIP_I915_G || \ 192*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_E7221_G || \ 193*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_I915_GM) 194*7688df22SAndroid Build Coastguard Worker 195*7688df22SAndroid Build Coastguard Worker #define IS_945GM(devid) ((devid) == PCI_CHIP_I945_GM || \ 196*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_I945_GME) 197*7688df22SAndroid Build Coastguard Worker 198*7688df22SAndroid Build Coastguard Worker #define IS_945(devid) ((devid) == PCI_CHIP_I945_G || \ 199*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_I945_GM || \ 200*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_I945_GME || \ 201*7688df22SAndroid Build Coastguard Worker IS_G33(devid)) 202*7688df22SAndroid Build Coastguard Worker 203*7688df22SAndroid Build Coastguard Worker #define IS_G33(devid) ((devid) == PCI_CHIP_G33_G || \ 204*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_Q33_G || \ 205*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_Q35_G || IS_IGD(devid)) 206*7688df22SAndroid Build Coastguard Worker 207*7688df22SAndroid Build Coastguard Worker #define IS_GEN2(devid) ((devid) == PCI_CHIP_I830_M || \ 208*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_845_G || \ 209*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_I855_GM || \ 210*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_I865_G) 211*7688df22SAndroid Build Coastguard Worker 212*7688df22SAndroid Build Coastguard Worker #define IS_GEN3(devid) (IS_945(devid) || IS_915(devid)) 213*7688df22SAndroid Build Coastguard Worker 214*7688df22SAndroid Build Coastguard Worker #define IS_GEN4(devid) ((devid) == PCI_CHIP_I965_G || \ 215*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_I965_Q || \ 216*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_I965_G_1 || \ 217*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_I965_GM || \ 218*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_I965_GME || \ 219*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_I946_GZ || \ 220*7688df22SAndroid Build Coastguard Worker IS_G4X(devid)) 221*7688df22SAndroid Build Coastguard Worker 222*7688df22SAndroid Build Coastguard Worker #define IS_GEN5(devid) (IS_ILD(devid) || IS_ILM(devid)) 223*7688df22SAndroid Build Coastguard Worker 224*7688df22SAndroid Build Coastguard Worker #define IS_GEN6(devid) ((devid) == PCI_CHIP_SANDYBRIDGE_GT1 || \ 225*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_SANDYBRIDGE_GT2 || \ 226*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_SANDYBRIDGE_GT2_PLUS || \ 227*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_SANDYBRIDGE_M_GT1 || \ 228*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_SANDYBRIDGE_M_GT2 || \ 229*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_SANDYBRIDGE_M_GT2_PLUS || \ 230*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_SANDYBRIDGE_S) 231*7688df22SAndroid Build Coastguard Worker 232*7688df22SAndroid Build Coastguard Worker #define IS_GEN7(devid) (IS_IVYBRIDGE(devid) || \ 233*7688df22SAndroid Build Coastguard Worker IS_HASWELL(devid) || \ 234*7688df22SAndroid Build Coastguard Worker IS_VALLEYVIEW(devid)) 235*7688df22SAndroid Build Coastguard Worker 236*7688df22SAndroid Build Coastguard Worker #define IS_IVYBRIDGE(devid) ((devid) == PCI_CHIP_IVYBRIDGE_GT1 || \ 237*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_IVYBRIDGE_GT2 || \ 238*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_IVYBRIDGE_M_GT1 || \ 239*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_IVYBRIDGE_M_GT2 || \ 240*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_IVYBRIDGE_S || \ 241*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_IVYBRIDGE_S_GT2) 242*7688df22SAndroid Build Coastguard Worker 243*7688df22SAndroid Build Coastguard Worker #define IS_VALLEYVIEW(devid) ((devid) == PCI_CHIP_VALLEYVIEW_PO || \ 244*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_VALLEYVIEW_1 || \ 245*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_VALLEYVIEW_2 || \ 246*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_VALLEYVIEW_3) 247*7688df22SAndroid Build Coastguard Worker 248*7688df22SAndroid Build Coastguard Worker #define IS_HSW_GT1(devid) ((devid) == PCI_CHIP_HASWELL_GT1 || \ 249*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_M_GT1 || \ 250*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_S_GT1 || \ 251*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_B_GT1 || \ 252*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_E_GT1 || \ 253*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_SDV_GT1 || \ 254*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_SDV_M_GT1 || \ 255*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_SDV_S_GT1 || \ 256*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_SDV_B_GT1 || \ 257*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_SDV_E_GT1 || \ 258*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_ULT_GT1 || \ 259*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_ULT_M_GT1 || \ 260*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_ULT_S_GT1 || \ 261*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_ULT_B_GT1 || \ 262*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_ULT_E_GT1 || \ 263*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_CRW_GT1 || \ 264*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_CRW_M_GT1 || \ 265*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_CRW_S_GT1 || \ 266*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_CRW_B_GT1 || \ 267*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_CRW_E_GT1) 268*7688df22SAndroid Build Coastguard Worker #define IS_HSW_GT2(devid) ((devid) == PCI_CHIP_HASWELL_GT2 || \ 269*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_M_GT2 || \ 270*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_S_GT2 || \ 271*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_B_GT2 || \ 272*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_E_GT2 || \ 273*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_SDV_GT2 || \ 274*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_SDV_M_GT2 || \ 275*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_SDV_S_GT2 || \ 276*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_SDV_B_GT2 || \ 277*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_SDV_E_GT2 || \ 278*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_ULT_GT2 || \ 279*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_ULT_M_GT2 || \ 280*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_ULT_S_GT2 || \ 281*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_ULT_B_GT2 || \ 282*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_ULT_E_GT2 || \ 283*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_CRW_GT2 || \ 284*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_CRW_M_GT2 || \ 285*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_CRW_S_GT2 || \ 286*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_CRW_B_GT2 || \ 287*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_CRW_E_GT2) 288*7688df22SAndroid Build Coastguard Worker #define IS_HSW_GT3(devid) ((devid) == PCI_CHIP_HASWELL_GT3 || \ 289*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_M_GT3 || \ 290*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_S_GT3 || \ 291*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_B_GT3 || \ 292*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_E_GT3 || \ 293*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_SDV_GT3 || \ 294*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_SDV_M_GT3 || \ 295*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_SDV_S_GT3 || \ 296*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_SDV_B_GT3 || \ 297*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_SDV_E_GT3 || \ 298*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_ULT_GT3 || \ 299*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_ULT_M_GT3 || \ 300*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_ULT_S_GT3 || \ 301*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_ULT_B_GT3 || \ 302*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_ULT_E_GT3 || \ 303*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_CRW_GT3 || \ 304*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_CRW_M_GT3 || \ 305*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_CRW_S_GT3 || \ 306*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_CRW_B_GT3 || \ 307*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_HASWELL_CRW_E_GT3) 308*7688df22SAndroid Build Coastguard Worker 309*7688df22SAndroid Build Coastguard Worker #define IS_HASWELL(devid) (IS_HSW_GT1(devid) || \ 310*7688df22SAndroid Build Coastguard Worker IS_HSW_GT2(devid) || \ 311*7688df22SAndroid Build Coastguard Worker IS_HSW_GT3(devid)) 312*7688df22SAndroid Build Coastguard Worker 313*7688df22SAndroid Build Coastguard Worker #define IS_BROADWELL(devid) (((devid & 0xff00) != 0x1600) ? 0 : \ 314*7688df22SAndroid Build Coastguard Worker (((devid & 0x00f0) >> 4) > 3) ? 0 : \ 315*7688df22SAndroid Build Coastguard Worker ((devid & 0x000f) == BDW_SPARE) ? 1 : \ 316*7688df22SAndroid Build Coastguard Worker ((devid & 0x000f) == BDW_ULT) ? 1 : \ 317*7688df22SAndroid Build Coastguard Worker ((devid & 0x000f) == BDW_IRIS) ? 1 : \ 318*7688df22SAndroid Build Coastguard Worker ((devid & 0x000f) == BDW_SERVER) ? 1 : \ 319*7688df22SAndroid Build Coastguard Worker ((devid & 0x000f) == BDW_WORKSTATION) ? 1 : \ 320*7688df22SAndroid Build Coastguard Worker ((devid & 0x000f) == BDW_ULX) ? 1 : 0) 321*7688df22SAndroid Build Coastguard Worker 322*7688df22SAndroid Build Coastguard Worker #define IS_CHERRYVIEW(devid) ((devid) == PCI_CHIP_CHERRYVIEW_0 || \ 323*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_CHERRYVIEW_1 || \ 324*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_CHERRYVIEW_2 || \ 325*7688df22SAndroid Build Coastguard Worker (devid) == PCI_CHIP_CHERRYVIEW_3) 326*7688df22SAndroid Build Coastguard Worker 327*7688df22SAndroid Build Coastguard Worker #define IS_GEN8(devid) (IS_BROADWELL(devid) || \ 328*7688df22SAndroid Build Coastguard Worker IS_CHERRYVIEW(devid)) 329*7688df22SAndroid Build Coastguard Worker 330*7688df22SAndroid Build Coastguard Worker /* New platforms use kernel pci ids */ 331*7688df22SAndroid Build Coastguard Worker #include <stdbool.h> 332*7688df22SAndroid Build Coastguard Worker #include <libdrm_macros.h> 333*7688df22SAndroid Build Coastguard Worker 334*7688df22SAndroid Build Coastguard Worker #define IS_9XX(dev) (!IS_GEN2(dev)) 335*7688df22SAndroid Build Coastguard Worker 336*7688df22SAndroid Build Coastguard Worker #endif /* _INTEL_CHIPSET_H */ 337