Message ID | 20250219083745.10406-1-eichest@gmail.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | [v1] usb: core: replace usb_sndaddr0pipe macro with usb_sndctrlpipe | expand |
On Wed, Feb 19, 2025 at 09:36:44AM +0100, Stefan Eichenberger wrote: > From: Stefan Eichenberger <stefan.eichenberger@toradex.com> > > The usb_sndaddr0pipe macro is only used in the hub_set_address function. > Replace it with usb_sndctrlpipe which provides the same functionality > but would also consider the endpoint device number. > > If the device has not been initialised, it is safe to use > usb_sndctrlpipe in this context because udev->devnum is set to 0. > Therefore, this change does not affect behaviour, but reduces code > complexity by reusing the existing macro. > > Signed-off-by: Stefan Eichenberger <stefan.eichenberger@toradex.com> > --- > Even though this patch does not fix a bug it is related to the following > discussion and addresses the change proposed by Alan: > https://lore.kernel.org/all/aa0c06f6-f997-4bcf-a5a3-6b17f6355fca@rowland.harvard.edu/ > --- Acked-by: Alan Stern <stern@rowland.harvard.edu> > drivers/usb/core/hub.c | 4 +--- > 1 file changed, 1 insertion(+), 3 deletions(-) > > diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c > index 59e38780f76d0..66dfdf0bab90b 100644 > --- a/drivers/usb/core/hub.c > +++ b/drivers/usb/core/hub.c > @@ -4697,8 +4697,6 @@ void usb_ep0_reinit(struct usb_device *udev) > } > EXPORT_SYMBOL_GPL(usb_ep0_reinit); > > -#define usb_sndaddr0pipe() (PIPE_CONTROL << 30) > - > static int hub_set_address(struct usb_device *udev, int devnum) > { > int retval; > @@ -4722,7 +4720,7 @@ static int hub_set_address(struct usb_device *udev, int devnum) > if (hcd->driver->address_device) > retval = hcd->driver->address_device(hcd, udev, timeout_ms); > else > - retval = usb_control_msg(udev, usb_sndaddr0pipe(), > + retval = usb_control_msg(udev, usb_sndctrlpipe(udev, 0), > USB_REQ_SET_ADDRESS, 0, devnum, 0, > NULL, 0, timeout_ms); > if (retval == 0) { > -- > 2.45.2 >
diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c index 59e38780f76d0..66dfdf0bab90b 100644 --- a/drivers/usb/core/hub.c +++ b/drivers/usb/core/hub.c @@ -4697,8 +4697,6 @@ void usb_ep0_reinit(struct usb_device *udev) } EXPORT_SYMBOL_GPL(usb_ep0_reinit); -#define usb_sndaddr0pipe() (PIPE_CONTROL << 30) - static int hub_set_address(struct usb_device *udev, int devnum) { int retval; @@ -4722,7 +4720,7 @@ static int hub_set_address(struct usb_device *udev, int devnum) if (hcd->driver->address_device) retval = hcd->driver->address_device(hcd, udev, timeout_ms); else - retval = usb_control_msg(udev, usb_sndaddr0pipe(), + retval = usb_control_msg(udev, usb_sndctrlpipe(udev, 0), USB_REQ_SET_ADDRESS, 0, devnum, 0, NULL, 0, timeout_ms); if (retval == 0) {