;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; File:               SurfaceHIDFriendlyNameExtension.inf
;
; Description:        Provides friendly names for HID devices.
;
; Copyright (C) 2018 Microsoft Corporation.  All Rights Reserved.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

[Version]
Signature="$Windows NT$"
Class=Extension
ClassGuid={e2f84ce7-8efa-411c-aa69-97454ca4cb57} 
Provider=%ManufacturerName%
CatalogFile=SurfaceHIDFriendlyNames.cat
ExtensionId={9000149c-5878-4b1d-9cff-fbe218d311b2} 
DriverVer = 06/01/2022,2.23.137.0
PnPLockDown=1

[Manufacturer]
%ManufacturerName%=Extension,NTamd64

[Extension.NTamd64]
; Generic support (friendly name only) no service added, no functionality added, just a name
; Blades TLCs
%DeviceDesc% = MouseDesc, HID\VID_045E&UP:0001_U:0002 
%DeviceDesc% = KeyboardDesc, HID\VID_045E&UP:0001_U:0006
%DeviceDesc% = SystemControllerDesc, HID\VID_045E&UP:0001_U:0080
%DeviceDesc% = ConsumerControlDesc, HID\VID_045E&UP:000C_U:0001
%DeviceDesc% = TouchpadDesc, HID\VID_045E&UP:000D_U:0005
%DeviceDesc% = DigitizerDeviceConfigDesc, HID\VID_045E&UP:000D_U:000E
%DeviceDesc% = HIDColorDesc, HID\VID_045E&UP:FF05_U:0001
%DeviceDesc% = HIDAccessoryDesc, HID\VID_045E&UP:FF05_U:0002
%DeviceDesc% = HIDUSPDesc, HID\VID_045E&UP:FF05_U:0004
%DeviceDesc% = HIDUtilDesc, HID\VID_045E&UP:FF05_U:0050

; Surface Navigation (Pens, Dials) TLCs
%DeviceDesc% = SurfaceNavDesc, HID\VID_045E&UP:FF07_U:0001
%DeviceDesc% = PenIdDesc, HID\VID_045E&UP:FF0F_U:0051
%DeviceDesc% = PenBluetoothOobCouplingDesc, HID\VID_045E&UP:FFF4_U:000A

; Surface Dock TLCs
%DeviceDesc% = DockUtilDesc, HID\VID_045E&UP:FF08_U:0050

; Surface Integration FW Update TLCs
%DeviceDesc% = SIDFwUpdateDesc, HID\VID_045E&UP:FF0B_U:000B

; Digitizer TLCs
%DeviceDesc% = DigitizerUtilDesc, HID\VID_045E&UP:FF0F_U:0050
%DeviceDesc% = InkDesc, HID\VID_045E&UP:FF0F_U:0100
%DeviceDesc% = ColorProfileDesc, HID\VID_045E&UP:FF0F_U:0200
%DeviceDesc% = TouchUtilityDesc, HID\VID_045E&UP:FFFF_U:0001

; Surface Hub 2S SMC
DeviceDesc = HubSmcGenDesc, HID\VID_045E&UP:FF0A_U:0010
DeviceDesc = HubSmcCfuDesc, HID\VID_045E&UP:FF0A_U:0011
DeviceDesc = HubSmcScpDesc, HID\VID_045E&UP:FF0A_U:0012
DeviceDesc = HubSmcGenDesc, HID\VID_045E&UP:FF0A_U:0013

; Surface Hub 2S Audio
DeviceDesc = HubAudioGenDesc, HID\VID_045E&UP:FF0A_U:0030
DeviceDesc = HubAudioCfuDesc, HID\VID_045E&UP:FF0A_U:0031
DeviceDesc = HubAudioComDesc, HID\VID_045E&UP:FF0A_U:0032

; Surface Hub 2S Touch
DeviceDesc = HubTouchPen, HID\VID_045E&UP:000D_U:0002
DeviceDesc = HubTouchScreen, HID\VID_045E&UP:000D_U:0004
DeviceDesc = HubTouchGenDesc, HID\VID_045E&UP:FF00_U:000E
DeviceDesc = HubTouchGenDesc, HID\VID_045E&UP:FF00_U:0001
DeviceDesc = HubTouchComDesc, HID\VID_045E&UP:FF0B_U:000B
DeviceDesc = HubTouchCfuDesc, HID\VID_045E&UP:FF0A_U:0039

