; Copyright (c) 2009-2012  Intel Corporation   
; **********************************************************************************************   
; **********************************************************************************************   
; **    Filename:  iaAHCI.inf   
; **    Revision:  09/03/2013,3.8.0.1108 
; **    Abstract:  Windows* INF File for AHCI Intel(R) Rapid Storage Technology Enterprise Driver   
; **               Installs: RSTe AHCI Controller Miniport  
; **********************************************************************************************   
[Version]   
Signature="$Windows NT$"   
Provider=%INTEL%   
ClassGUID={4D36E97B-E325-11CE-BFC1-08002BE10318}   
Class=SCSIAdapter   
CatalogFile=iaAHCI.cat  
DriverVer=09/03/2013,3.8.0.1108
;  
[PackageInfo]   
Name=AHCI   
;  
[SourceDisksNames]   
1 = %DiskId1%,,,""   
[DestinationDirs]   
DefaultDestDir = 12   
;  
[ControlFlags]   
ExcludeFromSelect = *   
;  
[Manufacturer]   
%INTEL% = INTEL, NTx86.5.2, NTx86.6.2   
;  
[iaStorA_Service_Inst]   
ServiceType    = %SERVICE_KERNEL_DRIVER%   
StartType      = %SERVICE_BOOT_START%   
ErrorControl   = %SERVICE_ERROR_NORMAL%   
ServiceBinary  = %12%\iaStorA.sys   
LoadOrderGroup = SCSI miniport   
AddReg         = pnpsafe_pci_addreg   
;  
[iaStorA_EventLog_Inst]   
AddReg = iaStorA_EventLog_AddReg   
;  
[iaStorA_EventLog_AddReg]   
HKR,,EventMessageFile,%REG_EXPAND_SZ%,"%%SystemRoot%%\System32\IoLogMsg.dll;%%SystemRoot%%\System32\drivers\iaStorA.sys"  
HKR,,TypesSupported,%REG_TYPE_DWORD%,7   
;  
[iaStorF_Service_Inst]   
ServiceType    = %SERVICE_KERNEL_DRIVER%   
StartType      = %SERVICE_BOOT_START%   
ErrorControl   = %SERVICE_ERROR_NORMAL%   
ServiceBinary  = %12%\iaStorF.sys   
;  
[iaStorF_EventLog_Inst]   
AddReg = iaStorF_EventLog_AddReg   
;  
[iaStorF_EventLog_AddReg]   
HKR,,EventMessageFile,%REG_EXPAND_SZ%,"%%SystemRoot%%\System32\IoLogMsg.dll"  
HKR,,TypesSupported,%REG_TYPE_DWORD%,7   
;  
;******************************************************************************   
;*   
;* 32-BIT X86 ARCHITECTURE   
;*   
;* This section specifies the 32-bit architecture specific INF file entries   
;* required to install a driver as a 32-bit compatible driver.   
;*   
;******************************************************************************   
[SourceDisksFiles.x86]   
iaStorA.sys = 1,,,   
iaStorF.sys = 1,,,   
;  
[INTEL.NTx86.6.2]     
;windows_8_32-bit     
;   
[INTEL.NTx86.5.2]     
;server_2003_enterprise_x86    
%PCI\VEN_8086&DEV_1D02&CC_0106.DeviceDesc% = iaStorA_inst, PCI\VEN_8086&DEV_1D02&CC_0106   
%PCI\VEN_8086&DEV_8C02&CC_0106.DeviceDesc% = iaStorA_inst, PCI\VEN_8086&DEV_8C02&CC_0106   
%PCI\VEN_8086&DEV_8D02&CC_0106.DeviceDesc% = iaStorA_inst, PCI\VEN_8086&DEV_8D02&CC_0106   
%PCI\VEN_8086&DEV_1F22&CC_0106.DeviceDesc% = iaStorA_inst, PCI\VEN_8086&DEV_1F22&CC_0106   
;  
[iaStorA_inst.ntx86]   
CopyFiles=@iaStorA.sys  
CopyFiles=@iaStorF.sys    
;  
[iaStorA_inst.ntx86.HW]  
AddReg = iaStorF_addreg    
AddReg = msi_addreg  
AddReg = storport_addreg  
;  
[iaStorA_inst.ntx86.Services]   
AddService = iaStorA, %SPSVCINST_ASSOCSERVICE%, iaStorA_Service_Inst, iaStorA_EventLog_Inst   
AddService = iaStorF, , iaStorF_Service_Inst, iaStorF_EventLog_Inst   
;  
[iaStorF_addreg]   
; Layer the RST Filter driver under all Disk class devices as a lower disk class filter   
;  
HKLM, System\CurrentControlSet\Control\Class\{4d36e967-e325-11ce-bfc1-08002be10318}, LowerFilters, 0x00010008, iaStorF   
;  
[pnpsafe_pci_addreg]  
; Use raw values for BusType, not a DEFINE, ChkInf fails on hex alpha chars   
; BusType_ATA == 0x3, BusTypeATA, BusType_RAID == 0x8, BusType_SATA == 0xb  
HKR, Parameters\PnpInterface,  5,                           %REG_TYPE_DWORD%,  0x00000001   
HKR, Parameters,               BusType,                     %REG_TYPE_DWORD%,  0x0000000b  
; Tell Storport in Win7/Srv08R2(KB982018) that driver can report 4K sector size (not needed in Win8)  
HKR, Parameters\Device,        EnableQueryAccessAlignment,  %REG_TYPE_DWORD%,  0x00000001  
;  
[Strings]   
;   
; Localizable Strings   
;   
diskId1 = "RSTe AHCI Installation Disk"   
;server  
PCI\VEN_8086&DEV_1D02&CC_0106.DeviceDesc    = "Intel(R) C600 series chipset SATA AHCI Controller"  
PCI\VEN_8086&DEV_8C02&CC_0106.DeviceDesc    = "Intel(R) C220 series chipset SATA AHCI Controller"  
PCI\VEN_8086&DEV_8D02&CC_0106.DeviceDesc    = "Intel(R) C600+/C220+ series chipset SATA AHCI Controller"  
PCI\VEN_8086&DEV_1F22&CC_0106.DeviceDesc    = "Intel(R) C600+/C220+ series chipset SATA AHCI Controller"  
;  
INTEL = "Intel Corporation"  
; Non-Localizable Strings   
;   
SPSVCINST_ASSOCSERVICE = 0x00000002   
REG_MULTI_SZ           = 0x00010000   
REG_EXPAND_SZ          = 0x00020000   
REG_TYPE_DWORD         = 0x00010001   
SERVICE_KERNEL_DRIVER  = 1   
SERVICE_BOOT_START     = 0   
SERVICE_ERROR_NORMAL   = 1  
;  
; MSI enables.   
[msi_addreg]    
HKR, Interrupt Management, 0x00000010    
HKR, Interrupt Management\MessageSignaledInterruptProperties, 0x00000010    
HKR, Interrupt Management\MessageSignaledInterruptProperties, MSISupported,       %REG_TYPE_DWORD%,   1    
HKR, Interrupt Management\MessageSignaledInterruptProperties, MessageNumberLimit, %REG_TYPE_DWORD%,   1   
;  
[storport_addreg]  
;;; Enables/Disables Idle Power Management for StorPort  
HKR, "StorPort", "EnableIdlePowerManagement", %REG_TYPE_DWORD%, 0x00000000  
;;; Force StorPort to keep all sense data in Pre-Win8 OSes (max value is 255)  
HKR, StorPort, TotalSenseDataBytes, %REG_TYPE_DWORD%, 0x000000FF  
