Tech Support > Microsoft Windows > Drivers > RE: Problems with high-speed composite device with interrupt endpoint
RE: Problems with high-speed composite device with interrupt endpoint
Posted by Scot Rose [MSFT] on September 5th, 2003


Hi Walter, I Am attempting to locate someone who can help with your question...

Want to know more? Check out the MSDN Library at http://msdn.microsoft.com or the Microsoft Knowledge Base at http://support.microsoft.com

Scot Rose, MCSD
Microsoft Visual Basic Developer Support
Email : scotr@online.microsoft.com <Remove word online. from address>

This posting is provided “AS IS”, with no warranties, and confers no rights.




--------------------
Message-ID: <3F54F2EA.50B1ADC8@oneysoft.com>
Date: Tue, 02 Sep 2003 15:43:38 -0400
From: Walter Oney <waltoney@oneysoft.com>
X-Mailer: Mozilla 4.7 [en] (WinNT; I)
X-Accept-Language: en
MIME-Version: 1.0
Subject: Problems with high-speed composite device with interrupt endpoint
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Newsgroups: microsoft.public.development.device.drivers
NNTP-Posting-Host: 209-150-52-106.c3-0.sbo-ubr3.sbo-ubr.ma.cable.rcn.com 209.150.52.106
Lines: 1
Path: cpmsftngxa06.phx.gbl!TK2MSFTNGP08.phx.gbl!TK2MSFTN GP11.phx.gbl
Xref: cpmsftngxa06.phx.gbl microsoft.public.development.device.drivers:30112
X-Tomcat-NG: microsoft.public.development.device.drivers

Has anybody noticed a problem under XP with surprise removing or
disabling a high-speed composite device, where one of the functions has
an interrupt endpoint? A driver built according to the scheme I outline
in my book is not handling these cases gracefully, with the result that
the driver won't unload.

--
Walter Oney, Consulting and Training
Basic and Advanced Driver Programming Seminars
Check out our schedule at http://www.oneysoft.com


Posted by Walter Oney on September 5th, 2003


"Scot Rose [MSFT]" wrote:
Well, it may have been a false alarm. To make a long story short, it
seems that Verifier has suddenly started to check that the UINumber is
-1 in a characteristics query. This affected my bus driver, which was
repeating a query from a child stack where it had already been set to
something other than -1 on the way down. It looks like my client was
quickly unplugging and replugging the device, so that the problem
appeared to be related to surprise removal.

--
Walter Oney, Consulting and Training
Basic and Advanced Driver Programming Seminars
Check out our schedule at http://www.oneysoft.com

Posted by Mark on September 6th, 2003


Dear Mr. Oney,
We are facing a similar problem.
Ours is a composite device - with a HID mouse and vendor specific
interfaces- built with the FX2.

When the configured device is surprise removed and reconnected it
comes up with the warning "Found new hardware... High speed device
plugged in Full speed port...."
It has to be power cycled again.

And insight into the problem is appreciated.

Regards,
Mark

Posted by Tim Roberts on September 7th, 2003


Walter Oney <waltoney@oneysoft.com> wrote:

Hasn't the XP verifier always done this? I thought the verifier chastised
me for this in one of my drivers in the summer of 2001.
--
- Tim Roberts, timr@probo.com
Providenza & Boekelheide, Inc.

Posted by Walter Oney on September 7th, 2003


Tim Roberts wrote:
I thought it was new behavior, since I (thought I) long tested this
particular driver (and it passed WHQL) with the verifier on. I think my
memory is at fault and that yours is better. In any case, it was an
annoying little problem, given that it's hard in my multifunction scheme
to propagate some information from the child stack to the completion
routine in the parent stack without just decoding the IRP all over
again. I don't frankly see what's wrong with initializing UINumber to a
real value in this situation -- you're just reissuing the IRP because
there aren't enough stack locations in the one that came down the child
stack.

--
Walter Oney, Consulting and Training
Basic and Advanced Driver Programming Seminars
Check out our schedule at http://www.oneysoft.com

Posted by Walter Oney on September 7th, 2003


Mark wrote:
I think your problem is different, unless the device is not working at
that point. So far as I know, you get the "high speed" warning every
time you plug in a device. Frankly, this warning should just go the way
of Clippie, or there should at least be a registry flag so that it only
appears once per lifetime for a particular device.

--
Walter Oney, Consulting and Training
Basic and Advanced Driver Programming Seminars
Check out our schedule at http://www.oneysoft.com

Posted by Mark on September 9th, 2003


Dear Mr. Oney,
We just found that un-installing the device solves the problem - until
atleast the next time the application crashes(not BSOD) .
I think it is due to some memory leak at the driver due to application
crashes.
Regards,
Mark