From 1fb0165be19bdd2fde62900f5e917fadc4135692 Mon Sep 17 00:00:00 2001 From: stansmith Date: Tue, 16 Dec 2008 21:28:27 +0000 Subject: [PATCH] [WinVerbs.mthca] auto load WinVerbs+WinMad filter drivers when loading ConnectX HCA driver Required additional files to be present in folder for correct install: winverbs.sys winverbs.dll winverbsd.dll winmad.sys winmad.dll winmadd.dll WdfCoInstaller01007.dll git-svn-id: svn://openib.tc.cornell.edu/gen1@1792 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86 --- branches/winverbs/hw/mthca/kernel/mthca.cdf | 3 ++ branches/winverbs/hw/mthca/kernel/mthca.inx | 52 +++++++++++++++++++ branches/winverbs/hw/mthca/kernel/mthca32.cdf | 3 ++ 3 files changed, 58 insertions(+) diff --git a/branches/winverbs/hw/mthca/kernel/mthca.cdf b/branches/winverbs/hw/mthca/kernel/mthca.cdf index ce05fa84..7a865639 100644 --- a/branches/winverbs/hw/mthca/kernel/mthca.cdf +++ b/branches/winverbs/hw/mthca/kernel/mthca.cdf @@ -22,5 +22,8 @@ CATATTR1=0x10010001:OSAttr:2:6.0 winverbs.sys=winverbs.sys winverbs.dll=winverbs.dll winverbsd.dll=winverbsd.dll +winmad.sys=winmad.sys +winmad.dll=winmad.dll +winmadd.dll=winmadd.dll WdfCoInstaller01007.dll=WdfCoInstaller01007.dll diff --git a/branches/winverbs/hw/mthca/kernel/mthca.inx b/branches/winverbs/hw/mthca/kernel/mthca.inx index f6b337b0..3a6c902e 100644 --- a/branches/winverbs/hw/mthca/kernel/mthca.inx +++ b/branches/winverbs/hw/mthca/kernel/mthca.inx @@ -20,6 +20,8 @@ Ibal.UMCopyFiles=%DIRID_SYSTEM% Ibal.WOW64CopyFiles=%DIRID_SYSTEM_X86% WinVerbs.CopySysFiles = %DIRID_DRIVERS% WinVerbs.CopyDllFiles = %DIRID_SYSTEM% +WinMad.CopySysFiles = %DIRID_DRIVERS% +WinMad.CopyDllFiles = %DIRID_SYSTEM% Wdf_CoInstaller_CopyFiles = %DIRID_SYSTEM% @@ -34,6 +36,7 @@ HKR,,Icon,,-5 HKR,,SilentInstall,,1 HKR,,"UpperFilters",0x00010000,"ibbus" ; enable IBBUS/AL Filter driver load. HKR,,"UpperFilters",0x00010008,"WinVerbs" ; enable winverbs Filter driver load. +HKR,,"UpperFilters",0x00010008,"WinMad" ; ================= Device Install section ===================== @@ -59,6 +62,9 @@ ibbus.sys=1,, winverbs.sys = 1,, winverbs.dll = 1,, winverbsd.dll = 1,, +winmad.sys = 1,, +winmad.dll = 1,, +winmadd.dll = 1,, WdfCoInstaller01007.dll = 1,, @@ -80,6 +86,9 @@ ibbus.sys=1,, winverbs.sys = 1,, winverbs.dll = 1,, winverbsd.dll = 1,, +winmad.sys = 1,, +winmad.dll = 1,, +winmadd.dll = 1,, WdfCoInstaller01007.dll = 1,, [SourceDisksFiles.ia64] @@ -100,6 +109,9 @@ ibbus.sys=1,, winverbs.sys = 1,, winverbs.dll = 1,, winverbsd.dll = 1,, +winmad.sys = 1,, +winmad.dll = 1,, +winmadd.dll = 1,, WdfCoInstaller01007.dll = 1,, [Manufacturer] @@ -148,6 +160,8 @@ CopyFiles = Ibal.UMCopyFiles CopyFiles = Ibbus.CopyFiles CopyFiles = WinVerbs.CopySysFiles CopyFiles = WinVerbs.CopyDllFiles +CopyFiles = WinMad.CopySysFiles +CopyFiles = WinMad.CopyDllFiles [MTHCA.DDInstall.ntamd64] CopyFiles = MTHCA.CopyFiles @@ -158,6 +172,8 @@ CopyFiles = Ibal.WOW64CopyFiles CopyFiles = Ibbus.CopyFiles CopyFiles = WinVerbs.CopySysFiles CopyFiles = WinVerbs.CopyDllFiles +CopyFiles = WinMad.CopySysFiles +CopyFiles = WinMad.CopyDllFiles [MTHCA.DDInstall.ntia64] CopyFiles = MTHCA.CopyFiles @@ -168,6 +184,8 @@ CopyFiles = Ibal.WOW64CopyFiles CopyFiles = Ibbus.CopyFiles CopyFiles = WinVerbs.CopySysFiles CopyFiles = WinVerbs.CopyDllFiles +CopyFiles = WinMad.CopySysFiles +CopyFiles = WinMad.CopyDllFiles ; ============== Services ============== @@ -176,16 +194,19 @@ CopyFiles = WinVerbs.CopyDllFiles AddService = mthca,%SPSVCINST_ASSOCSERVICE%,MTHCA.ServiceInstall,MTHCA.EventLog AddService = ibbus,,Ibbus.ServiceInstall AddService = WinVerbs,,WinVerbs.ServiceInstall +AddService = WinMad,,WinMad.ServiceInstall [MTHCA.DDInstall.ntamd64.Services] AddService = mthca,%SPSVCINST_ASSOCSERVICE%,MTHCA.ServiceInstall,MTHCA.EventLog AddService = ibbus,,Ibbus.ServiceInstall AddService = WinVerbs,,WinVerbs.ServiceInstall +AddService = WinMad,,WinMad.ServiceInstall [MTHCA.DDInstall.ntia64.Services] AddService = mthca,%SPSVCINST_ASSOCSERVICE%,MTHCA.ServiceInstall,MTHCA.EventLog AddService = ibbus,,Ibbus.ServiceInstall AddService = WinVerbs,,WinVerbs.ServiceInstall +AddService = WinMad,,WinMad.ServiceInstall ; ============= File Copy ============== @@ -223,6 +244,12 @@ winverbs.sys winverbs.dll,,,2 winverbsd.dll,,,2 +[WinMad.CopySysFiles] +winmad.sys + +[WinMad.CopyDllFiles] +winmad.dll,,,2 +winmadd.dll,,,2 ; ============= MTHCA Service Install section ============== @@ -291,6 +318,20 @@ ServiceBinary = %12%\winverbs.sys LoadOrderGroup = PNP Filter Dependencies = ibbus +; ============= WinMad Service Install section ============== + +[WinMad.ServiceInstall] +DisplayName = %WinMad.ServiceDesc% +ServiceType = %SERVICE_KERNEL_DRIVER% +StartType = %SERVICE_DEMAND_START% +ErrorControl = %SERVICE_ERROR_NORMAL% +ServiceBinary = %12%\winmad.sys +LoadOrderGroup = PNP Filter +Dependencies = winverbs + + +; ============= KMDF CoInstaller section ============== + [MTHCA.DDInstall.ntx86.CoInstallers] AddReg = Wdf_CoInstaller_AddReg CopyFiles = Wdf_CoInstaller_CopyFiles @@ -311,12 +352,15 @@ WdfCoInstaller01007.dll [MTHCA.DDInstall.ntx86.Wdf] KmdfService = WinVerbs, WvWdfSect +KmdfService = WinMad, WvWdfSect [MTHCA.DDInstall.ntamd64.Wdf] KmdfService = WinVerbs, WvWdfSect +KmdfService = WinMad, WvWdfSect [MTHCA.DDInstall.ntia64.Wdf] KmdfService = WinVerbs, WvWdfSect +KmdfService = WinMad, WvWdfSect [WvWdfSect] KmdfLibraryVersion = 1.7 @@ -335,6 +379,8 @@ DelFiles = Ibbus.CopyFiles DelReg = Ibbus.ParamsReg DelFiles = WinVerbs.CopySysFiles DelFiles = WinVerbs.CopyDllFiles +DelFiles = WinMad.CopySysFiles +DelFiles = WinMad.CopyDllFiles [DefaultUninstall.ntamd64] DelFiles = MTHCA.CopyFiles @@ -349,6 +395,8 @@ DelFiles = Ibbus.CopyFiles DelReg = Ibbus.ParamsReg DelFiles = WinVerbs.CopySysFiles DelFiles = WinVerbs.CopyDllFiles +DelFiles = WinMad.CopySysFiles +DelFiles = WinMad.CopyDllFiles [DefaultUninstall.ntia64] DelFiles = MTHCA.CopyFiles @@ -363,8 +411,11 @@ DelFiles = Ibbus.CopyFiles DelReg = Ibbus.ParamsReg DelFiles = WinVerbs.CopySysFiles DelFiles = WinVerbs.CopyDllFiles +DelFiles = WinMad.CopySysFiles +DelFiles = WinMad.CopyDllFiles [DefaultUninstall.Services] +DelService = WinMad,%SPSVCINST_STOPSERVICE% DelService = WinVerbs,%SPSVCINST_STOPSERVICE% DelService = Ibbus,%SPSVCINST_STOPSERVICE% DelService = mthca,%SPSVCINST_STOPSERVICE% @@ -387,6 +438,7 @@ MT25205.DeviceDesc="InfiniHost III Lx (MT25205) - Mellanox InfiniBand HCA for PC DiskId = "Mellanox InfiniBand HCA installation disk" Ibbus.ServiceDesc = "InfiniBand Bus/AL (Filter Driver)" WinVerbs.ServiceDesc = "WinVerbs Service" +WinMad.ServiceDesc = "WinMad Service" SPSVCINST_NULL = 0x0 SPSVCINST_ASSOCSERVICE = 0x00000002 SPSVCINST_STOPSERVICE = 0x00000200 diff --git a/branches/winverbs/hw/mthca/kernel/mthca32.cdf b/branches/winverbs/hw/mthca/kernel/mthca32.cdf index 8ec00894..4fc455ea 100644 --- a/branches/winverbs/hw/mthca/kernel/mthca32.cdf +++ b/branches/winverbs/hw/mthca/kernel/mthca32.cdf @@ -16,4 +16,7 @@ CATATTR1=0x10010001:OSAttr:2:6.0 winverbs.sys=winverbs.sys winverbs.dll=winverbs.dll winverbsd.dll=winverbsd.dll +winmad.sys=winmad.sys +winmad.dll=winmad.dll +winmadd.dll=winmadd.dll WdfCoInstaller01007.dll=WdfCoInstaller01007.dll -- 2.46.0