On Wednesday, February 27, 2013 06:33:13 PM Greg Kroah-Hartman wrote: > On Thu, Feb 28, 2013 at 02:11:58AM +0100, Rafael J. Wysocki wrote: > > On Wednesday, February 27, 2013 02:20:32 PM Greg Kroah-Hartman wrote: > > > On Wed, Feb 27, 2013 at 11:06:52PM +0100, Rafael J. Wysocki wrote: > > > > From: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx> > > > > > > > > After PCI has stopped using the .find_bridge() callback in > > > > struct acpi_bus_type, the only remaining users of it are SATA and > > > > USB. However, SATA only pretends to be a user, because it points > > > > that callback to a stub always returning -ENODEV, and USB uses it > > > > incorrectly, because as a result of the way it is used by USB every > > > > device in the system that doesn't have a bus type or parent is > > > > passed to usb_acpi_find_device() for inspection. > > > > > > > > What USB actually needs, though, is to call usb_acpi_find_device() > > > > for USB ports that don't have a bus type defined, but have > > > > usb_port_device_type as their device type. > > > > > > Ick, that's not good. Can you have the original creator of that code > > > (someone else from Intel, I can't remember at the moment), fix that up > > > properly and send me patches? > > > > That won't be necessary afer this patch. Or do you want to fix up USB > > separately first? > > No, sorry, my misunderstanding, I was assuming we still needed to do > other USB work after this. If not, that's an even better reason to > accept this patch :) Heh, thanks! Still, it seems that we can do a bit better that this. The two patches that will follow should be almost functionally equivalent to the $subject one, but the resulting code looks somewhat cleaner to me. [1/2] Add .macth() callback to struct acpi_bus_type (instead of the bus pointer). [2/2] Drop .find_bridge() from struct acpi_bus_type Thanks, Rafael -- I speak only for myself. Rafael J. Wysocki, Intel Open Source Technology Center. -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html