[PATCH 04/16] staging: octeon-usb: pass transfer type to find_ready_pipe

Aaro Koskinen aaro.koskinen at iki.fi
Fri Feb 26 00:13:54 UTC 2016


Since we always search the same list, we can just pass the transfer type.

Signed-off-by: Aaro Koskinen <aaro.koskinen at iki.fi>
---
 drivers/staging/octeon-usb/octeon-hcd.c | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/drivers/staging/octeon-usb/octeon-hcd.c b/drivers/staging/octeon-usb/octeon-hcd.c
index 0f5744e..726ec5d 100644
--- a/drivers/staging/octeon-usb/octeon-hcd.c
+++ b/drivers/staging/octeon-usb/octeon-hcd.c
@@ -1839,14 +1839,15 @@ static void cvmx_usb_start_channel(struct cvmx_usb_state *usb, int channel,
 /**
  * Find a pipe that is ready to be scheduled to hardware.
  * @usb:	 USB device state populated by cvmx_usb_initialize().
- * @list:	 Pipe list to search
+ * @xfer_type:	 Transfer type
  *
  * Returns: Pipe or NULL if none are ready
  */
 static struct cvmx_usb_pipe *cvmx_usb_find_ready_pipe(
 		struct cvmx_usb_state *usb,
-		struct list_head *list)
+		enum cvmx_usb_transfer xfer_type)
 {
+	struct list_head *list = usb->active_pipes + xfer_type;
 	u64 current_frame = usb->frame_number;
 	struct cvmx_usb_pipe *pipe;
 
@@ -1915,17 +1916,17 @@ static void cvmx_usb_schedule(struct cvmx_usb_state *usb, int is_sof)
 			 * beginning of the frame
 			 */
 			pipe = cvmx_usb_find_ready_pipe(usb,
-							usb->active_pipes + CVMX_USB_TRANSFER_ISOCHRONOUS);
+							CVMX_USB_TRANSFER_ISOCHRONOUS);
 			if (likely(!pipe))
 				pipe = cvmx_usb_find_ready_pipe(usb,
-								usb->active_pipes + CVMX_USB_TRANSFER_INTERRUPT);
+								CVMX_USB_TRANSFER_INTERRUPT);
 		}
 		if (likely(!pipe)) {
 			pipe = cvmx_usb_find_ready_pipe(usb,
-							usb->active_pipes + CVMX_USB_TRANSFER_CONTROL);
+							CVMX_USB_TRANSFER_CONTROL);
 			if (likely(!pipe))
 				pipe = cvmx_usb_find_ready_pipe(usb,
-								usb->active_pipes + CVMX_USB_TRANSFER_BULK);
+								CVMX_USB_TRANSFER_BULK);
 		}
 		if (!pipe)
 			break;
-- 
2.4.0



More information about the devel mailing list