Re: [linux-usb-devel] Re: [PATCH] Eagle and ADI 930 usb adsl modem driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Nov 02, 2005 at 09:45:28AM +0100, Oliver Neukum wrote:
> Am Mittwoch, 2. November 2005 09:03 schrieb Greg KH:
> > On Wed, Nov 02, 2005 at 08:54:22AM +0100, Duncan Sands wrote:
> > > > > + * sometime hotplug don't have time to give the firmware the
> > > > > + * first time, retry it.
> > > > > + */
> > > > > +static int sleepy_request_firmware(const struct firmware **fw, 
> > > > > +		const char *name, struct device *dev)
> > > > > +{
> > > > > +	if (request_firmware(fw, name, dev) == 0)
> > > > > +		return 0;
> > > > > +	msleep(1000);
> > > > > +	return request_firmware(fw, name, dev);
> > > > > +}
> > > > 
> > > > No, use the async firmware download mode instead of this.  That will
> > > > solve all of your problems.
> > > 
> > > Hi Greg, it looks like you understand what the problem is here.  Could
> > > you please explain to us lesser mortals ;)
> > 
> > If you use the async mode, there is no timeout.  When userspace gets
> > around to giving you the firmware, then you continue on with the rest of
> > your device initialization (don't block the usb probe function though.)
> 
> How would you handle errors in setting up the device?
> A driver cannot reject a device after probe, yet you need to handle
> errors appearing only after the firmware is in the device.

Yes, you can disconnect from a device after you accept it.  And you
_know_ you want this device anyway, as it is of the type you handle.  If
something bad happens, it's ok to still have the device "claimed" as
what else would you be able to do with it?  :)

thanks,

greg k-h
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux