;*******************************************************************
; uLan Communication - low level and link driver
;
; ul_wdm.inf	- uLan Window Mode Driver for Win2000/98  
;
; (C) Copyright 2001 by Pavel Pisa 
;
; The uLan driver is distributed under the Gnu General Public Licence. 
; See file COPYING for details.
;
;*******************************************************************/

[version]
Signature="$CHICAGO$"
Class=Unknown
;Class=Ports
;uLan WDM Driver GUID
;ClassGUID={3EF4F782-AF00-11d5-87B2-00D0595444D7}
;// {3EF4F782-AF00-11d5-87B2-00D0595444D7}
;DEFINE_GUID(GUID_ULAN_WDM_DRIVER1, 
; 0x3ef4f782, 0xaf00, 0x11d5, 0x87, 0xb2, 0x0, 0xd0, 0x59, 0x54, 0x44, 0xd7);
Provider=%PROVIDER%
DriverVer=09/22/2001, 0.6.0

[DestinationDirs]
; 12 Win2k = %windir%\system32\drivers 
; 12 Win98 = %windir%\system\IoSubsys
DefaultDestDir=12

[ControlFlags]
ExcludeFromSelect=PCI\VEN_1415&DEV_9501
;ExcludeFromSelect=PCI\VEN_1415&DEV_9511
;ExcludeFromSelect=PCI\VEN_1415&DEV_9521
ExcludeFromSelect=PCI\VEN_1415&DEV_950A
;ExcludeFromSelect=PCI\VEN_1415&DEV_950B
;ExcludeFromSelect=PCI\VEN_1415&DEV_8401
;ExcludeFromSelect=PCI\VEN_1415&DEV_9512
;ExcludeFromSelect=PCI\VEN_1415&DEV_9510


; Drivers
;----------------------------------------------------------

[Manufacturer]
%Std%=Std
%OxfordSemi%=OxfordSemi
%PiKRON%=PiKRON


[Std]
%*PNP0500.DeviceDesc% = uLanComPort, *PNP0500  ; Communications Port
%*PNP0501.DeviceDesc% = uLanComPort, *PNP0501  ; Communications Port

[OxfordSemi]
%PCI\VEN_1415&DEV_9501.DeviceDesc% = PCI_9501,	PCI\VEN_1415&DEV_9501
%PCI\VEN_1415&DEV_950A.DeviceDesc% = PCI_950A,	PCI\VEN_1415&DEV_950A

[PiKRON]
%uLan82C510.DeviceDesc% = uLan82C510Port, ISA_82C510_SIO1  ; ISA uLan CARD


; COM sections
;----------------------------------------------------------

[uLanComPort]
CopyFiles=uLanComPort.Copy
AddReg=uLanComPort.AddReg
LogConfig=c14,c1a,c23,c2a,c34,c3a,c43,c4a,caa

[uLanComPort.Copy]
ul_wdm.sys
;serialui.dll

[uLanComPort.AddReg]
;HKR,,DevLoader,,*ntkern
HKR,,PortDriver,,ul_wdm.sys
;HKR,,ConfigDialog,,serialui.dll
;HKR,,DCB,3,1C,00,00,00, 80,25,00,00, 11,33,00,00, 00,00, 0a,00, 0a,00, 08, 00, 00, 11, 13, 00, 00, 00


[uLanComPort.Services]
AddService = ul_wdm,%SPSVCINST_ASSOCSERVICE%,uL_WDM_Service_Inst

[uL_WDM_Service_Inst]
DisplayName   = %SERVICE_DESCSTRING%
ServiceType   = %SERVICE_KERNEL_DRIVER%
StartType     = %SERVICE_MANUAL_START%
ErrorControl  = %SERVICE_ERROR_NORMAL%
ServiceBinary = %12%\ul_wdm.sys
;LoadOrderGroup = Extended base


[*pnp0500.det]
AddReg=Ports.AddReg,DevMap.AddReg

