Re: USB devices fail unnecessarily on unpowered hubs

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

 



Am Dienstag, 30. Mai 2006 22:01 schrieb Pavel Machek:
> Hi!
> 
> > Starting with 2.6.16, some USB devices fail unnecessarily on unpowered
> > hubs. Alan Stern explains,
> > 
> > "The idea is that the kernel now keeps track of USB power budgets.  When a 
> > bus-powered device requires more current than its upstream hub is capable 
> > of providing, the kernel will not configure it.
> > 
> > Computers' USB ports are capable of providing a full 500 mA, so devices
> > plugged directly into the computer will work okay.  However unpowered hubs
> > can provide only 100 mA to each port.  Some devices require (or claim they
> > require) more current than that.  As a result, they don't get configured
> > when plugged into an unpowered hub."
> 
> Actually I have exactly opposite problem: my computer (spitz) can't
> supply full 500mA on its root hub, and linux tries to power up
> 'hungry' devices, anyway, leading to very weird behaviour.


You could lower the obvious values in this code from drivers/usb/core/hub.c

	if (hdev == hdev->bus->root_hub) {
		if (hdev->bus_mA == 0 || hdev->bus_mA >= 500)
			hub->mA_per_port = 500;
		else {
			hub->mA_per_port = hdev->bus_mA;
			hub->limited_power = 1;
		}

If that does the job we need to somehow inherit the power supply maximum from
PCI when we allocate the root hub's device structure.

	Regards
		Oliver
-
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