UMDF driver and Selective Suspend

Hi,
I’m trying to enable Selective Suspend for my device (a digitizer).
It has 2 HID endpoints, working with HIDClass.sys, and 1 bulk endpoint, working with a UMDF driver, based on the FX2 sample.
According to the post "How to enable USB selective suspend and system wake in the UMDF driver for a USB device "
I have added to the inf file the following lines:
[OsrUsb_Device_AddReg]
HKR,“LowerFilters”,0x00010008,“WinUsb” ; FLG_ADDREG_TYPE_MULTI_SZ | FLG_ADDREG_APPEND
HKR,“DeviceIdleEnabled”,0x00010001,1
HKR,“DefaultIdleState”,0x00010001,1
HKR,“DefaultIdleTimeout”,0x00010001,5000
HKR,“UserSetDeviceIdleEnabled”,0x00010001,1
HKR,“SystemWakeEnabled”,0x00010001,1

These entries were added in HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Enum\USB\VID_xxxx&PID_xxxx&MI_02\6&1832b87c&0&0002\DeviceParameters

I also enabled USB Selective Suspend setting in Vista’a control panel.
I attached a USB analyzer to see if the device enters suspend mode. I’ve waited the 5000msec specified in the inf, and it didn’t (I expected to see a trace such as Figure 3 which appears in the “Power saving of using USB Selective Suspend Support Whitepaper”, with a SET_FEATURE DEVICE_REMOTE_WAKEUP command, and later suspend. Remote Wakeup is enabled for this device in the device manager).
I also put a breakpoint in the firmware to see if enters this state. It didn’t reach it.
I uninstalled the bulk UMDF driver, to see if the HIDs alone, based on the standard HID driver will enter suspend after 5000msec. They didn’t.
I’ve noticed that in the registry entries of the HID eps, the values and keys specified above do not appear.
According to the Troubleshooting tip in the post, I found that:
The box: “Allow the computer to turn off this device to save power” is:
In the USB Root Hub the device is connected to: checked.
Under it, in USB Composite Device, there are no power options.
Under it, for the bulk driver the box appears and is checked.
For the HID endpoints, this box does not appear (No Power Management pane exists).
I checked my UMDF code, the driver does not try to claim power policy ownership, and I do not use power-managed queues.

My questions are:

  • Should I enable somewhere Selective Suspend for the HIDs? BIOS\Registry perhaps?
  • Is the test I perform (waiting for 5000msec and checking the trace in the USB analyzer\waiting for suspend state in the firmware) enough\correct? Is there a better test?

Thanks,
Gadi

You need to explicitly enable selective suspend on the HID parts as
well. By default, HID does not selectively suspend functions (b/c it
cannot tell generically if the device can wake itself up from *every*
event possible due to human interaction (for instance, some mice can
wake up on button click, but not movement)). This means you will have
to create a separate INF to install HIDusb on your HID functions so that
you can specify the correct registry values to enable SS.

Look at %windir%\inf\input.inf and the HID_SelSus_Inst installation
section for what to write to the HID functions Device Parameters key
(e.g. not the UMDF/winusb stack). Essentially you need to add a
REG_DWORD value named “SelectiveSuspendEnabled” and set it to 1.

HKR,“SelectiveSuspendEnabled”,0x00000001,0x1

d

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of xxxxx@n-trig.com
Sent: Sunday, May 20, 2007 8:25 AM
To: Windows System Software Devs Interest List
Subject: [ntdev] UMDF driver and Selective Suspend

Hi,
I’m trying to enable Selective Suspend for my device (a digitizer).
It has 2 HID endpoints, working with HIDClass.sys, and 1 bulk endpoint,
working with a UMDF driver, based on the FX2 sample.
According to the post "How to enable USB selective suspend and system
wake in the UMDF driver for a USB device "
I have added to the inf file the following lines:
[OsrUsb_Device_AddReg]
HKR,“LowerFilters”,0x00010008,“WinUsb” ; FLG_ADDREG_TYPE_MULTI_SZ |
FLG_ADDREG_APPEND
HKR,“DeviceIdleEnabled”,0x00010001,1
HKR,“DefaultIdleState”,0x00010001,1
HKR,“DefaultIdleTimeout”,0x00010001,5000
HKR,“UserSetDeviceIdleEnabled”,0x00010001,1
HKR,“SystemWakeEnabled”,0x00010001,1