; The following sections are COM port resource configs.
; Section name format means:
; Char 1 = c (COM port)
; Char 2 = I/O config: 1 (3f8), 2 (2f8), 3 (3e8), 4 (2e8), a (any)
; Char 3 = IRQ config: #, a (any)

[c14]                   ; COM1,IRQ4
ConfigPriority=HARDRECONFIG
IOConfig=3f8-3ff(3ff::)
IRQConfig=S:4

[c1a]                   ; COM1, any IRQ
ConfigPriority=HARDRECONFIG
IOConfig=3f8-3ff(3ff::)
IRQConfig=S:3,4,5,7,9,10,11,12,14,15

[c23]                   ; COM2, IRQ3
ConfigPriority=HARDRECONFIG
IOConfig=2f8-2ff(3ff::)
IRQConfig=S:3

[c2a]                   ; COM2, any IRQ
ConfigPriority=HARDRECONFIG
IOConfig=2f8-2ff(3ff::)
IRQConfig=S:3,4,5,7,9,10,11,12,14,15

[c34]                   ; COM3, IRQ4
ConfigPriority=HARDRECONFIG
IOConfig=3e8-3ef(3ff::)
IRQConfig=S:4

[c3a]                   ; COM3, any IRQ
ConfigPriority=HARDRECONFIG
IOConfig=3e8-3ef(3ff::)
IRQConfig=S:3,4,5,7,9,10,11,12,14,15

[c43]                   ; COM4, IRQ3
ConfigPriority=HARDRECONFIG
IOConfig=2e8-2ef(3ff::)
IRQConfig=S:3,5

[c4a]                   ; COM4, any IRQ
ConfigPriority=HARDRECONFIG
IOConfig=2e8-2ef(3ff::)
IRQConfig=S:3,4,5,7,9,10,11,12,14,15

[caa]                   ; Any base, any IRQ
ConfigPriority=HARDRECONFIG
IOConfig=8@100-ffff%fff8(3ff::)
IRQConfig=S:3,4,5,7,9,10,11,12,14,15

; End COM port LogConfig sections

[uLanComPort.PosDup]
; Note: don't include *PNP051x
*PNP0500,*PNP0501


; "NoDrv" section: We do not yet support these port devices.
;----------------------------------------------------------
[NoDrv]


;Install OX16PCI954 quad UART
;----------------------------------------------------------

[PCI_9501]
DriverVer=09/22/2001, 0.6.0
CopyFiles=uLanComPort.Copy
;CopyFiles=Drv.Copy, Inf.copy
AddReg=Drv.Reg
DelReg=DriverVer.DelReg
AddReg=DriverVer.AddReg

[PCI_9501.HW]
AddReg=PCI_9501.HW.AddReg

[PCI_9501.HW.AddReg]
HKR,,OxfordFlags,1,01,95,00,00

[PCI_9501.NT]
CopyFiles=Drv.NT.Copy, dll.NT.Copy
DelReg=DriverVer.DelReg
AddReg=DriverVer.AddReg

[PCI_9501.NT.HW]
AddReg=PCI_9501.NT.HW.AddReg

[PCI_9501.NT.HW.AddReg]
HKR,,"OxsemiDeviceType", 	0x00010001,	0x95010000

[PCI_9501.NT.Services]
AddService = ul_wdm,%SPSVCINST_ASSOCSERVICE%,uL_WDM_Service_Inst
;AddService = oxmf, 0x00000002, oxmf_Service_Inst


;Install OX16PCI954 dual UART
;----------------------------------------------------------

[PCI_950A]
DriverVer=09/22/2001, 0.6.0
CopyFiles=uLanComPort.Copy
;CopyFiles=Drv.Copy, Inf.copy
AddReg=Drv.Reg
DelReg=DriverVer.DelReg
AddReg=DriverVer.AddReg

[PCI_950A.HW]
AddReg=PCI_950A.HW.AddReg

