xhci: dbc: Pass dbc pointer to get_in/out_ep() helper functions to get endpoints
authorMathias Nyman <mathias.nyman@linux.intel.com>
Thu, 23 Jul 2020 14:45:19 +0000 (17:45 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 23 Jul 2020 15:05:28 +0000 (17:05 +0200)
Pass dbc pointer instead of struct xhci_hcd pointer to the get_in_ep() and
get_out_ep() helper functions.

No functional changes
This change helps decoupling xhci and DbC

Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Link: https://lore.kernel.org/r/20200723144530.9992-17-mathias.nyman@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/host/xhci-dbgcap.c
drivers/usb/host/xhci-dbgcap.h
drivers/usb/host/xhci-dbgtty.c

index dd8ac59..26e693d 100644 (file)
@@ -593,7 +593,7 @@ static void dbc_handle_xfer_event(struct xhci_dbc *dbc, union xhci_trb *event)
        remain_length   = EVENT_TRB_LEN(le32_to_cpu(event->generic.field[2]));
        ep_id           = TRB_TO_EP_ID(le32_to_cpu(event->generic.field[3]));
        dep             = (ep_id == EPID_OUT) ?
-                               get_out_ep(xhci) : get_in_ep(xhci);
+                               get_out_ep(dbc) : get_in_ep(dbc);
        ring            = dep->ring;
 
        switch (comp_code) {
@@ -710,12 +710,12 @@ static enum evtreturn xhci_dbc_do_handle_events(struct xhci_dbc *dbc)
                        dbc->state = DS_STALLED;
 
                        if (ctrl & DBC_CTRL_HALT_IN_TR) {
-                               dep = get_in_ep(xhci);
+                               dep = get_in_ep(dbc);
                                xhci_dbc_flush_endpoint_requests(dep);
                        }
 
                        if (ctrl & DBC_CTRL_HALT_OUT_TR) {
-                               dep = get_out_ep(xhci);
+                               dep = get_out_ep(dbc);
                                xhci_dbc_flush_endpoint_requests(dep);
                        }
 
index 628f85f..dc7d2d1 100644 (file)
@@ -179,17 +179,13 @@ enum evtreturn {
        EVT_DISC,
 };
 
-static inline struct dbc_ep *get_in_ep(struct xhci_hcd *xhci)
+static inline struct dbc_ep *get_in_ep(struct xhci_dbc *dbc)
 {
-       struct xhci_dbc         *dbc = xhci->dbc;
-
        return &dbc->eps[BULK_IN];
 }
 
-static inline struct dbc_ep *get_out_ep(struct xhci_hcd *xhci)
+static inline struct dbc_ep *get_out_ep(struct xhci_dbc *dbc)
 {
-       struct xhci_dbc         *dbc = xhci->dbc;
-
        return &dbc->eps[BULK_OUT];
 }
 
index 545e8cb..0ef4886 100644 (file)
@@ -418,7 +418,7 @@ static const struct tty_port_operations dbc_port_ops = {
 };
 
 static void
-xhci_dbc_tty_init_port(struct xhci_hcd *xhci, struct dbc_port *port)
+xhci_dbc_tty_init_port(struct xhci_dbc *dbc, struct dbc_port *port)
 {
        tty_port_init(&port->port);
        spin_lock_init(&port->port_lock);
@@ -427,8 +427,8 @@ xhci_dbc_tty_init_port(struct xhci_hcd *xhci, struct dbc_port *port)
        INIT_LIST_HEAD(&port->read_queue);
        INIT_LIST_HEAD(&port->write_pool);
 
-       port->in =              get_in_ep(xhci);
-       port->out =             get_out_ep(xhci);
+       port->in =              get_in_ep(dbc);
+       port->out =             get_out_ep(dbc);
        port->port.ops =        &dbc_port_ops;
        port->n_read =          0;
 }
@@ -446,7 +446,7 @@ int xhci_dbc_tty_register_device(struct xhci_dbc *dbc)
        struct device           *tty_dev;
        struct dbc_port         *port = &dbc->port;
 
-       xhci_dbc_tty_init_port(xhci, port);
+       xhci_dbc_tty_init_port(dbc, port);
        tty_dev = tty_port_register_device(&port->port,
                                           dbc_tty_driver, 0, NULL);
        if (IS_ERR(tty_dev)) {
@@ -497,7 +497,7 @@ void xhci_dbc_tty_unregister_device(struct xhci_dbc *dbc)
        port->registered = false;
 
        kfifo_free(&port->write_fifo);
-       xhci_dbc_free_requests(get_out_ep(xhci), &port->read_pool);
-       xhci_dbc_free_requests(get_out_ep(xhci), &port->read_queue);
-       xhci_dbc_free_requests(get_in_ep(xhci), &port->write_pool);
+       xhci_dbc_free_requests(get_out_ep(dbc), &port->read_pool);
+       xhci_dbc_free_requests(get_out_ep(dbc), &port->read_queue);
+       xhci_dbc_free_requests(get_in_ep(dbc), &port->write_pool);
 }