Hello,
I was looking at the code of the new ohci-au1xxx, and I've figured out
that operationnal regiters resource
is allocated two times: once when registering the OHCI platform device
(check in drivers/base/platform.c),
and once in OHCI driver probe.
Is that ok?? I'm kind of surprised that the second allocation doesn't
failed. Removing it seems to works
well for me.
Thanks,
Karl
--- linux-mips/drivers/usb/host/ohci-au1xxx.c Sun Oct 10 13:56:25 2004
+++ linux/drivers/usb/host/ohci-au1xxx.c Thu Oct 14 15:39:11 2004
@@ -91,13 +91,6 @@ int usb_hcd_au1xxx_probe (const struct h
struct usb_hcd *hcd = 0;
unsigned int *addr = NULL;
-
- if (!request_mem_region(dev->resource[0].start,
- dev->resource[0].end
- - dev->resource[0].start + 1, hcd_name)) {
- pr_debug("request_mem_region failed");
- return -EBUSY;
- }
au1xxx_start_hc(dev);
@@ -173,9 +166,6 @@ int usb_hcd_au1xxx_probe (const struct h
driver->hcd_free(hcd);
err1:
au1xxx_stop_hc(dev);
- release_mem_region(dev->resource[0].start,
- dev->resource[0].end
- - dev->resource[0].start + 1);
return retval;
}
@@ -219,9 +209,6 @@ void usb_hcd_au1xxx_remove (struct usb_h
hcd->driver->hcd_free (hcd);
au1xxx_stop_hc(dev);
- release_mem_region(dev->resource[0].start,
- dev->resource[0].end
- - dev->resource[0].start + 1);
}
/*-------------------------------------------------------------------------*/
|