Tech Support > Microsoft Windows > Drivers > Filter driver question
Filter driver question
Posted by Kid on May 4th, 2008


Hi

Can Vista use filter driver , any framework change ?

Does MSDN Library tell us much about filter driver ?

I have question about ComPort Inf section of msports.inf

[ComPort.NT.HW]
AddReg=ComPort.NT.HW.AddReg

[ComPort.NT.HW.AddReg]
HKR,,"UpperFilters",0x00010000,"serenum"


What does Inf HW section use for, and where will it create registry key ?

Thank you .




Posted by Tim Roberts on May 4th, 2008


Kid <Kid@discussions.microsoft.com> wrote:
Do you mean WDM filter drivers? If so, then there is no change.

The WDK contains several good samples. The concept is just not that
complicated.

Devices use keys in (at least) three different parts of the registry: the
Services section, the software key in Control\Classes, and the hardware key
in Enum. The UpperFilters value happens to lives in the hardware key, and
the .NT.HW suffix is the way that you store a value there.
--
Tim Roberts, timr@probo.com
Providenza & Boekelheide, Inc.

Posted by RSDN on May 7th, 2008


Hi

I am working on a filter driver for a PCI-PCI bridge device. This driver
needs to update one of the PCI function registers if not configured
properly. The filter driver is based on the KMDF toaster filter driver. I
have come across the following issue when installing the driver. The inf
file was based on the agp440.inf. It works fine. The issue is when I was
cleaning up references to agp440, it complains about the service name in the
[TI_XIO2000_Install.Services]section. The error is Error 1078, The name is
already in use either a service name or service display name. I have
inserted the inf file for reference

I would appreciate any comments and help. I am pretty sure I am overlooking
something.

Regards
Sumithra

[Version]
Signature="$WINDOWS NT$"
Class=System
ClassGuid={4D36E97D-E325-11CE-BFC1-08002BE10318}
Provider=%TI%
LayoutFile=layout.inf
DriverVer=05/01/2008,1.00.0000

[DestinationDirs]
DefaultDestDir = 12 ; DIRID_DRIVERS

[Manufacturer]
%TI_MFG%=TI_XIO2000

[TI_XIO2000_Filter_Reg]
HKR,,"UpperFilters", 0x00010000,"devupper"
HKLM,"System\CurrentControlSet\Services\DevUpper\P arameters",
"CacheLineSize", 0x10001, 0x20

[pci_ServiceInstallSection]
DisplayName = %pci_svcdesc%
ServiceType = %SERVICE_KERNEL_DRIVER%
StartType = %SERVICE_BOOT_START%
ErrorControl = %SERVICE_ERROR_NORMAL%
ServiceBinary = %12%\pci.sys
LoadOrderGroup = "Boot Bus Extender"


[TI_XIO2000]
%PCI\VEN_104C&DEV_8231.DeviceDesc%=TI_XIO2000_Inst all,PCI\VEN_104C&DEV_8231


[TI_XIO2000_Install]
CopyFiles=@devupper.SYS

[TI_XIO2000_Install.HW]
AddReg = TI_XIO2000_Filter_Reg

[TI_XIO2000_Install.Services]
AddService = pci, %SPSVCINST_ASSOCSERVICE%, pci_ServiceInstallSection
AddService = agp440,0,TI_XIO2000_ServiceInstallSection
;AddService = ti_xio2000,,TI_XIO2000_ServiceInstallSection


[TI_XIO2000_ServiceInstallSection]
DisplayName = %TI_XIO2000_svcdesc%
ServiceType = %SERVICE_KERNEL_DRIVER%
StartType = %SERVICE_DEMAND_START%
ErrorControl = %SERVICE_ERROR_NORMAL%
ServiceBinary = %12%\devupper.sys
LoadOrderGroup = PnP Filter

;--- MyFilter Coinstaller installation ------
;
[DestinationDirs]
MyFilter_CoInstaller_CopyFiles = 11

[MyFilter.NT.CoInstallers]
AddReg=MyFilter_CoInstaller_AddReg
CopyFiles=MyFilter_CoInstaller_CopyFiles

[MyFilter_CoInstaller_AddReg]
HKR,,CoInstallers32,0x00010000, "wdfcoinstaller01005.dll,WdfCoInstaller"

[MyFilter_CoInstaller_CopyFiles]
wdfcoinstaller01005.dll

[SourceDisksFiles]
wdfcoinstaller01005.dll=1 ; make sure the number matches with
SourceDisksNames

[MyFilter.NT.Wdf]
KmdfService = DevUpper, DevUpper_wdfsect

[DevUpper_wdfsect]
KmdfLibraryVersion = 1.5



; =================== STRINGS and CONSTANTS ========================

[Strings]
TI_MFG = "Texas Instruments"
MSFT = "Microsoft"
TI = "Texas Instruments"
PCI\VEN_104C&DEV_8231.DeviceDesc = "XIO2000 PCI-PCI Bridge plus filter"


;service descriptions
TI_XIO2000_svcdesc = "XIO2000 PCI-PCI Bridge Filter"
pci_svcdesc = "PCI Bus Driver"


;*******************************************
;Handy macro substitutions (non-localizable)
SPSVCINST_ASSOCSERVICE = 0x00000002
SERVICE_KERNEL_DRIVER = 1
SERVICE_BOOT_START = 0
SERVICE_DEMAND_START = 3
SERVICE_ERROR_NORMAL = 1




Posted by Doron Holan [MSFT] on May 8th, 2008


do not install pci.sys as a driver, it is guaranteed to alread be installed.
this section should go

and then change this
to this
and get rid of this (unless you need agp440 in the stack, which i doubt)
d

--
Please do not send e-mail directly to this alias. this alias is for
newsgroup purposes only.
This posting is provided "AS IS" with no warranties, and confers no rights.


"RSDN" <sumithrar@aavatech.com> wrote in message
news:%23T$kYQJsIHA.1772@TK2MSFTNGP03.phx.gbl...

Posted by RSDN on May 8th, 2008


Doron

This generates error 0xe0000217, a service installation section in this inf
is invalid.

Regards
Sumithra
"Doron Holan [MSFT]" <doronh@online.microsoft.com> wrote in message
news:ueUX0NKsIHA.524@TK2MSFTNGP05.phx.gbl...

Posted by Doron Holan [MSFT] on May 8th, 2008


turn on setupapi debugging and see the exact error. there is probably a
dangling reference to a service section in the INF. also run your INF
through chkinf

d

--
Please do not send e-mail directly to this alias. this alias is for
newsgroup purposes only.
This posting is provided "AS IS" with no warranties, and confers no rights.


"RSDN" <sumithrar@aavatech.com> wrote in message
news:uD%23o26LsIHA.5580@TK2MSFTNGP04.phx.gbl...


Similar Posts