;=============================================================================
;
; Copyright (c) 2024, Intel Corporation.
;
; This Intel(R) Smart Sound Technology (Intel(R) SST) ("Software") is furnished
; under license and may only be used or copied in accordance with the terms of
; that license. No license, express or implied, by estoppel or otherwise,
; to any intellectual property rights is granted by this document.
; The Software is subject to change without notice, and should not be construed
; as a commitment by Intel Corporation to market, license, sell or support any
; product or technology. Unless otherwise provided for in the license under
; which this Software is provided, the Software is provided AS IS, with no
; warranties of any kind, express or implied. Except as expressly permitted by
; the Software license, neither Intel Corporation nor its suppliers assumes any
; responsibility or liability for any errors or inaccuracies that may appear
; herein. Except as expressly permitted by the Software license, no part of
; the Software may be reproduced, stored in a retrieval system, transmitted in
; any form, or distributed by any means without the express written consent of
; Intel Corporation.
;
;=============================================================================
[Version]
Signature="$WINDOWS NT$"
Class=MEDIA
ClassGuid={4d36e96c-e325-11ce-bfc1-08002be10318}
Provider=Intel(R) Corporation
CatalogFile=IntcBtLE.cat
DriverVer = 02/12/2025,20.40.11880.0
PnpLockdown=1
[DestinationDirs]
DefaultDestDir = 13
[SourceDisksNames]
1 = %DiskName%,,,""
[SourceDisksFiles]
IntcBtLE.sys  = 1,,
;

