1 /*++ 2 3 Copyright (c) 2006 - 2007, Intel Corporation. All rights reserved.<BR> 4 This program and the accompanying materials 5 are licensed and made available under the terms and conditions of the BSD License 6 which accompanies this distribution. The full text of the license may be found at 7 http://opensource.org/licenses/bsd-license.php 8 9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 12 Module Name: 13 14 pci30.h 15 16 Abstract: 17 Support for PCI 3.0 standard. 18 19 Revision History 20 21 --*/ 22 23 #ifndef _PCI30_H 24 #define _PCI30_H 25 26 #include "pci23.h" 27 28 #define PCI_CLASS_MASS_STORAGE_SATADPA 0x06 29 #define PCI_CLASS_MASS_STORAGE_AHCI PCI_CLASS_MASS_STORAGE_SATADPA 30 31 #pragma pack(1) 32 33 typedef struct { 34 UINT32 Signature; // "PCIR" 35 UINT16 VendorId; 36 UINT16 DeviceId; 37 UINT16 DeviceListOffset; 38 UINT16 Length; 39 UINT8 Revision; 40 UINT8 ClassCode[3]; 41 UINT16 ImageLength; 42 UINT16 CodeRevision; 43 UINT8 CodeType; 44 UINT8 Indicator; 45 UINT16 MaxRuntimeImageLength; 46 UINT16 ConfigUtilityCodeHeaderOffset; 47 UINT16 DMTFCLPEntryPointOffset; 48 } PCI_3_0_DATA_STRUCTURE; 49 50 #pragma pack() 51 52 #endif 53