These entries were added in
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Enum\USB\VID_xxxx&PID_xxxx&MI_02
\6&1832b87c&0&0002\DeviceParameters

I also enabled USB Selective Suspend setting in Vista’a control panel.
I attached a USB analyzer to see if the device enters suspend mode. I’ve
waited the 5000msec specified in the inf, and it didn’t (I expected to
see a trace such as Figure 3 which appears in the “Power saving of using
USB Selective Suspend Support Whitepaper”, with a SET_FEATURE
DEVICE_REMOTE_WAKEUP command, and later suspend. Remote Wakeup is
enabled for this device in the device manager).
I also put a breakpoint in the firmware to see if enters this state. It
didn’t reach it.
I uninstalled the bulk UMDF driver, to see if the HIDs alone, based on
the standard HID driver will enter suspend after 5000msec. They didn’t.
I’ve noticed that in the registry entries of the HID eps, the values and
keys specified above do not appear.
According to the Troubleshooting tip in the post, I found that:
The box: “Allow the computer to turn off this device to save power” is:
In the USB Root Hub the device is connected to: checked.
Under it, in USB Composite Device, there are no power options.
Under it, for the bulk driver the box appears and is
checked.
For the HID endpoints, this box does not
appear (No Power Management pane exists).
I checked my UMDF code, the driver does not try to claim power policy
ownership, and I do not use power-managed queues.

My questions are:

  • Should I enable somewhere Selective Suspend for the HIDs?
    BIOS\Registry perhaps?
  • Is the test I perform (waiting for 5000msec and checking the
    trace in the USB analyzer\waiting for suspend state in the firmware)
    enough\correct? Is there a better test?

Thanks,
Gadi


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

Hi,
Thanks for the reply.
Can you be a little bit more specific?
Do I need to change input.inf? Or the inf of the HIDClass? Or add an additional inf (including what? when will it be installed?)
For testing purposes, I would like to change the value directly in the registry.
Where should I add this key?
My HIDS appear in 2 places:
HKLM\System\ControlSet001\Enum\HID\VID_xxxx&PID_xxxx&MI_xx
This key has 3 subkeys with numbers, and underneath there’s “Device Parameters”, “LogConf” and “Properties” (and one of them has “Control”).
And also in:
HKLM\System\ControlSet001\USB\VID_xxxx&PID_xxxx&MI_xx.
With the same sub entries.
Thanks,
Gadi

You do not change input.inf, I was pointing at input.inf as an example
INF. You need to include an additional INF in your driver package.
This INF will be installed when your INF for your UMDF is installed.
You enable SS on the HID FDO, so you would add

“SelectiveSuspendEnabled” : REG_DWORD : 0x1

To HKLM\System\ControlSet001\USB\VID_xxxx&PID_xxxx&MI_xx\Device
Parameters. This value is read when the device is started so you should
add it before you plug in the device or disable/enable the HID
function(s) to have it take effect.

d

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of xxxxx@n-trig.com
Sent: Tuesday, May 22, 2007 5:24 AM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] UMDF driver and Selective Suspend

Hi,
Thanks for the reply.
Can you be a little bit more specific?
Do I need to change input.inf? Or the inf of the HIDClass? Or add an
additional inf (including what? when will it be installed?)
For testing purposes, I would like to change the value directly in the
registry.
Where should I add this key?
My HIDS appear in 2 places:
HKLM\System\ControlSet001\Enum\HID\VID_xxxx&PID_xxxx&MI_xx
This key has 3 subkeys with numbers, and underneath there’s “Device
Parameters”, “LogConf” and “Properties” (and one of them has “Control”).
And also in:
HKLM\System\ControlSet001\USB\VID_xxxx&PID_xxxx&MI_xx.
With the same sub entries.
Thanks,
Gadi


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

A few questions:

  1. Does WinUsb handle submitting the Idle Notification Request to the USB HUB driver?
  2. Are these registry values, specified in the first post, enough for defining idleness of the device? Or should it also be defined in the UMDF code\the firmware?
  3. Who is responsible for implementing the Idle Notification Callback? WinUSB or the UMDF driver?
  4. If WinUsb is responsible for #3, where should I specify that my device supports RemoteWakeup (besides from the configuration descriptor in the firmware)?
    Thanks,
    Gadi

