]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
usb: xhci: refactor xhci_td_cleanup() to return void
authorNiklas Neronin <niklas.neronin@linux.intel.com>
Wed, 6 Nov 2024 10:14:54 +0000 (12:14 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 6 Nov 2024 12:26:16 +0000 (13:26 +0100)
The function is modified to return 'void' instead of an integer since it
invariably returns '0'. Additionally, multiple functions which only
return xhci_td_cleanup() are also refactored to return void.

This change eliminates the need for callers to handle a return value that
does not convey meaningful information and improve code readability, as it
becomes immediately clear that the function does not produce a significant
output.

Signed-off-by: Niklas Neronin <niklas.neronin@linux.intel.com>
Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Link: https://lore.kernel.org/r/20241106101459.775897-29-mathias.nyman@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/host/xhci-ring.c

index 5fb3d771c429b71babe114a0536dc79ca2cf1b86..e48ee58fdb46a4fa509e069149f6245daab86295 100644 (file)
@@ -813,8 +813,8 @@ static void xhci_unmap_td_bounce_buffer(struct xhci_hcd *xhci,
        seg->bounce_offs = 0;
 }
 
-static int xhci_td_cleanup(struct xhci_hcd *xhci, struct xhci_td *td,
-                          struct xhci_ring *ep_ring, int status)
+static void xhci_td_cleanup(struct xhci_hcd *xhci, struct xhci_td *td,
+                           struct xhci_ring *ep_ring, int status)
 {
        struct urb *urb = NULL;
 
@@ -857,8 +857,6 @@ static int xhci_td_cleanup(struct xhci_hcd *xhci, struct xhci_td *td,
                        status = 0;
                xhci_giveback_urb_in_irq(xhci, td, status);
        }
-
-       return 0;
 }
 
 
@@ -2187,9 +2185,9 @@ int xhci_is_vendor_info_code(struct xhci_hcd *xhci, unsigned int trb_comp_code)
        return 0;
 }
 
