;
; UMDF GNSS Sensor Driver
; Copyright (c) 2012-13 Smith Micro Software, Inc.
; Copyright (c) 2012-13 Intel Corporation
; Copyright (c) 2015 Sierra Wireless. All Rights Reserved. http://www.sierrawireless.com/
;

[Version]
Signature   = "$Windows NT$"
Class       = Sensor
ClassGuid   = {5175D334-C371-4806-B3BA-71FD53C9258D}
Provider    = %ProviderName%
CatalogFile = swingnss00.Cat
DriverVer=12/03/2015,15.12.10223.1

; =================== Manufacturer/Models sections =======================

[Manufacturer]
%SW% = Sierra,NTamd64

[Sierra.NTamd64]
%EM7340.DeviceDesc% = EM734x.swingnss00_Install,USB\VID_1199&PID_A002&MI_02
%EM7345.DeviceDesc% = EM734x.swingnss00_Install,USB\VID_1199&PID_A003&MI_02
%EM7445.DeviceDesc% = EM7445.swingnss00_Install,USB\VID_1199&PID_A005&MI_02

; =================== Sensors Service Driver  Device ==================================

[EM734x.swingnss00_Install.NT]
CopyFiles       = UMDriverCopy
CopyFiles       = GNSSRadioManCopy
Include=WINUSB.INF                      ; Import sections from WINUSB.INF
Needs=WINUSB.NT                         ; Run the CopyFiles & AddReg directives for WinUsb.INF
AddReg=GNSSRadioMan_AddReg		; Adding Radio Manager registry

[EM734x.swingnss00_Install.NT.hw]
AddReg=WINUSBTransport_AddReg
AddReg=EM734x.DriverHwProp_AddReg

[WINUSBTransport_AddReg]
HKR,,"LowerFilters",0x00010008,"WinUsb" ; FLG_ADDREG_TYPE_MULTI_SZ | FLG_ADDREG_APPEND
HKR,,"WinUsbPowerPolicyOwnershipDisabled",0x00010001,1

[EM734x.swingnss00_Install.NT.Services]
AddService=WUDFRd,0x000001fa,WUDFRD_ServiceInstall  ; flag 0x2 sets this as the service for the device
AddService=WinUsb,0x000001f8,WinUsb_ServiceInstall  ; this service is installed because its a filter.

[EM734x.swingnss00_Install.NT.CoInstallers]
CopyFiles=CoInstallers_CopyFiles
AddReg=CoInstallers_AddReg

[EM734x.swingnss00_Install.NT.Wdf]
KmdfService=WINUSB, WinUsb_Install
UmdfDispatcher=WinUsb
UmdfService= swingnss00,UMDFswingnss00_Install
UmdfServiceOrder=swingnss00
UmdfImpersonationLevel=Impersonation

[WinUsb_Install]
KmdfLibraryVersion=1.11


[EM734x.DriverHwProp_AddReg]
HKR,,DevManufacturer,,%SW%
HKR,,DevModel,,%EM734x.DeviceModel%
HKR,,DevFriendlyName,,%EM734x.DeviceFriendlyName%
HKR,,DevSerialNumber,,%EM734x.DeviceSN%

[EM7445.swingnss00_Install.NT]
CopyFiles       = UMDriverCopy
CopyFiles       = GNSSRadioManCopy
Include=WINUSB.INF                      ; Import sections from WINUSB.INF
Needs=WINUSB.NT                         ; Run the CopyFiles & AddReg directives for WinUsb.INF
AddReg=GNSSRadioMan_AddReg		; Adding Radio Manager registry

[EM7445.swingnss00_Install.NT.hw]
AddReg=WINUSBTransport_AddReg
AddReg=EM7445.DriverHwProp_AddReg

[EM7445.swingnss00_Install.NT.Services]
AddService=WUDFRd,0x000001fa,WUDFRD_ServiceInstall  ; flag 0x2 sets this as the service for the device
AddService=WinUsb,0x000001f8,WinUsb_ServiceInstall  ; this service is installed because its a filter.