; Surface Hub 2S Touchback
DeviceDesc = HubTouchbackMouseDesc, HID\VID_2465&UP:FF00_U:0001
DeviceDesc = HubTouchbackKeyDesc, HID\VID_2465&UP:FF01_U:0001
DeviceDesc = HubTouchbackComDesc, HID\VID_2465&UP:FF02_U:0001
DeviceDesc = HubTouchbackTouchDesc, HID\VID_2465&UP:FF03_U:0001
DeviceDesc = HubTouchbackPenDesc, HID\VID_2465&UP:FF04_U:0001
DeviceDesc = HubTouchbackPenDesc, HID\VID_2465&UP:FF04_U:0002
DeviceDesc = HubTouchbackPenDesc, HID\VID_2465&UP:FF04_U:0003

; Surface Hub 2S Camera
DeviceDesc = HubCameraGenDesc, HID\VID_045E&UP:FF07_U:0210
DeviceDesc = HubCameraComDesc, HID\VID_045E&UP:FF07_U:0212
DeviceDesc = HubCameraGenDesc, HID\VID_045E&UP:FF07_U:020F

; Surface Hub 2S Camera Telemetry
DeviceDesc = HubCameraTelemetryDesc, HID\VID_045E&UP:FF0A_U:0040

; Surface Hub 2S Pen
DeviceDesc = HubPenGenDesc, HID\VID_045E&UP:FF0B_U:0100

; Surface Button Driver
DeviceDesc = ButtonVhfDesc, VHF\VID_045E&PID_F001
DeviceDesc = ButtonVhfDesc, VHF\VID_045E&PID_F002
DeviceDesc = ButtonConvertedDesc, ButtonConverter\ConvertedDevice

; Surface Laptop Go 2 Touch FW Update
DeviceDesc = LaptopGoTouchFwUpdateDesc, HID\VID_1FD2&UP:FF00_U:00FF

; Microsoft Surface USB Link
DeviceDesc = TeamsAspDesc, HID\VID_045E&UP:FF99_U:0001
DeviceDesc = MicrosoftAccessoryCfu, HID\VID_045E&UP:FF0B_U:0104
DeviceDesc = MicrosoftAccessoryConfigDesc, HID\VID_045E&UP:FF00_U:FF3B
DeviceDesc = MicrosoftAccessoryConfigDesc, HID\VID_045E&UP:FF00_U:0212

[MouseDesc]
[MouseDesc.HW]
AddReg = MouseDesc_AddReg
[MouseDesc_AddReg]
HKR,,FriendlyName,,"Surface HID Mouse"

[KeyboardDesc]
[KeyboardDesc.HW]
AddReg = KeyboardDesc_AddReg
[KeyboardDesc_AddReg]
HKR,,FriendlyName,,"Surface HID Keyboard"

[SystemControllerDesc]
[SystemControllerDesc.HW]
AddReg = SystemControllerDesc_AddReg
[SystemControllerDesc_AddReg]
HKR,,FriendlyName,,"Surface HID System Controller"

[ConsumerControlDesc]
[ConsumerControlDesc.HW]
AddReg = ConsumerControlDesc_AddReg
[ConsumerControlDesc_AddReg]
HKR,,FriendlyName,,"Surface HID Consumer Control Device"

[TouchpadDesc]
[TouchpadDesc.HW]
AddReg = TouchpadDesc_AddReg
[TouchpadDesc_AddReg]
HKR,,FriendlyName,,"Surface HID Touchpad"

[DigitizerDeviceConfigDesc]
[DigitizerDeviceConfigDesc.HW]
AddReg = DigitizerDeviceConfigDesc_AddReg
[DigitizerDeviceConfigDesc_AddReg]
HKR,,FriendlyName,,"Surface HID Digitizer Device Configuration"

[HIDColorDesc]
[HIDColorDesc.HW]
AddReg = HIDColorDesc_AddReg
[HIDColorDesc_AddReg]
HKR,,FriendlyName,,"Surface HID Color"

[HIDAccessoryDesc]
[HIDAccessoryDesc.HW]
AddReg = HIDAccessoryDesc_AddReg
[HIDAccessoryDesc_AddReg]
HKR,,FriendlyName,,"Surface HID Accessory"

[HIDUSPDesc]
[HIDUSPDesc.HW]
AddReg = HIDUSPDesc_AddReg
[HIDUSPDesc_AddReg]
HKR,,FriendlyName,,"Surface HID USP Encapsulation"

[HIDUtilDesc]
[HIDUtilDesc.HW]
AddReg = HIDUtilDesc_AddReg
[HIDUtilDesc_AddReg]
HKR,,FriendlyName,,"Surface Component Firmware Update"

[SurfaceNavDesc]
[SurfaceNavDesc.HW]
AddReg = SurfaceNavDesc_AddReg
[SurfaceNavDesc_AddReg]
HKR,,FriendlyName,,"Surface Navigation Accessory"

[PenIdDesc]
[PenIdDesc.HW]
AddReg = PenIdDesc_AddReg
[PenIdDesc_AddReg]
HKR,,FriendlyName,,"Surface HID Pen ID"

[PenBluetoothOobCouplingDesc]
[PenBluetoothOobCouplingDesc.HW]
AddReg = PenBluetoothOobCouplingDesc_AddReg
[PenBluetoothOobCouplingDesc_AddReg]
HKR,,FriendlyName,,"Surface HID Pen Bluetooth OOB Coupling"

[DockUtilDesc]
[DockUtilDesc.HW]
AddReg = DockUtilDesc_AddReg
[DockUtilDesc_AddReg]
HKR,,FriendlyName,,"Surface Dock Component Firmware Update"

[SIDFwUpdateDesc]
[SIDFwUpdateDesc.HW]
AddReg = SIDFwUpdateDesc_AddReg
[SIDFwUpdateDesc_AddReg]
HKR,,FriendlyName,,"Surface Integration Firmware Update"

[DigitizerUtilDesc]
[DigitizerUtilDesc.HW]
AddReg = DigitizerUtilDesc_AddReg
[DigitizerUtilDesc_AddReg]
HKR,,FriendlyName,,"Surface Digitizer Utility"

[InkDesc]
[InkDesc.HW]
AddReg = InkDesc_AddReg
[InkDesc_AddReg]
HKR,,FriendlyName,,"Surface Ink"

[ColorProfileDesc]
[ColorProfileDesc.HW]
AddReg = ColorProfileDesc_AddReg
[ColorProfileDesc_AddReg]
HKR,,FriendlyName,,"Surface Color Profile"

[TouchUtilityDesc]
[TouchUtilityDesc.HW]
AddReg = TouchUtilityDesc_AddReg
[TouchUtilityDesc_AddReg]
HKR,,FriendlyName,,"Surface Touch Utility"

[HubSmcGenDesc]
[HubSmcGenDesc.HW]
AddReg = HubSmcGenDesc_AddReg
[HubSmcGenDesc_AddReg]
HKR,,FriendlyName,,"Surface SMC Generic Device"

[HubSmcCfuDesc]
[HubSmcCfuDesc.HW]
AddReg = HubSmcCfuDesc_AddReg
[HubSmcCfuDesc_AddReg]
HKR,,FriendlyName,,"Surface SMC Firmware Update"

[HubSmcScpDesc]
[HubSmcScpDesc.HW]
AddReg = HubSmcScpDesc_AddReg
[HubSmcScpDesc_AddReg]
HKR,,FriendlyName,,"Surface SMC Communications"

[HubAudioGenDesc]
[HubAudioGenDesc.HW]
AddReg = HubAudioGenDesc_AddReg
[HubAudioGenDesc_AddReg]
HKR,,FriendlyName,,"Surface Audio Generic Device"

[HubAudioCfuDesc]
[HubAudioCfuDesc.HW]
AddReg = HubAudioCfuDesc_AddReg
[HubAudioCfuDesc_AddReg]
HKR,,FriendlyName,,"Surface Audio Firmware Update"

[HubAudioComDesc]
[HubAudioComDesc.HW]
AddReg = HubAudioComDesc_AddReg
[HubAudioComDesc_AddReg]
HKR,,FriendlyName,,"Surface Audio Communications"

[HubTouchPen]
[HubTouchPen.HW]
AddReg = HubTouchPen_AddReg
[HubTouchPen_AddReg]
HKR,,FriendlyName,,"Surface Touch Pen Device"

[HubTouchScreen]
[HubTouchScreen.HW]
AddReg = HubTouchScreen_AddReg
[HubTouchScreen_AddReg]
HKR,,FriendlyName,,"Surface Touch Screen Device"

[HubTouchGenDesc]
[HubTouchGenDesc.HW]
AddReg = HubTouchGenDesc_AddReg
[HubTouchGenDesc_AddReg]
HKR,,FriendlyName,,"Surface Touch Generic Device"

