@ -207,8 +207,18 @@ static inline char *portspeed(int portstatus)
return speed_str ;
}
int legacy_hub_port_reset ( struct usb_device * dev , int port ,
unsigned short * portstat )
/**
* usb_hub_port_reset ( ) - reset a port given its usb_device pointer
*
* Reset a hub port and see if a device is present on that port , providing
* sufficient time for it to show itself . The port status is returned .
*
* @ dev : USB device to reset
* @ port : Port number to reset ( note ports are numbered from 0 here )
* @ portstat : Returns port status
*/
static int usb_hub_port_reset ( struct usb_device * dev , int port ,
unsigned short * portstat )
{
int err , tries ;
ALLOC_CACHE_ALIGN_BUFFER ( struct usb_port_status , portsts , 1 ) ;
@ -281,15 +291,6 @@ int legacy_hub_port_reset(struct usb_device *dev, int port,
return 0 ;
}
# ifdef CONFIG_DM_USB
int hub_port_reset ( struct udevice * dev , int port , unsigned short * portstat )
{
struct usb_device * udev = dev_get_parent_priv ( dev ) ;
return legacy_hub_port_reset ( udev , port , portstat ) ;
}
# endif
int usb_hub_port_connect_change ( struct usb_device * dev , int port )
{
ALLOC_CACHE_ALIGN_BUFFER ( struct usb_port_status , portsts , 1 ) ;
@ -323,7 +324,7 @@ int usb_hub_port_connect_change(struct usb_device *dev, int port)
}
/* Reset the port */
ret = legacy _hub_port_reset( dev , port , & portstatus ) ;
ret = usb _hub_port_reset( dev , port , & portstatus ) ;
if ( ret < 0 ) {
if ( ret ! = - ENXIO )
printf ( " cannot reset port %i!? \n " , port + 1 ) ;