[SignatureAttributes]
IntcBtLE.sys=SignatureAttributes.DRM
[SignatureAttributes.DRM]
DRMLevel=1300
;*****************************************
; Install Section
;*****************************************
[ControlFlags]
ExcludeFromSelect = {B2EA88A9-AEF4-4E1F-BDB9-7DF56CC896F9}\Render
ExcludeFromSelect = {B2EA88A9-AEF4-4E1F-BDB9-7DF56CC896F9}\Capture
[Manufacturer]
%ManufacturerName%=Standard,NTamd64.10.0...22621
[Standard.NTamd64.10.0...22621]
%IntcBtLE.DeviceDesc%=IntcBtLE_Device, INTELAUDIO\DIF_0001&UIF_0000&CTLR_DEV_7E28&LINKTYPE_03&DEVTYPE_03&VEN_8086&DEV_AE33
%IntcBtLE.DeviceDesc%=IntcBtLE_Device, INTELAUDIO\DIF_0001&UIF_0000&CTLR_DEV_7F50&LINKTYPE_03&DEVTYPE_03&VEN_8086&DEV_AE33
%IntcBtLE.DeviceDesc%=IntcBtLE_Device, INTELAUDIO\DIF_0001&UIF_0000&CTLR_DEV_7728&LINKTYPE_03&DEVTYPE_03&VEN_8086&DEV_AE33
; Below ids are for HDC compatibility purposes - provide matching between extensions and base driver in HDC
%IntcBtLE.DeviceDesc%=IntcBtLE_Device, INTELAUDIO\CTLR_DEV_7E28&LINKTYPE_03&DEVTYPE_03&VEN_8086&DEV_AE33
%IntcBtLE.DeviceDesc%=IntcBtLE_Device, INTELAUDIO\CTLR_DEV_7F50&LINKTYPE_03&DEVTYPE_03&VEN_8086&DEV_AE33
%IntcBtLE.DeviceDesc%=IntcBtLE_Device, INTELAUDIO\CTLR_DEV_7728&LINKTYPE_03&DEVTYPE_03&VEN_8086&DEV_AE33
%IntcBtLE.DeviceDesc%=IntcBtLE_Device, INTELAUDIO\CTLR_DEV_EXT_7E28&LINKTYPE_03&DEVTYPE_03&VEN_8086
%IntcBtLE.DeviceDesc%=IntcBtLE_Device, INTELAUDIO\CTLR_DEV_EXT_7F50&LINKTYPE_03&DEVTYPE_03&VEN_8086
%IntcBtLE.DeviceDesc%=IntcBtLE_Device, INTELAUDIO\CTLR_DEV_EXT_7728&LINKTYPE_03&DEVTYPE_03&VEN_8086
;child devices for render and capture circuits
%IntcBtLE.DeviceDesc%=IntcBtLE_Child_Device, {B2EA88A9-AEF4-4E1F-BDB9-7DF56CC896F9}\Render
%IntcBtLE.DeviceDesc%=IntcBtLE_Child_Device, {B2EA88A9-AEF4-4E1F-BDB9-7DF56CC896F9}\Capture
[IntcBtLE_Device.NT]
CopyFiles=IntcBtLE_Device.NT.Copy
[IntcBtLE_Device.NT.HW]
AddReg = IntcDirectedPowerHW.AddReg
[IntcBtLE_Child_Device.NT]
CopyFiles=IntcBtLE_Device.NT.Copy
[IntcBtLE_Child_Device.NT.HW]
AddReg = IntcDirectedPowerHW.AddReg
[IntcDirectedPowerHW.AddReg]
HKR,"WDF","WdfDirectedPowerTransitionEnable",0x00010001,1
[IntcBtLE_Device.NT.Copy]
IntcBtLE.sys
;-------------- Service installation
[IntcBtLE_Device.NT.Services]
AddService = IntcBtLE,%SPSVCINST_ASSOCSERVICE%, IntcBtLE_Service_Inst
[IntcBtLE_Child_Device.NT.Services]
AddService = , %SPSVCINST_ASSOCSERVICE%
; -------------- IntcBtLE driver install sections
[IntcBtLE_Service_Inst]
DisplayName    = %IntcBtLE.SVCDESC%
ServiceType    = 1               ; SERVICE_KERNEL_DRIVER
StartType      = 3               ; SERVICE_DEMAND_START
ErrorControl   = 1               ; SERVICE_ERROR_NORMAL
ServiceBinary  = %13%\IntcBtLE.sys
;
;--- IntcBtLE_Device Coinstaller installation ------
;
[IntcBtLE_Device.NT.Wdf]
KmdfService =  IntcBtLE, IntcBtLE_wdfsect
[IntcBtLE_wdfsect]
KmdfLibraryVersion = 1.31
; render interfaces: headphones
[IntcBtLE_Device.I.Headphones]
AddReg=IntcBtLE_Device.I.Headphones.AddReg
[IntcBtLE_Device.I.Headphones.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%IntcBtLE_Device.Headphones.szPname%
; The following lines opt-in to pull mode.
HKR,EP\0,%PKEY_AudioEndpoint_Association%,,%KSNODETYPE_ANY%
HKR,EP\0,%PKEY_AudioEndpoint_Supports_EventDriven_Mode%,0x00010001,0x1
; capture interfaces: microphone
[IntcBtLE_Device.I.Microphone]
AddReg=IntcBtLE_Device.I.Microphone.AddReg
[IntcBtLE_Device.I.Microphone.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%IntcBtLE_Device.Microphone.szPname%
; The following lines opt-in to pull mode.
HKR,EP\0,%PKEY_AudioEndpoint_Association%,,%KSNODETYPE_ANY%
HKR,EP\0,%PKEY_AudioEndpoint_Supports_EventDriven_Mode%,0x00010001,0x1
; PnP add interface directives for dynamic enumerated audio endpoints.
[IntcBtLE_Child_Device.NT.Interfaces]
; Interfaces for render endpoint. capture is used for loopback.
AddInterface=%KSCATEGORY_AUDIO%,    %KSNAME_Headphones%, IntcBtLE_Device.I.Headphones
AddInterface=%KSCATEGORY_RENDER%,   %KSNAME_Headphones%, IntcBtLE_Device.I.Headphones
AddInterface=%KSCATEGORY_REALTIME%, %KSNAME_Headphones%, IntcBtLE_Device.I.Headphones
AddInterface=%KSCATEGORY_CAPTURE%,  %KSNAME_Headphones%, IntcBtLE_Device.I.Headphones
; Interfaces for mic capture endpoint.
AddInterface=%KSCATEGORY_AUDIO%,    %KSNAME_Microphone%, IntcBtLE_Device.I.Microphone
AddInterface=%KSCATEGORY_CAPTURE%,  %KSNAME_Microphone%, IntcBtLE_Device.I.Microphone
AddInterface=%KSCATEGORY_REALTIME%, %KSNAME_Microphone%, IntcBtLE_Device.I.Microphone
[Strings]
SPSVCINST_ASSOCSERVICE= 0x00000002
ManufacturerName="Intel® Corporation"
DiskName = "Intel® Smart Sound Technology for Bluetooth® LE Audio. Installation Disk"
IntcBtLE.DeviceDesc = "Intel® Smart Sound Technology for Bluetooth® LE Audio"
IntcBtLE.SVCDESC = "Intel® Smart Sound Technology for Bluetooth® LE Audio"
KSNAME_Headphones="Headphones0"
KSNAME_Microphone="Microphone0"
Proxy.CLSID         = "{17CCA71B-ECD7-11D0-B908-00A0C9223196}"
KSCATEGORY_AUDIO    = "{6994AD04-93EF-11D0-A3CC-00A0C9223196}"
KSCATEGORY_RENDER   = "{65E8773E-8F56-11D0-A3B9-00A0C9223196}"
KSCATEGORY_CAPTURE  = "{65E8773D-8F56-11D0-A3B9-00A0C9223196}"
KSCATEGORY_REALTIME = "{EB115FFC-10C8-4964-831D-6DCB02E6F23F}"
KSNODETYPE_ANY      = "{00000000-0000-0000-0000-000000000000}"
PKEY_AudioEndpoint_ControlPanelPageProvider  = "{1DA5D803-D492-4EDD-8C23-E0C0FFEE7F0E},1"
PKEY_AudioEndpoint_Association               = "{1DA5D803-D492-4EDD-8C23-E0C0FFEE7F0E},2"
PKEY_AudioEndpoint_Supports_EventDriven_Mode = "{1DA5D803-D492-4EDD-8C23-E0C0FFEE7F0E},7"
PKEY_AudioEndpoint_Default_VolumeInDb        = "{1DA5D803-D492-4EDD-8C23-E0C0FFEE7F0E},9"
;friendly names
IntcBtLE_Device.Headphones.szPname="BT LE Headphones"
IntcBtLE_Device.Microphone.szPname="BT LE Microphone"
