0000:00:06
  +   ˆl–Ü4ý( ©³( 	Å€fàB¦-ÿÁ„®€_†I|¥�+ÁÀ ?÷     /*
 * Copyright 2013 Intel Corporation
 * All Rights Reserved.
 *
 * Permission is hereby granted, free of charge, to any person obtaining a
 * copy of this software and associated documentation files (the
 * "Software"), to deal in the Software without restriction, including
 * without limitation the rights to use, copy, modify, merge, publish,
 * distribute, sub license, and/or sell copies of the Software, and to
 * permit persons to whom the Software is furnished to do so, subject to
 * the following conditions:
 *
 * The above copyright notice and this permission notice (including the
 * next paragraph) shall be included in all copies or substantial portions
 * of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
 * DEALINGS IN THE SOFTWARE.
 */
#ifndef _I915_PCIIDS_H
#define _I915_PCIIDS_H

/*
 * A pci_device_id struct {
 *	__u32 vendor, device;
 *      __u32 subvendor, subdevice;
 *	__u32 class, class_mask;
 *	kernel_ulong_t driver_data;
 * };
 * Don't use C99 here because "class" is reserved and we want to
 * give userspace flexibility.
 */
#define INTEL_VGA_DEVICE(id, info) { \
	0x8086,	id, \
	~0, ~0, \
	0x030000, 0xff0000, \
	(unsigned long) info }

#define INTEL_QUANTA_VGA_DEVICE(info) { \
	0x8086,	0x16a, \
	0x152d,	0x8990, \
	0x030000, 0xff0000, \
	(unsigned long) info }

#define INTEL_I810_IDS(MACRO__, ...) \
	MACRO__(0x7121, ## __VA_ARGS__), /* I810 */ \
	MACRO__(0x7123, ## __VA_ARGS__), /* I810_DC100 */ \
	MACRO__(0x7125, ## __VA_ARGS__)  /* I810_E */

#define INTEL_I815_IDS(MACRO__, ...) \
	MACRO__(0x1132, ## __VA_ARGS__)  /* I815*/

#define INTEL_I830_IDS(MACRO__, ...) \
	MACRO__(0x3577, ## __VA_ARGS__)

#define INTEL_I845G_IDS(MACRO__, ...) \
	MACRO__(0x2562, ## __VA_ARGS__)

#define INTEL_I85X_IDS(MACRO__, ...) \
	MACRO__(0x3582, ## __VA_ARGS__), /* I855_GM */ \
	MACRO__(0x358e, ## __VA_ARGS__)

#define INTEL_I865G_IDS(MACRO__, ...) \
	MACRO__(0x2572, ## __VA_ARGS__) /* I865_G */

#define INTEL_I915G_IDS(MACRO__, ...) \
	MACRO__(0x2582, ## __VA_ARGS__), /* I915_G */ \
	MACRO__(0x258a, ## __VA_ARGS__)  /* E7221_G */

#define INTEL_I915GM_IDS(MACRO__, ...) \
	MACRO__(0x2592, ## __VA_ARGS__) /* I915_GM */

#define INTEL_I945G_IDS(MACRO__, ...) \
	MACRO__(0x2772, ## __VA_ARGS__) /* I945_G */

#define INTEL_I945GM_IDS(MACRO__, ...) \
	MACRO__(0x27a2, ## __VA_ARGS__), /* I945_GM */ \
	MACRO__(0x27ae, ## __VA_ARGS__)  /* I945_GME */

#define INTEL_I965G_IDS(MACRO__, ...) \
	MACRO__(0x2972, ## __VA_ARGS__), /* I946_GZ */ \
	MACRO__(0x2982, ## __VA_ARGS__),	/* G35_G */ \
	MACRO__(0x2992, ## __VA_ARGS__),	/* I965_Q */ \
	MACRO__(0x29a2, ## __VA_ARGS__)	/* I965_G */

#define INTEL_G33_IDS(MACRO__, ...) \
	MACRO__(0x29b2, ## __VA_ARGS__), /* Q35_G */ \
	MACRO__(0x29c2, ## __VA_ARGS__),	/* G33_G */ \
	MACRO__(0x29d2, ## __VA_ARGS__)	/* Q33_G */

#define INTEL_I965GM_IDS(MACRO__, ...) \
	MACRO__(0x2a02, ## __VA_ARGS__),	/* I965_GM */ \
	MACRO__(0x2a12, ## __VA_ARGS__)  /* I965_GME */

#define INTEL_GM45_IDS(MACRO__, ...) \
	MACRO__(0x2a42, ## __VA_ARGS__) /* GM45_G */

#define INTEL_G45_IDS(MACRO__, ...) \
	MACRO__(0x2e02, ## __VA_ARGS__), /* IGD_E_G */ \
	MACRO__(0x2e12, ## __VA_ARGS__), /* Q45_G */ \
	MACRO__(0x2e22, ## __VA_ARGS__), /* G45_G */ \
	MACRO__(0x2e32, ## __VA_ARGS__), /* G41_G */ \
	MACRO__(0x2e42, ## __VA_ARGS__), /* B43_G */ \
	MACRO__(0x2e92, ## __VA_ARGS__)	/* B43_G.1 */

#define INTEL_PNV_G_IDS(MACRO__, ...) \
	MACRO__(0xa001, ## __VA_ARGS__)

#define INTEL_PNV_M_IDS(MACRO__, ...) \
	MACRO__(0xa011, ## __VA_ARGS__)

#define INTEL_PNV_IDS(MACRO__, ...) \
	INTEL_PNV_G_IDS(MACRO__, ## __VA_ARGS__), \
	INTEL_PNV_M_IDS