[HubTouchCfuDesc]
[HubTouchCfuDesc.HW]
AddReg = HubTouchCfuDesc_AddReg
[HubTouchCfuDesc_AddReg]
HKR,,FriendlyName,,"Surface Touch Firmware Update"

[HubTouchComDesc]
[HubTouchComDesc.HW]
AddReg = HubTouchComDesc_AddReg
[HubTouchComDesc_AddReg]
HKR,,FriendlyName,,"Surface Touch Communications"

[HubTouchbackMouseDesc]
[HubTouchbackMouseDesc.HW]
AddReg = HubTouchbackMouseDesc_AddReg
[HubTouchbackMouseDesc_AddReg]
HKR,,FriendlyName,,"Surface Touchback Mouse"

[HubTouchbackKeyDesc]
[HubTouchbackKeyDesc.HW]
AddReg = HubTouchbackKeyDesc_AddReg
[HubTouchbackKeyDesc_AddReg]
HKR,,FriendlyName,,"Surface Touchback Keyboard"

[HubTouchbackComDesc]
[HubTouchbackComDesc.HW]
AddReg = HubTouchbackComDesc_AddReg
[HubTouchbackComDesc_AddReg]
HKR,,FriendlyName,,"Surface Touchback Communications"

[HubTouchbackTouchDesc]
[HubTouchbackTouchDesc.HW]
AddReg = HubTouchbackTouchDesc_AddReg
[HubTouchbackTouchDesc_AddReg]
HKR,,FriendlyName,,"Surface Touchback Touch"

[HubTouchbackPenDesc]
[HubTouchbackPenDesc.HW]
AddReg = HubTouchbackPenDesc_AddReg
[HubTouchbackPenDesc_AddReg]
HKR,,FriendlyName,,"Surface Touchback Pen"

[HubCameraComDesc]
[HubCameraComDesc.HW]
AddReg = HubCameraComDesc_AddReg
[HubCameraComDesc_AddReg]
HKR,,FriendlyName,,"Surface Camera Communications"

[HubCameraGenDesc]
[HubCameraGenDesc.HW]
AddReg = HubCameraGenDesc_AddReg
[HubCameraGenDesc_AddReg]
HKR,,FriendlyName,,"Surface Camera Generic Device"

[HubCameraTelemetryDesc]
[HubCameraTelemetryDesc.HW]
AddReg = HubCameraTelemetryDesc_AddReg
[HubCameraTelemetryDesc_AddReg]
HKR,,FriendlyName,,"Surface Camera Telemetry Device"

[HubPenGenDesc]
[HubPenGenDesc.HW]
AddReg = HubPenGenDesc_AddReg
[HubPenGenDesc_AddReg]
HKR,,FriendlyName,,"Surface Pen Generic Device"

[ButtonVhfDesc]
[ButtonVhfDesc.HW]
AddReg = ButtonVhfDesc_AddReg
[ButtonVhfDesc_AddReg]
HKR,,FriendlyName,,"Surface Button VHF HID Device"

[ButtonConvertedDesc]
[ButtonConvertedDesc.HW]
AddReg = ButtonConvertedDesc_AddReg
[ButtonConvertedDesc_AddReg]
HKR,,FriendlyName,,"Surface Button Converted Portable Button Device"

[LaptopGoTouchFwUpdateDesc]
[LaptopGoTouchFwUpdateDesc.HW]
AddReg = LaptopGoTouchFwUpdateDesc_AddReg
[LaptopGoTouchFwUpdateDesc_AddReg]
HKR,,FriendlyName,,"Surface Touch Screen Accessory Firmware Update"

[TeamsAspDesc]
[TeamsAspDesc.HW]
AddReg = TeamsAspDesc_AddReg
[TeamsAspDesc_AddReg]
HKR,,FriendlyName,,"Microsoft Teams ASP"

[MicrosoftAccessoryCfu]
[MicrosoftAccessoryCfu.HW]
AddReg = MicrosoftAccessoryCfu_AddReg
[MicrosoftAccessoryCfu_AddReg]
HKR,,FriendlyName,,"Microsoft Accessory Firmware Update"

[MicrosoftAccessoryConfigDesc]
[MicrosoftAccessoryConfigDesc.HW]
AddReg = MicrosoftAccessoryConfigDesc_AddReg
[MicrosoftAccessoryConfigDesc_AddReg]
HKR,,FriendlyName,,"Microsoft Accessory Configuration"

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

[Strings]
ManufacturerName="Surface"
DeviceDesc="Surface Hid Device"