[PCI_950A.HW.AddReg]
HKR,, "OxsemiPortCount", 	0x00010001,	2
HKR,,OxfordFlags,1,01,95,00,00

[PCI_950A.NT]
CopyFiles=uLanComPort.Copy
;CopyFiles=Drv.NT.Copy, dll.NT.Copy
DelReg=DriverVer.DelReg
AddReg=DriverVer.AddReg

[PCI_950A.NT.HW]
AddReg=PCI_950A.NT.HW.AddReg
[PCI_950A.NT.HW.AddReg]
HKR,, "OxsemiDeviceType", 	0x00010001,	0x95010000
HKR,, "OxsemiPortCount", 	0x00010001,	2

[PCI_950A.NT.Services]
AddService = ul_wdm,%SPSVCINST_ASSOCSERVICE%,uL_WDM_Service_Inst
;AddService = oxmf, 0x00000002, oxmf_Service_Inst


; ISA uLan 82C510 card sections
;----------------------------------------------------------
[uLan82C510Port]
CopyFiles=uLanComPort.Copy
AddReg=uLanComPort.AddReg
LogConfig=u45,u35,uaa

[uLan82C510Port.Services]
AddService = ul_wdm,%SPSVCINST_ASSOCSERVICE%,uL_WDM_Service_Inst

; The following sections are COM port resource configs.
; Section name format means:
; Char 1 = u (uLan card port)
; Char 2 = I/O config: 1 (3f8), 2 (2f8), 3 (3e8), 4 (2e8), a (any)
; Char 3 = IRQ config: #, a (any)

[u45]                   ; COM4, IRQ5
ConfigPriority=HARDRECONFIG
IOConfig=2e8-2ef(3ff::)
IRQConfig=S:5

[u35]                   ; COM3, IRQ5
ConfigPriority=HARDRECONFIG
IOConfig=3e8-3ef(3ff::)
IRQConfig=S:5

[uaa]                   ; Any base, any IRQ
ConfigPriority=HARDRECONFIG
IOConfig=8@100-ffff%fff8(3ff::)
IRQConfig=S:3,4,5,7,9,10,11,12,14,15


; User readable strings
;----------------------------------------------------------

[Strings]
PROVIDER="Pavel Pisa under GNU GPL license"
Std = "(Standard serial ports)"
OxfordSemi="(Enhanced ports OX16C954)"
PiKRON="PiKRON Ltd."

*PNP0500.DeviceDesc = "Serial Communication Port - uLan 500"
*PNP0501.DeviceDesc = "Serial Communication Port - uLan 501"
uLan82C510.DeviceDesc= "Serial ISA Card with 82C510 - uLan"

PCI\VEN_1415&DEV_9501.DeviceDesc="OX16PCI954 PCI UARTs - uLan Mode"
PCI\VEN_1415&DEV_9511.DeviceDesc="OX16PCI954 PCI bridge"
PCI\VEN_1415&DEV_9512.DeviceDesc="OX16PCI954 32-bit PCI bridge"
PCI\VEN_1415&DEV_950A.DeviceDesc="OX16PCI954 Dual PCI UART - uLan Mode"
PCI\VEN_1415&DEV_950B.DeviceDesc="OXCB950 Cardbus UART"
PCI\VEN_1415&DEV_8401.DeviceDesc="OX9162 PCI bridge"
PCI\VEN_1415&DEV_9521.DeviceDesc="OX16PCI952 PCI UARTs"

PCI\VEN_1415&DEV_9500.DeviceDesc="PCI Function"
PCI\VEN_1415&DEV_9510.DeviceDesc="PCI Function"

SERVICE_DESCSTRING     = "uL_WDM - uLan WDM Driver"
SPSVCINST_ASSOCSERVICE = 0x00000002
SERVICE_KERNEL_DRIVER  = 1
SERVICE_MANUAL_START   = 3
SERVICE_ERROR_NORMAL   = 1
