;/*++
;
;Copyright (c) 2013-2015 by Qualcomm Technologies, Incorporated.  All Rights Reserved.
;
;Module Name:
;    QCSUBSYS.INX 
;
;Abstract:
;    INF file for installing the combined subsystem driver
;
;--*/

[Version]
Signature="$WINDOWS NT$"
Class=SYSTEM
ClassGuid={4d36e97d-e325-11ce-bfc1-08002be10318}
Provider=%QUALCOMM%
DriverVer = 04/06/2020,1.0.10540.0000
CatalogFile=qcsubsys850.cat
PnpLockDown=1

[DestinationDirs]
Drivers_Dir = 13
System_Dir =  13
WlanFWFiles = 13

[SourceDisksNames]
1 = %DiskId1%

[SourceDisksFiles]

wlanmdsp.mbn = 1,


qcslpi850_cls.mbn = 1,
qcslpi850.mbn = 1,
qcdsp2850_nm.mbn = 1,
qcdsp2850.mbn = 1,
qcdsp1v2850_nm.mbn = 1,
qcdsp1v2850.mbn = 1,
qccdsp850.mbn = 1,
qcadsp850.mbn = 1,

qcsubsys850.sys = 1

[ControlFlags]
ExcludeFromSelect = *

;*****************************************
; Subsystem Driver Install Section
;*****************************************

[Manufacturer]
%QUALCOMM%=Standard,NTARM64

[WDTFSOCDeviceCategory]
{5D078032-6378-437B-8DA5-9B32B7CA3FDD},2,7,,2

[Standard.NTARM64]
%ADSP.DeviceDesc%=SUBSYS_Device, ACPI\QCOM023D
%AMSSCXThermal.DeviceDesc%=SUBSYS_Device, ACPI\QCOM02BD
%SERVICEMANAGER.DeviceDesc%=SUBSYS_Device, ACPI\QCOM02B9
%TEST.DeviceDesc%=SUBSYS_Device, ADSP\DEADCODE
%TEST.DeviceDesc%=SUBSYS_Device, QCMS\DEADCODE
%SSDD.DeviceDesc%=SUBSYS_Device, ACPI\QCOM02D1
%CDSP.DeviceDesc%=SUBSYS_Device, ACPI\QCOM02F7

;Modem Configurations
;%AMSS.DeviceDesc%=SUBSYS_Device_AMSS_MSM, ACPI\QCOM023E
;%AMSS.DeviceDesc%=SUBSYS_Device_AMSS_APQ, ACPI\VEN_QCOM&DEV_023E&SUBSYS_MTPA0850
%AMSS.DeviceDesc%=SUBSYS_Device_AMSS_MSM, ACPI\VEN_QCOM&DEV_023E&SUBSYS_WA020850
;%AMSS.DeviceDesc%=SUBSYS_Device_AMSS_APQ, ACPI\VEN_QCOM&DEV_023E&SUBSYS_HAN00850

;Sensors Configurations
;%SCSS.DeviceDesc%=SUBSYS_Device_Default, ACPI\VEN_QCOM&DEV_02BE&SUBSYS_MTP00850
;%SCSS.DeviceDesc%=SUBSYS_Device_Default, ACPI\VEN_QCOM&DEV_02BE&SUBSYS_HAN00850
%SCSS.DeviceDesc%=SUBSYS_Device_CLS, ACPI\VEN_QCOM&DEV_02BE&SUBSYS_WA020850

[SUBSYS_Device.NT]
CopyFiles=Drivers_Dir, System_Dir,WlanFWFiles
AddProperty=WDTFSOCDeviceCategory
AddReg=SUBSYSReg
Reboot

[SUBSYS_Device.NT.HW]
AddReg=SUBSYSACL, ADSP_Children 

; This installs sensors for all default platforms other than CLS
[SUBSYS_Device_Default.NT]
CopyFiles=Drivers_Dir, System_Dir
AddProperty=WDTFSOCDeviceCategory
AddReg=SUBSYSReg_Default
Reboot