1 yes, it has to. This is a direct call interface and we can’t make a
KM -> UM call in a driver function
2 they are enough since winusb is the power policy owner
3 winusb
4 if your device supports remote wake, I am pretty sure that winusb uses
that by default (since winusb uses KMDF and KMDF picks that up by
default)

d

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of xxxxx@n-trig.com
Sent: Wednesday, May 23, 2007 5:30 AM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] UMDF driver and Selective Suspend

A few questions:

  1. Does WinUsb handle submitting the Idle Notification Request to the
    USB HUB driver?
  2. Are these registry values, specified in the first post, enough for
    defining idleness of the device? Or should it also be defined in the
    UMDF code\the firmware?
  3. Who is responsible for implementing the Idle Notification Callback?
    WinUSB or the UMDF driver?
  4. If WinUsb is responsible for #3, where should I specify that my
    device supports RemoteWakeup (besides from the configuration descriptor
    in the firmware)?
    Thanks,
    Gadi

Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

Hi,
The Power Management pane has been added to the HID properties in the Device manager.
I can check or uncheck “Allow the computer to turn off this device to save power”.
But I cannot check “Allow this device to wake the computer” (this box is disabled).
I assume there is a registry value I need to add somewhere to enable it.
What is its exact path, and how do I add it in the inf?
Thanks,
Gadi

The allow the device to wake the computer check box appears on each HID
collection PDO, not on the FDO HID device node. You will see the
checkbox on the HID collections if the parent’s device capabilities say
that SystemWake > PowerSystemWorking (remember that deeper sleep
increase in value in terms of the enum) and that DeviceWake >
PowerDeviceD0. You can see these capabilities on the HID FDO in device
manager in the properties page, Details tab, Power Data property,
although it is in its raw form.

d

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of xxxxx@n-trig.com
Sent: Thursday, May 24, 2007 1:35 AM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] UMDF driver and Selective Suspend

Hi,
The Power Management pane has been added to the HID properties in the
Device manager.
I can check or uncheck “Allow the computer to turn off this device to
save power”.
But I cannot check “Allow this device to wake the computer” (this box is
disabled).
I assume there is a registry value I need to add somewhere to enable it.
What is its exact path, and how do I add it in the inf?
Thanks,
Gadi


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

I’m trying to understand weather I did not enable something at the host, or the firmware is not doing the remote wakeup it should. At the moment the only the host wakes the device, and not vice versa.
I did not fully understand from the latest reply weather I should also check in the regisrty.
From what I’ve checked in the device manager, I see that this data:
Undera USB root hub, there is USB composite device (and no other device).
It’s power data is:
Current power state:
D0
Power capablities:
0000007F
PDCAP_D0_SUPPORTED
PDCAP_D1_SUPPORTED
PDCAP_D2_SUPPORTED
PDCAP_D3_SUPPORTED
PDCAP_WAKE_FROM_D0_SUPPORTED
PDCAP_WAKE_FROM_D1_SUPPORTED
PDCAP_WAKE_FROM_D2_SUPPORTED
(there is no power management pane)
Under it there’s the bulk endpoint with the UMDF driver, same power data as above and a power management pane, with 2 checked boxes: “Allow the computer to turn off this device to save power” and “Allow this device to wake the computer”.
At the same level there are the 2 HID eps: USB HUman Interface device. same power data, but in the power management pane, only the first box is enabled and checked. The second is not enabled and unchecked.
Under it there are the HID-compliant devices (for each report id), with the same power data, no power management pane.
So, the question is, is it a host issue? Is there a missing entry in registry (and where exactly)?
At the moment nor the bulk neither the HIDs can wake the host.
Or is it likely to be a firmware issue?
Thanks,
Gadi

What OS is this again?

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of xxxxx@n-trig.com
Sent: Thursday, May 24, 2007 1:26 PM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] UMDF driver and Selective Suspend

