diff options
author | Hans de Goede <hdegoede@redhat.com> | 2015-06-17 21:33:48 +0200 |
---|---|---|
committer | Simon Glass <sjg@chromium.org> | 2015-07-21 17:39:35 -0600 |
commit | 8802f56349eef1eedaf12238f84810d0691aaf34 (patch) | |
tree | bfc31d7d21a595b0b37e7de2fbb5cc84713e2aa4 | |
parent | 682c9f8dfc47df94df061df58345d84f69be0a34 (diff) | |
download | u-boot-imx-8802f56349eef1eedaf12238f84810d0691aaf34.zip u-boot-imx-8802f56349eef1eedaf12238f84810d0691aaf34.tar.gz u-boot-imx-8802f56349eef1eedaf12238f84810d0691aaf34.tar.bz2 |
usb: Add an usb_device parameter to usb_reset_root_port
Add an usb_device parameter to usb_reset_root_port so that it knows which
root-port it is resetting. This is necessary for proper device-model support
for usb_reset_root_port.
Also remove a duplicate declaration of usb_reset_root_port() from usb.h .
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Acked-by: Simon Glass <sjg@chromium.org>
-rw-r--r-- | common/usb.c | 2 | ||||
-rw-r--r-- | drivers/usb/host/usb-uclass.c | 2 | ||||
-rw-r--r-- | drivers/usb/musb-new/musb_uboot.c | 4 | ||||
-rw-r--r-- | include/usb.h | 8 |
4 files changed, 6 insertions, 10 deletions
diff --git a/common/usb.c b/common/usb.c index d204ba2..fbaf8ec 100644 --- a/common/usb.c +++ b/common/usb.c @@ -924,7 +924,7 @@ static int usb_hub_port_reset(struct usb_device *dev, struct usb_device *hub) return err; } } else { - usb_reset_root_port(); + usb_reset_root_port(dev); } return 0; diff --git a/drivers/usb/host/usb-uclass.c b/drivers/usb/host/usb-uclass.c index 18680c9..bce6cec 100644 --- a/drivers/usb/host/usb-uclass.c +++ b/drivers/usb/host/usb-uclass.c @@ -265,7 +265,7 @@ int usb_init(void) return usb_started ? 0 : -1; } -int usb_reset_root_port(void) +int usb_reset_root_port(struct usb_device *udev) { return -ENOSYS; } diff --git a/drivers/usb/musb-new/musb_uboot.c b/drivers/usb/musb-new/musb_uboot.c index d1ee5f8..1bf676c 100644 --- a/drivers/usb/musb-new/musb_uboot.c +++ b/drivers/usb/musb-new/musb_uboot.c @@ -180,7 +180,7 @@ void *poll_int_queue(struct usb_device *dev, struct int_queue *queue) return NULL; /* URB still pending */ } -int usb_reset_root_port(void) +int usb_reset_root_port(struct usb_device *dev) { void *mbase = host->mregs; u8 power; @@ -232,7 +232,7 @@ int usb_lowlevel_init(int index, enum usb_init_type init, void **controller) if (get_timer(0) >= timeout) return -ENODEV; - usb_reset_root_port(); + usb_reset_root_port(NULL); host->is_active = 1; hcd.hcd_priv = host; diff --git a/include/usb.h b/include/usb.h index 8a71e28..2bb6a06 100644 --- a/include/usb.h +++ b/include/usb.h @@ -175,9 +175,9 @@ int usb_lowlevel_init(int index, enum usb_init_type init, void **controller); int usb_lowlevel_stop(int index); #if defined(CONFIG_MUSB_HOST) || defined(CONFIG_DM_USB) -int usb_reset_root_port(void); +int usb_reset_root_port(struct usb_device *dev); #else -#define usb_reset_root_port() +#define usb_reset_root_port(dev) #endif int submit_bulk_msg(struct usb_device *dev, unsigned long pipe, @@ -710,10 +710,6 @@ struct dm_usb_ops { #define usb_get_ops(dev) ((struct dm_usb_ops *)(dev)->driver->ops) #define usb_get_emul_ops(dev) ((struct dm_usb_ops *)(dev)->driver->ops) -#ifdef CONFIG_MUSB_HOST -int usb_reset_root_port(void); -#endif - /** * usb_get_dev_index() - look up a device index number * |