[SUBSYS_Device_Default.NT.HW]
AddReg=SUBSYSACL

; Only used to install for reference CLS device
[SUBSYS_Device_CLS.NT]
CopyFiles=Drivers_Dir, System_Dir
AddProperty=WDTFSOCDeviceCategory
AddReg=SUBSYSReg_CLS
Reboot

[SUBSYS_Device_CLS.NT.HW]
AddReg=SUBSYSACL

;-------------- Service installation
[SUBSYS_Device.NT.Services]
AddService = qcsubsys,%SPSVCINST_ASSOCSERVICE%, SUBSYS_Service_Inst

[SUBSYS_Device_Default.NT.Services]
AddService = qcsubsys,%SPSVCINST_ASSOCSERVICE%, SUBSYS_Service_Inst

[SUBSYS_Device_CLS.NT.Services]
AddService = qcsubsys,%SPSVCINST_ASSOCSERVICE%, SUBSYS_Service_Inst

[SUBSYS_Device_AMSS_APQ.NT]
CopyFiles=Drivers_Dir, System_Dir,WlanFWFiles
AddProperty=WDTFSOCDeviceCategory
AddReg=SUBSYSReg_AMSS_APQ
Reboot

[SUBSYS_Device_AMSS_APQ.NT.HW]
AddReg=SUBSYSACL, AMSS_Children_APQ,HashMapping

;-------------- Service installation
[SUBSYS_Device_AMSS_APQ.NT.Services]
AddService = qcsubsys,%SPSVCINST_ASSOCSERVICE%, SUBSYS_Service_Inst

[SUBSYS_Device_AMSS_MSM.NT]
CopyFiles=Drivers_Dir, System_Dir,WlanFWFiles
AddProperty=WDTFSOCDeviceCategory
AddReg=SUBSYSReg_AMSS_MSM
Reboot

[SUBSYS_Device_AMSS_MSM.NT.HW]
AddReg=SUBSYSACL, AMSS_Children_MSM,HashMapping

;-------------- Service installation
[SUBSYS_Device_AMSS_MSM.NT.Services]
AddService = qcsubsys,%SPSVCINST_ASSOCSERVICE%, SUBSYS_Service_Inst

[SUBSYSACL]
HKR,,Security,,"D:P(A;;GA;;;BA)(A;;GA;;;SY)(A;;GA;;;S-1-5-84-0-0-0-0-0)" 

[Drivers_Dir]
qcsubsys850.sys

[SUBSYSReg_Default]
;Image path for Sensor image
HKR,,"ScssImagePath",%REG_SZ%,"%13%\qcslpi850.mbn"
HKR,0\SCSS,"RPEC",%REG_MULTI_SZ%,"{2c17a886-fe66-4e10-a6ec-9e9ea942eb24}"
HKR,0\SCSS,"Interfaces",%REG_MULTI_SZ%,%GUID_DEVINTERFACE_PIL_TZ%,%GUID_DEVINTERFACE_FASTRPC%

[SUBSYSReg_CLS]
;Image path for Sensor image
HKR,,"ScssImagePath",%REG_SZ%,"%13%\qcslpi850_CLS.mbn"
HKR,0\SCSS,"RPEC",%REG_MULTI_SZ%,"{2c17a886-fe66-4e10-a6ec-9e9ea942eb24}"
HKR,0\SCSS,"Interfaces",%REG_MULTI_SZ%,%GUID_DEVINTERFACE_PIL_TZ%,%GUID_DEVINTERFACE_FASTRPC%

[AMSS_Children_APQ]
HKR,Desktop,"NumChildren",%REG_DWORD%,0x00000001

HKR,Desktop\0,"_HID",%REG_SZ%,"QCOM02E5"
HKR,Desktop\0,"DeviceType",%REG_DWORD%,0x00000012
HKR,Desktop\0,"_UID",%REG_DWORD%,0
HKR,Desktop\0,"SupriseRemoval",%REG_DWORD%,1
HKR,Desktop\0,"ChildRemoval",%REG_DWORD%,1
HKR,Desktop\0,"_ADR",%REG_DWORD%,0
HKR,Desktop\0,"FriendlyName",%REG_SZ%,"WLAN Device"