[EM7445.swingnss00_Install.NT.CoInstallers]
CopyFiles=CoInstallers_CopyFiles
AddReg=CoInstallers_AddReg

[EM7445.swingnss00_Install.NT.Wdf]
KmdfService=WINUSB, WinUsb_Install
UmdfDispatcher=WinUsb
UmdfService= swingnss00,UMDFswingnss00_Install
UmdfServiceOrder=swingnss00
UmdfImpersonationLevel=Impersonation

[EM7445.DriverHwProp_AddReg]
HKR,,DevManufacturer,,%SW%
HKR,,DevModel,,%EM7445.DeviceModel%
HKR,,DevFriendlyName,,%EM7445.DeviceFriendlyName%
HKR,,DevSerialNumber,,%EM7445.DeviceSN%

[GNSSRadioMan_AddReg]
HKCR,"CLSID\{552FD8ED-739A-447C-A280-709BF5F8087B}",,,"GNSS Radio Manager"
HKCR,"CLSID\{552FD8ED-739A-447C-A280-709BF5F8087B}\InProcServer32",,0x00020000,"%SystemRoot%\System32\GNSSRadioMan.dll"
HKCR,"CLSID\{552FD8ED-739A-447C-A280-709BF5F8087B}\InProcServer32","ThreadingModel",,"Both"
HKLM,"SYSTEM\CurrentControlSet\Control\RadioManagement\{552FD8ED-739A-447C-A280-709BF5F8087B}",,,"GNSS Radio Manager"


; =================== UMDF Service Install section ===================

[UMDFswingnss00_Install]
UmdfLibraryVersion      = 1.11.0
ServiceBinary           = %12%\UMDF\swingnss00.dll
DriverCLSID             = {ceeb6d87-3f96-4cc8-9f46-369939171dc7}

[WUDFRD_ServiceInstall]
DisplayName     = "Windows Driver Foundation - User-mode Driver Framework Reflector-Generic"
ServiceType     = 1
StartType       = 3
ErrorControl    = 1
ServiceBinary   = %12%\WUDFRd.sys
LoadOrderGroup  = Base

[WinUsb_ServiceInstall]
DisplayName = "WinUSB Driver"
ServiceType = 1
StartType = 3
ErrorControl = 1
ServiceBinary = %12%\WinUSB.sys

[SourceDisksFiles]
swingnss00.dll  = 1
GNSSRadioMan.dll = 1

[SourceDisksNames]
1 = %DiskId1%

[CoInstallers_CopyFiles]
; empty section still required

[CoInstallers_AddReg]
HKR,,CoInstallers32,0x00010000,"WudfCoinstaller.dll"

[DestinationDirs]
UMDriverCopy            = 12,UMDF
GNSSRadioManCopy        = 11

[UMDriverCopy]
swingnss00.dll,,,2

[GNSSRadioManCopy]
GNSSRadioMan.dll


; =================== Generic ==================================

[Strings]
; When branding, rename these strings only
ProviderName                = "Sierra Wireless"
SW                          = "Sierra Wireless"
EM734x.DeviceModel          = "EM734x-Generic"
EM734x.DeviceFriendlyName   = "Sierra Wireless GNSS Sensor EM734x"
EM734x.DeviceSN             = "{ACDDFDCC-078D-4C3B-A61E-097E5B62C48C}"
EM7445.DeviceModel          = "EM7445-Generic"
EM7445.DeviceFriendlyName   = "Sierra Wireless GNSS Sensor EM7445"
EM7445.DeviceSN             = "{ACDDFDCC-078D-4C3B-A61E-097E5B62C48C}"
EM7340.DeviceDesc           = "Sierra Wireless GNSS Sensor EM7340 4G LTE"
EM7345.DeviceDesc           = "Sierra Wireless GNSS Sensor EM7345 4G LTE"
EM7445.DeviceDesc           = "Sierra Wireless GNSS Sensor EM7445 4G LTE"
DiskId1                     = "GNSS Driver Installation Media"