I’m trying to understand weather I did not enable something at the host,
or the firmware is not doing the remote wakeup it should. At the moment
the only the host wakes the device, and not vice versa.
I did not fully understand from the latest reply weather I should also
check in the regisrty.
From what I’ve checked in the device manager, I see that this data:
Undera USB root hub, there is USB composite device (and no other
device).
It’s power data is:
Current power state:
D0
Power capablities:
0000007F
PDCAP_D0_SUPPORTED
PDCAP_D1_SUPPORTED
PDCAP_D2_SUPPORTED
PDCAP_D3_SUPPORTED
PDCAP_WAKE_FROM_D0_SUPPORTED
PDCAP_WAKE_FROM_D1_SUPPORTED
PDCAP_WAKE_FROM_D2_SUPPORTED
(there is no power management pane)
Under it there’s the bulk endpoint with the UMDF driver, same power data
as above and a power management pane, with 2 checked boxes: “Allow the
computer to turn off this device to save power” and “Allow this device
to wake the computer”.
At the same level there are the 2 HID eps: USB HUman Interface device.
same power data, but in the power management pane, only the first box is
enabled and checked. The second is not enabled and unchecked.
Under it there are the HID-compliant devices (for each report id), with
the same power data, no power management pane.
So, the question is, is it a host issue? Is there a missing entry in
registry (and where exactly)?
At the moment nor the bulk neither the HIDs can wake the host.
Or is it likely to be a firmware issue?
Thanks,
Gadi


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

Vista

As the first step verify your device has remote wakeup flag in USB descriptors. UsbView can show it. Next, use USB analyser to find if it is host or fw issue. Before going to suspend host has to issue SET_FEATURE RemoteWakeup request. If it doesn’t, there is a problem at host. If it does, check if fw really issues remote wakeup.

BTW, if you have Vista RTM and VIA UHCI HC, remote wakeup doesn’t work there. It is known bug. In this case use XP or HC from different vendor. Or wait until MS releases the fix.

Best regards,

Michal Vodicka
UPEK, Inc.
[xxxxx@upek.com, http://www.upek.com]


From: xxxxx@lists.osr.com[SMTP:xxxxx@lists.osr.com] on behalf of xxxxx@n-trig.com[SMTP:xxxxx@n-trig.com]
Reply To: Windows System Software Devs Interest List
Sent: Thursday, May 24, 2007 10:26 PM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] UMDF driver and Selective Suspend

I’m trying to understand weather I did not enable something at the host, or the firmware is not doing the remote wakeup it should. At the moment the only the host wakes the device, and not vice versa.
I did not fully understand from the latest reply weather I should also check in the regisrty.
From what I’ve checked in the device manager, I see that this data:
Undera USB root hub, there is USB composite device (and no other device).
It’s power data is:
Current power state:
D0
Power capablities:
0000007F
PDCAP_D0_SUPPORTED
PDCAP_D1_SUPPORTED
PDCAP_D2_SUPPORTED
PDCAP_D3_SUPPORTED
PDCAP_WAKE_FROM_D0_SUPPORTED
PDCAP_WAKE_FROM_D1_SUPPORTED
PDCAP_WAKE_FROM_D2_SUPPORTED
(there is no power management pane)
Under it there’s the bulk endpoint with the UMDF driver, same power data as above and a power management pane, with 2 checked boxes: “Allow the computer to turn off this device to save power” and “Allow this device to wake the computer”.
At the same level there are the 2 HID eps: USB HUman Interface device. same power data, but in the power management pane, only the first box is enabled and checked. The second is not enabled and unchecked.
Under it there are the HID-compliant devices (for each report id), with the same power data, no power management pane.
So, the question is, is it a host issue? Is there a missing entry in registry (and where exactly)?
At the moment nor the bulk neither the HIDs can wake the host.
Or is it likely to be a firmware issue?
Thanks,
Gadi


Questions? First check the Kernel Driver FAQ at http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

RemoteWakeup is enbaled in the configuration descriptor.
I see a SET_FEATURE remotewakeup in the USB analyzer, but from some reason it is marked as unsuccessful (with a red cross (Ellysis analyzer). I don’t have an analyzer with me at the moment, so I don’t remember why exactly did the transaction fail).
My OS is Vista Ultimate. Does what you said apply on it? Does it not support remote wakeup?
Thanks,
Gadi

Red cross means something went wrong with the request. No wonder is doesn’t work for you.

Host software seems to behave correctly, problem is in the hardware (including firmware). HW problem at host side is unlikely, firmware problem is much more probable. Usually, it is problem with SETUP packet processing (incomplete transaction). You definitely need to check log from USB analyser to see what is wrong.

Best regards,

Michal Vodicka
UPEK, Inc.
[xxxxx@upek.com, http://www.upek.com]


From: xxxxx@lists.osr.com[SMTP:xxxxx@lists.osr.com] on behalf of xxxxx@n-trig.com[SMTP:xxxxx@n-trig.com]
Reply To: Windows System Software Devs Interest List
Sent: Thursday, May 24, 2007 11:02 PM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] UMDF driver and Selective Suspend