HKR,Mobile,"NumChildren",%REG_DWORD%,0x00000001

HKR,Mobile\0,"_HID",%REG_SZ%,"QCOM02E5"
HKR,Mobile\0,"DeviceType",%REG_DWORD%,0x00000012
HKR,Mobile\0,"_UID",%REG_DWORD%,0
HKR,Mobile\0,"SupriseRemoval",%REG_DWORD%,1
HKR,Mobile\0,"ChildRemoval",%REG_DWORD%,1
HKR,Mobile\0,"_ADR",%REG_DWORD%,0
HKR,Mobile\0,"FriendlyName",%REG_SZ%,"WLAN Device"


[AMSS_Children_MSM]
HKR,Desktop,"NumChildren",%REG_DWORD%,0x00000002

HKR,Desktop\0,"_HID",%REG_SZ%,"QCOM02E5"
HKR,Desktop\0,"DeviceType",%REG_DWORD%,0x00000012
HKR,Desktop\0,"_UID",%REG_DWORD%,0
HKR,Desktop\0,"SupriseRemoval",%REG_DWORD%,1
HKR,Desktop\0,"ChildRemoval",%REG_DWORD%,1
HKR,Desktop\0,"_ADR",%REG_DWORD%,0
HKR,Desktop\0,"FriendlyName",%REG_SZ%,"WLAN Device"

HKR,Desktop\1,"_HID",%REG_SZ%,"QCOM02F1"
HKR,Desktop\1,"DeviceType",%REG_DWORD%,0x0000002B
HKR,Desktop\1,"_UID",%REG_DWORD%,0
HKR,Desktop\1,"SupriseRemoval",%REG_DWORD%,1
HKR,Desktop\1,"ChildRemoval",%REG_DWORD%,2
HKR,Desktop\1,"_ADR",%REG_DWORD%,1
HKR,Desktop\1,"FriendlyName",%REG_SZ%,"MBB QBI Device"

HKR,Mobile,"NumChildren",%REG_DWORD%,0x00000003

HKR,Mobile\0,"_HID",%REG_SZ%,"QCOM02E5"
HKR,Mobile\0,"DeviceType",%REG_DWORD%,0x00000012
HKR,Mobile\0,"_UID",%REG_DWORD%,0
HKR,Mobile\0,"SupriseRemoval",%REG_DWORD%,1
HKR,Mobile\0,"ChildRemoval",%REG_DWORD%,1
HKR,Mobile\0,"_ADR",%REG_DWORD%,0
HKR,Mobile\0,"FriendlyName",%REG_SZ%,"WLAN Device"

HKR,Mobile\1,"_HID",%REG_SZ%,"QCOM02F2"
HKR,Mobile\1,"DeviceType",%REG_DWORD%,0x0000002B
HKR,Mobile\1,"_UID",%REG_DWORD%,0
HKR,Mobile\1,"SupriseRemoval",%REG_DWORD%,2
HKR,Mobile\1,"ChildRemoval",%REG_DWORD%,1
HKR,Mobile\1,"_ADR",%REG_DWORD%,1
HKR,Mobile\1,"FriendlyName",%REG_SZ%,"MBB Device 0"

HKR,Mobile\2,"_HID",%REG_SZ%,"QCOM02F2"
HKR,Mobile\2,"DeviceType",%REG_DWORD%,0x0000002B
HKR,Mobile\2,"_UID",%REG_DWORD%,1
HKR,Mobile\2,"SupriseRemoval",%REG_DWORD%,2
HKR,Mobile\2,"ChildRemoval",%REG_DWORD%,1
HKR,Mobile\2,"_ADR",%REG_DWORD%,2
HKR,Mobile\2,"FriendlyName",%REG_SZ%,"MBB Device 1"