-static int finish_td(struct xhci_hcd *xhci, struct xhci_virt_ep *ep,
-                    struct xhci_ring *ep_ring, struct xhci_td *td,
-                    u32 trb_comp_code)
+static void finish_td(struct xhci_hcd *xhci, struct xhci_virt_ep *ep,
+                     struct xhci_ring *ep_ring, struct xhci_td *td,
+                     u32 trb_comp_code)
 {
        struct xhci_ep_ctx *ep_ctx;
 
@@ -2204,7 +2202,7 @@ static int finish_td(struct xhci_hcd *xhci, struct xhci_virt_ep *ep,
                 * stopped TDs. A stopped TD may be restarted, so don't update
                 * the ring dequeue pointer or take this TD off any lists yet.
                 */
-               return 0;
+               return;
        case COMP_USB_TRANSACTION_ERROR:
        case COMP_BABBLE_DETECTED_ERROR:
        case COMP_SPLIT_TRANSACTION_ERROR:
@@ -2230,7 +2228,7 @@ static int finish_td(struct xhci_hcd *xhci, struct xhci_virt_ep *ep,
                                xhci_dbg(xhci, "Already resolving halted ep for 0x%llx\n",
                                         (unsigned long long)xhci_trb_virt_to_dma(
                                                 td->start_seg, td->start_trb));
-                               return 0;
+                               return;
                        }
                        /* endpoint not halted, don't reset it */
                        break;
@@ -2238,7 +2236,7 @@ static int finish_td(struct xhci_hcd *xhci, struct xhci_virt_ep *ep,
                /* Almost same procedure as for STALL_ERROR below */
                xhci_clear_hub_tt_buffer(xhci, td, ep);
                xhci_handle_halted_endpoint(xhci, ep, td, EP_HARD_RESET);
-               return 0;
+               return;
        case COMP_STALL_ERROR:
                /*
                 * xhci internal endpoint state will go to a "halt" state for
@@ -2255,7 +2253,7 @@ static int finish_td(struct xhci_hcd *xhci, struct xhci_virt_ep *ep,
 
                xhci_handle_halted_endpoint(xhci, ep, td, EP_HARD_RESET);
 
-               return 0; /* xhci_handle_halted_endpoint marked td cancelled */
+               return; /* xhci_handle_halted_endpoint marked td cancelled */
        default:
                break;
        }
@@ -2265,7 +2263,7 @@ static int finish_td(struct xhci_hcd *xhci, struct xhci_virt_ep *ep,
        ep_ring->deq_seg = td->end_seg;
        inc_deq(xhci, ep_ring);
 
-       return xhci_td_cleanup(xhci, td, ep_ring, td->status);
+       xhci_td_cleanup(xhci, td, ep_ring, td->status);
 }
 
 /* sum trb lengths from the first trb up to stop_trb, _excluding_ stop_trb */
@@ -2285,9 +2283,9 @@ static u32 sum_trb_lengths(struct xhci_td *td, union xhci_trb *stop_trb)
 /*
  * Process control tds, update urb status and actual_length.
  */
-static int process_ctrl_td(struct xhci_hcd *xhci, struct xhci_virt_ep *ep,
-               struct xhci_ring *ep_ring,  struct xhci_td *td,
-                          union xhci_trb *ep_trb, struct xhci_transfer_event *event)
+static void process_ctrl_td(struct xhci_hcd *xhci, struct xhci_virt_ep *ep,
+                           struct xhci_ring *ep_ring,  struct xhci_td *td,
+                           union xhci_trb *ep_trb, struct xhci_transfer_event *event)
 {
        struct xhci_ep_ctx *ep_ctx;
        u32 trb_comp_code;
@@ -2366,7 +2364,7 @@ static int process_ctrl_td(struct xhci_hcd *xhci, struct xhci_virt_ep *ep,
                td->urb_length_set = true;
                td->urb->actual_length = requested - remaining;
                xhci_dbg(xhci, "Waiting for status stage event\n");
-               return 0;
+               return;
        }
 
        /* at status stage */
@@ -2374,15 +2372,15 @@ static int process_ctrl_td(struct xhci_hcd *xhci, struct xhci_virt_ep *ep,
                td->urb->actual_length = requested;
 
 finish_td:
-       return finish_td(xhci, ep, ep_ring, td, trb_comp_code);
+       finish_td(xhci, ep, ep_ring, td, trb_comp_code);
 }
 
 /*
  * Process isochronous tds, update urb packet status and actual_length.
  */
-static int process_isoc_td(struct xhci_hcd *xhci, struct xhci_virt_ep *ep,
-               struct xhci_ring *ep_ring, struct xhci_td *td,
-               union xhci_trb *ep_trb, struct xhci_transfer_event *event)
+static void process_isoc_td(struct xhci_hcd *xhci, struct xhci_virt_ep *ep,
+                           struct xhci_ring *ep_ring, struct xhci_td *td,
+                           union xhci_trb *ep_trb, struct xhci_transfer_event *event)
 {
        struct urb_priv *urb_priv;
        int idx;
@@ -2476,14 +2474,13 @@ finish_td:
        if (td->error_mid_td && ep_trb != td->end_trb) {
                xhci_dbg(xhci, "Error mid isoc TD, wait for final completion event\n");
                td->urb_length_set = true;
-               return 0;
+               return;
        }
-
-       return finish_td(xhci, ep, ep_ring, td, trb_comp_code);
+       finish_td(xhci, ep, ep_ring, td, trb_comp_code);
 }
 
-static int skip_isoc_td(struct xhci_hcd *xhci, struct xhci_td *td,
-                       struct xhci_virt_ep *ep, int status)
+static void skip_isoc_td(struct xhci_hcd *xhci, struct xhci_td *td,
+                        struct xhci_virt_ep *ep, int status)
 {
        struct urb_priv *urb_priv;
        struct usb_iso_packet_descriptor *frame;
@@ -2504,15 +2501,15 @@ static int skip_isoc_td(struct xhci_hcd *xhci, struct xhci_td *td,
        ep->ring->deq_seg = td->end_seg;
        inc_deq(xhci, ep->ring);
 
-       return xhci_td_cleanup(xhci, td, ep->ring, status);
+       xhci_td_cleanup(xhci, td, ep->ring, status);
 }
 
 /*
  * Process bulk and interrupt tds, update urb status and actual_length.
  */
-static int process_bulk_intr_td(struct xhci_hcd *xhci, struct xhci_virt_ep *ep,
-               struct xhci_ring *ep_ring, struct xhci_td *td,
-               union xhci_trb *ep_trb, struct xhci_transfer_event *event)
+static void process_bulk_intr_td(struct xhci_hcd *xhci, struct xhci_virt_ep *ep,
+                                struct xhci_ring *ep_ring, struct xhci_td *td,
+                                union xhci_trb *ep_trb, struct xhci_transfer_event *event)
 {
        struct xhci_slot_ctx *slot_ctx;
        u32 trb_comp_code;
@@ -2555,7 +2552,7 @@ static int process_bulk_intr_td(struct xhci_hcd *xhci, struct xhci_virt_ep *ep,
                td->status = 0;
 
                xhci_handle_halted_endpoint(xhci, ep, td, EP_SOFT_RESET);
-               return 0;
+               return;
        default:
                /* do nothing */
                break;
@@ -2574,7 +2571,7 @@ finish_td:
                td->urb->actual_length = 0;
        }
 
-       return finish_td(xhci, ep, ep_ring, td, trb_comp_code);
+       finish_td(xhci, ep, ep_ring, td, trb_comp_code);
 }
 
 /* Transfer events which don't point to a transfer TRB, see xhci 4.17.4 */