RemoteWakeup is enbaled in the configuration descriptor.
I see a SET_FEATURE remotewakeup in the USB analyzer, but from some reason it is marked as unsuccessful (with a red cross (Ellysis analyzer). I don’t have an analyzer with me at the moment, so I don’t remember why exactly did the transaction fail).
My OS is Vista Ultimate. Does what you said apply on it? Does it not support remote wakeup?
Thanks,
Gadi


Questions? First check the Kernel Driver FAQ at http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

Well, remote wakeup finally worked.
Now I need to know in OnD0Entry wether the device has recovered from D2 or D3 (in order to handle wakeups from Selective Suspend and standby\hibernate differently).
How I can tell, in OnD0Entry or OnD0Exit, what state does the device exit to\enter from, correspondingly?
Thanks,
Gadi

I suggest you look at the parameters passed to OnD0Entry and OnD0Exit
before you go any further.

d

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of xxxxx@n-trig.com
Sent: Tuesday, May 29, 2007 8:27 AM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] UMDF driver and Selective Suspend

Well, remote wakeup finally worked.
Now I need to know in OnD0Entry wether the device has recovered from D2
or D3 (in order to handle wakeups from Selective Suspend and
standby\hibernate differently).
How I can tell, in OnD0Entry or OnD0Exit, what state does the device
exit to\enter from, correspondingly?
Thanks,
Gadi


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

You could check the previous state parameter that’s passed to your D0Entry callback.

-p

-----Original Message-----
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of xxxxx@n-trig.com
Sent: Tuesday, May 29, 2007 8:27 AM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] UMDF driver and Selective Suspend

Well, remote wakeup finally worked.
Now I need to know in OnD0Entry wether the device has recovered from D2 or D3 (in order to handle wakeups from Selective Suspend and standby\hibernate differently).
How I can tell, in OnD0Entry or OnD0Exit, what state does the device exit to\enter from, correspondingly?
Thanks,
Gadi


Questions? First check the Kernel Driver FAQ at http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

Is there a way to disable and enable Selective Suspend inside the UMDF driver code?
(That is, if I don’t want that in a certain part of the code Selective Suspend occur, even though I defined the registry values to enable its support for this UMDF driver) .
Thanks,
Gadi

Well you can send commands to the device to make WinUSB think it’s active. But beyond that no you don’t really have any options in the current implementation. UMDF isn’t involved in the power management decisions when you enable idle & SS in WinUSB so you don’t have any direct control over when they happen.

This is something we’re looking to fix in a future release.

-p

-----Original Message-----
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of xxxxx@n-trig.com
Sent: Tuesday, June 05, 2007 7:32 AM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] UMDF driver and Selective Suspend

Is there a way to disable and enable Selective Suspend inside the UMDF driver code?
(That is, if I don’t want that in a certain part of the code Selective Suspend occur, even though I defined the registry values to enable its support for this UMDF driver) .
Thanks,
Gadi


Questions? First check the Kernel Driver FAQ at http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

What about calling WinUsb_SetPowerPolicy(AUTO_SUSPEND) directly? That
would appear to turn off SS dynamically. Note that the WDK has the
wrong function name, WinUsb_SetPowerPolicy is documented as
WinUsb_SetInterfacePowerPolicy (and yes, I filed a bug to get this fixed
along with a bunch of other winusb related doc problems).

d

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Peter Wieland
Sent: Tuesday, June 05, 2007 10:16 AM
To: Windows System Software Devs Interest List
Subject: RE: RE:[ntdev] UMDF driver and Selective Suspend

Well you can send commands to the device to make WinUSB think it’s
active. But beyond that no you don’t really have any options in the
current implementation. UMDF isn’t involved in the power management
decisions when you enable idle & SS in WinUSB so you don’t have any
direct control over when they happen.

This is something we’re looking to fix in a future release.

-p

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of xxxxx@n-trig.com
Sent: Tuesday, June 05, 2007 7:32 AM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] UMDF driver and Selective Suspend

Is there a way to disable and enable Selective Suspend inside the UMDF
driver code?
(That is, if I don’t want that in a certain part of the code Selective
Suspend occur, even though I defined the registry values to enable its
support for this UMDF driver) .
Thanks,
Gadi


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer