Commit aa15d3d2 authored by Alan Stern's avatar Alan Stern Committed by Greg Kroah-Hartman
Browse files

USB: remove the URB_NO_FSBR flag



The URB_NO_FSBR flag has never really been used.  It was introduced as
a potential way for UHCI to minimize PCI bus usage (by not attempting
full-speed bulk and control transfers more than once per frame), but
the flag was not set by any drivers.

There's no point in keeping it around.  This patch simplifies the API
by removing it.  Unfortunately, it does have to be kept as part of the
usbfs ABI, but at least we can document in
include/uapi/linux/usbdevice_fs.h that it doesn't do anything.

Signed-off-by: default avatarAlan Stern <stern@rowland.harvard.edu>
Acked-by: default avatarShuah Khan <shuahkh@osg.samsung.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 4ff02f09
Loading
Loading
Loading
Loading
+0 −1
Original line number Original line Diff line number Diff line
@@ -274,7 +274,6 @@ USBIP_CMD_SUBMIT: Submit an URB
  URB_SHORT_NOT_OK        | 0x00000001 | only in | only in   | only in  | no
  URB_SHORT_NOT_OK        | 0x00000001 | only in | only in   | only in  | no
  URB_ISO_ASAP            | 0x00000002 | no      | no        | no       | yes
  URB_ISO_ASAP            | 0x00000002 | no      | no        | no       | yes
  URB_NO_TRANSFER_DMA_MAP | 0x00000004 | yes     | yes       | yes      | yes
  URB_NO_TRANSFER_DMA_MAP | 0x00000004 | yes     | yes       | yes      | yes
  URB_NO_FSBR             | 0x00000020 | yes     | no        | no       | no
  URB_ZERO_PACKET         | 0x00000040 | no      | no        | only out | no
  URB_ZERO_PACKET         | 0x00000040 | no      | no        | only out | no
  URB_NO_INTERRUPT        | 0x00000080 | yes     | yes       | yes      | yes
  URB_NO_INTERRUPT        | 0x00000080 | yes     | yes       | yes      | yes
  URB_FREE_BUFFER         | 0x00000100 | yes     | yes       | yes      | yes
  URB_FREE_BUFFER         | 0x00000100 | yes     | yes       | yes      | yes
+0 −2
Original line number Original line Diff line number Diff line
@@ -1677,8 +1677,6 @@ static int proc_do_submiturb(struct usb_dev_state *ps, struct usbdevfs_urb *uurb
		u |= URB_ISO_ASAP;
		u |= URB_ISO_ASAP;
	if (uurb->flags & USBDEVFS_URB_SHORT_NOT_OK && is_in)
	if (uurb->flags & USBDEVFS_URB_SHORT_NOT_OK && is_in)
		u |= URB_SHORT_NOT_OK;
		u |= URB_SHORT_NOT_OK;
	if (uurb->flags & USBDEVFS_URB_NO_FSBR)
		u |= URB_NO_FSBR;
	if (uurb->flags & USBDEVFS_URB_ZERO_PACKET)
	if (uurb->flags & USBDEVFS_URB_ZERO_PACKET)
		u |= URB_ZERO_PACKET;
		u |= URB_ZERO_PACKET;
	if (uurb->flags & USBDEVFS_URB_NO_INTERRUPT)
	if (uurb->flags & USBDEVFS_URB_NO_INTERRUPT)
+0 −3
Original line number Original line Diff line number Diff line
@@ -479,9 +479,6 @@ int usb_submit_urb(struct urb *urb, gfp_t mem_flags)
		if (is_out)
		if (is_out)
			allowed |= URB_ZERO_PACKET;
			allowed |= URB_ZERO_PACKET;
		/* FALLTHROUGH */
		/* FALLTHROUGH */
	case USB_ENDPOINT_XFER_CONTROL:
		allowed |= URB_NO_FSBR;	/* only affects UHCI */
		/* FALLTHROUGH */
	default:			/* all non-iso endpoints */
	default:			/* all non-iso endpoints */
		if (!is_out)
		if (!is_out)
			allowed |= URB_SHORT_NOT_OK;
			allowed |= URB_SHORT_NOT_OK;
+1 −2
Original line number Original line Diff line number Diff line
@@ -73,7 +73,6 @@ static void uhci_add_fsbr(struct uhci_hcd *uhci, struct urb *urb)
{
{
	struct urb_priv *urbp = urb->hcpriv;
	struct urb_priv *urbp = urb->hcpriv;


	if (!(urb->transfer_flags & URB_NO_FSBR))
	urbp->fsbr = 1;
	urbp->fsbr = 1;
}
}


+0 −3
Original line number Original line Diff line number Diff line
@@ -412,9 +412,6 @@ static void masking_bogus_flags(struct urb *urb)
		if (is_out)
		if (is_out)
			allowed |= URB_ZERO_PACKET;
			allowed |= URB_ZERO_PACKET;
		/* FALLTHROUGH */
		/* FALLTHROUGH */
	case USB_ENDPOINT_XFER_CONTROL:
		allowed |= URB_NO_FSBR;	/* only affects UHCI */
		/* FALLTHROUGH */
	default:			/* all non-iso endpoints */
	default:			/* all non-iso endpoints */
		if (!is_out)
		if (!is_out)
			allowed |= URB_SHORT_NOT_OK;
			allowed |= URB_SHORT_NOT_OK;
Loading