[ADSP_Children]
HKR,Desktop,"NumChildren",%REG_DWORD%,0x00000002

HKR,Desktop\0,"_HID",%REG_SZ%,"QCOM021F"
HKR,Desktop\0,"_UID",%REG_DWORD%,0
HKR,Desktop\0,"_ADR",%REG_DWORD%,0
HKR,Desktop\0,"DeviceType",%REG_DWORD%,0x0000001D
HKR,Desktop\0,"SupriseRemoval",%REG_DWORD%,1
HKR,Desktop\0,"ChildRemoval",%REG_DWORD%,1
HKR,Desktop\0,"FriendlyName",%REG_SZ%,"Slimbus Device 0"

HKR,Desktop\1,"_HID",%REG_SZ%,"QCOM021F"
HKR,Desktop\1,"_UID",%REG_DWORD%,1
HKR,Desktop\1,"_ADR",%REG_DWORD%,1
HKR,Desktop\1,"DeviceType",%REG_DWORD%,0x0000001D
HKR,Desktop\1,"SupriseRemoval",%REG_DWORD%,1
HKR,Desktop\1,"ChildRemoval",%REG_DWORD%,1
HKR,Desktop\1,"FriendlyName",%REG_SZ%,"Slimbus Device 1"

HKR,Mobile,"NumChildren",%REG_DWORD%,0x00000002
HKR,Mobile\0,"_HID",%REG_SZ%,"QCOM021F"
HKR,Mobile\0,"_UID",%REG_DWORD%,0
HKR,Mobile\0,"_ADR",%REG_DWORD%,0
HKR,Mobile\0,"DeviceType",%REG_DWORD%,0x0000001D
HKR,Mobile\0,"SupriseRemoval",%REG_DWORD%,1
HKR,Mobile\0,"ChildRemoval",%REG_DWORD%,1
HKR,Mobile\0,"FriendlyName",%REG_SZ%,"Slimbus Device 0"

HKR,Mobile\1,"_HID",%REG_SZ%,"QCOM021F"
HKR,Mobile\1,"_UID",%REG_DWORD%,1
HKR,Mobile\1,"_ADR",%REG_DWORD%,1
HKR,Mobile\1,"DeviceType",%REG_DWORD%,0x0000001D
HKR,Mobile\1,"SupriseRemoval",%REG_DWORD%,1
HKR,Mobile\1,"ChildRemoval",%REG_DWORD%,1
HKR,Mobile\1,"FriendlyName",%REG_SZ%,"Slimbus Device 0"

[SUBSYSReg]
;Image path for ADSP image
HKR,,"AdspImagePath",%REG_SZ%,"%13%\qcadsp850.mbn"
;Image path for CDSP image
HKR,,"CdspImagePath",%REG_SZ%,"%13%\qccdsp850.mbn"
; RPE clients
; chipinfo\devicename\
;CHIPINFO_ID_UNKNOWN    = 0,
HKR,0\ADSP,"RPEC",%REG_MULTI_SZ%,"{99CA9C16-4E1E-4970-B49E-2CA56753588B}"
;Interfaces needed by ADSP- Always put PIL first in this list
HKR,0\ADSP,"Interfaces",%REG_MULTI_SZ%,%GUID_DEVINTERFACE_PIL_TZ%,%GUID_DEVINTERFACE_FASTRPC%
;HKR,0\CDSP,"RPEC",%REG_MULTI_SZ%,"{DDAE0B76-6595-4469-A254-AD116DC4012A}"
;Interfaces needed by CDSP- Always put PIL first in this list
HKR,0\CDSP,"Interfaces",%REG_MULTI_SZ%,%GUID_DEVINTERFACE_PIL_TZ%,%GUID_DEVINTERFACE_FASTRPC%
;Interfaces needed by SPSS- Always put PIL first in this list
HKR,0\SPSS,"Interfaces",%REG_MULTI_SZ%,%GUID_DEVINTERFACE_PIL_TZ%
;SHUT--Flag to enable modem shutdown (1 is enabled, 0 is disabled)
;VLMT--Mappings from performance percentage to thermal mitigation level

;DHMS
HKR,QSM,"DHMS",%REG_MULTI_SZ%,"Diag","{00000000-0000-0000-0000-000000000000}","0"
;        Package ()
;        {
;            // Subsystem Name
;            "Diag", ;
;
;            // no crash-dump for diag
;            ToUUID ("00000000-0000-0000-0000-000000000000"),
;
;            // Max CMA size, 0 = Use carveout
;            0 
;
;        }, // end of Diag region
;QSMG--QSM General Platform-specific Configuration
HKR,QSM,"QSMG",%REG_DWORD%,2; // 0 -Disabled, 1- Enabled and HLOS no need to reclaim memory back, 2- Enabled and HLOS need to reclaim memory back.
;MANU
HKR,ADSP,"MANU",%REG_DWORD%,0x06be0baf

; Image paths for Modem images


[SUBSYSReg_AMSS_APQ]
HKR,,"AmssFwImagePath",%REG_SZ%,"%13%\qcdsp1v2850_nm.mbn"
HKR,,"AmssSwImagePath",%REG_SZ%,"%13%\qcdsp2850_nm.mbn"
HKR,0\AMSS,"RPEC",%REG_MULTI_SZ%,"{2eaf5c83-4fa9-49b3-a247-bfdd66e5655b}","{184C009C-42CC-83FF-8725-13A57C3201EF}"
;Interfaces needed by AMSS- Always put PIL first in this list
HKR,0\AMSS,"Interfaces",%REG_MULTI_SZ%,%GUID_DEVINTERFACE_PIL_TZ%,%GUID_TFTP_INTERFACE%
;SHUT--Flag to enable modem shutdown (1 is enabled, 0 is disabled)
HKR,AMSS,"SHUT",%REG_DWORD%,1; 1, enabled
;VLMT--Mappings from performance percentage to thermal mitigation level
HKR,AMSS,"VLMT",%REG_BINARY%,0x21,0x03,0x42,0x02,0x63,0x01,0x64,0x00
;           Percent(<=), TM level,
;           -----        ----------
;            Package () { 33,          3 },
;            Package () { 66,          2 },
;            Package () { 99,          1 },
;            Package () { 100,         0 }

[SUBSYSReg_AMSS_MSM]
HKR,,"AmssFwImagePath",%REG_SZ%,"%13%\qcdsp1v2850.mbn"
HKR,,"AmssSwImagePath",%REG_SZ%,"%13%\qcdsp2850.mbn"
HKR,0\AMSS,"RPEC",%REG_MULTI_SZ%,"{2eaf5c83-4fa9-49b3-a247-bfdd66e5655b}","{184C009C-42CC-83FF-8725-13A57C3201EF}"
;Interfaces needed by AMSS- Always put PIL first in this list
HKR,0\AMSS,"Interfaces",%REG_MULTI_SZ%,%GUID_DEVINTERFACE_PIL_TZ%,%GUID_TFTP_INTERFACE%
;SHUT--Flag to enable modem shutdown (1 is enabled, 0 is disabled)
HKR,AMSS,"SHUT",%REG_DWORD%,1; 1, enabled
;VLMT--Mappings from performance percentage to thermal mitigation level
HKR,AMSS,"VLMT",%REG_BINARY%,0x21,0x03,0x42,0x02,0x63,0x01,0x64,0x00
;           Percent(<=), TM level,
;           -----        ----------
;            Package () { 33,          3 },
;            Package () { 66,          2 },
;            Package () { 99,          1 },
;            Package () { 100,         0 }


; -------------- Subsystem driver install sections
[SUBSYS_Service_Inst]
DisplayName    = %SUBSYS.SVCDESC%
ServiceType    = 1               ; SERVICE_KERNEL_DRIVER
StartType      = 3               ; SERVICE_DEMAND_START (3) SERVICE_SYSTEM_START (1) 
ErrorControl   = 1               ; SERVICE_ERROR_NORMAL
ServiceBinary  = %13%\qcsubsys850.sys
AddReg         = SUBSYSINST

[SUBSYSINST]
HKR,Parameters\DIAG,"FreeReservedMemory",%REG_DWORD%,1
HKR,Parameters,"DogBiteRegDump",%REG_DWORD%,1
HKR,Parameters,"DebugSmp2pTimeout",%REG_DWORD%,1
HKR,Parameters,"SCSSRestartEnabled",%REG_DWORD%,1
HKR,Parameters,"AMSSRestartEnabled",%REG_DWORD%,1
HKR,Parameters,"CdspRestartEnabled",%REG_DWORD%,1

[SUBSYS_Device.NT.Wdf]
KmdfService =  qcsubsys, SUBSYS_wdfsect
[SUBSYS_wdfsect]
KmdfLibraryVersion = 1.25

;***************************************************************************************************************************
;    DONOT DELETE THE EMPTY PLACEHOLDERS BELOW. THEY WILL BE AUTOPOPULATED DURING BUILD TIME
;***************************************************************************************************************************

[System_Dir]

qcslpi850_cls.mbn
qcslpi850.mbn
qcdsp2850_nm.mbn
qcdsp2850.mbn
qcdsp1v2850_nm.mbn
qcdsp1v2850.mbn
qccdsp850.mbn
qcadsp850.mbn


[WlanFWFiles]

wlanmdsp.mbn



[HashMapping]

; Updating registry of wlanmdsp.mbn to remote path \rfs\msm\mpss\readonly\firmware\image\wlanmdsp.mbn
HKR,Mappings\TFTP\22cbedc3d6344b3a560857873b9f43378c3e08181c61472922f6d4e069217804,"Remote",%REG_SZ%, \rfs\msm\mpss\readonly\firmware\image\wlanmdsp.mbn
HKR,Mappings\TFTP\22cbedc3d6344b3a560857873b9f43378c3e08181c61472922f6d4e069217804,"Local",%REG_SZ%, %13%\wlanmdsp.mbn



[Strings]
; non localizable
REG_SZ                = 0x00000000
REG_DWORD             = 0x00010001
REG_BINARY            = 0x00000001
REG_MULTI_SZ          = 0x00010000
SPSVCINST_ASSOCSERVICE= 0x00000002
FASTRPC = 1
TFTP = 2
; localizable
QUALCOMM = "Qualcomm Technologies, Incorporated"                                      
DiskId1 = "Qualcomm Combined Subsystem Driver Installation Disk"
ADSP.DeviceDesc = "Qualcomm Audio DSP Subsystem Device"
AMSS.DeviceDesc = "Qualcomm Advanced Modem Subsystem Device"
AMSSCXThermal.DeviceDesc = "Qualcomm Advanced Modem Subsystem CX Limiting Thermal Device"
TEST.DeviceDesc = "Qualcomm Combined Subsystem Driver Test Device"
SERVICEMANAGER.DeviceDesc= "Qualcomm Service Manager Device"
SCSS.DeviceDesc = "Qualcomm Sensors Subsystem Bus Device"
SSDD.DeviceDesc = "Qualcomm Subsystem Dependency Device"
SUBSYS.SVCDESC = "Qualcomm(R) Data Device"
CDSP.DeviceDesc = "Qualcomm Compute DSP Subsystem Device"
;Below values Device Interfaces needed by different SUBSYS device, defined in QCDK header files pilapi.h, tftp_api.h, and fastrpc_api.h
GUID_DEVINTERFACE_PIL_TZ = "{E2EB84C1-4068-4994-A48F-F3AC0D38DC29}"
GUID_TFTP_INTERFACE = "{107A41BF-EB76-4FB8-A567-E7EF56968BBE}"
GUID_DEVINTERFACE_FASTRPC = "{E022FF1A-C06C-42D8-94FE-90D876FC0B75}"
