From: Mathias Nyman <mathias.nyman@linux.intel.com>
To: <gregkh@linuxfoundation.org>
Cc: <linux-usb@vger.kernel.org>,
Mathias Nyman <mathias.nyman@linux.intel.com>
Subject: [PATCH 08/27] xhci: dbc: Use dev_info() and similar instead of xhci_info()
Date: Thu, 23 Jul 2020 17:45:11 +0300 [thread overview]
Message-ID: <20200723144530.9992-9-mathias.nyman@linux.intel.com> (raw)
In-Reply-To: <20200723144530.9992-1-mathias.nyman@linux.intel.com>
To make this change possible we also need to change
dbc_handle_port_status() to take dbc pointer as parameter instead of
xhci_hcd pointer.
Note that xhci_info() used xhci_to_hcd(xhci)->self.controller as the
device while for dev_info we use xhci_to_hcd(xhci)->self.sysdev.
In many cases those are the same, but not for some device where
a dwc3 controller creates a xhci platform device. In th this case
self.controller may be the platform device while self.sysdev is
the actual device known to firmware (dwc3).
This change helps decoupling xhci and DbC
Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
---
drivers/usb/host/xhci-dbgcap.c | 42 +++++++++++++++++-----------------
1 file changed, 21 insertions(+), 21 deletions(-)
diff --git a/drivers/usb/host/xhci-dbgcap.c b/drivers/usb/host/xhci-dbgcap.c
index ae584d6ae10c..3375be7ea642 100644
--- a/drivers/usb/host/xhci-dbgcap.c
+++ b/drivers/usb/host/xhci-dbgcap.c
@@ -286,13 +286,13 @@ dbc_ep_do_queue(struct dbc_ep *dep, struct dbc_request *req)
req->length,
dbc_ep_dma_direction(dep));
if (dma_mapping_error(dev, req->dma)) {
- xhci_err(xhci, "failed to map buffer\n");
+ dev_err(dbc->dev, "failed to map buffer\n");
return -EFAULT;
}
ret = xhci_dbc_queue_bulk_tx(dep, req);
if (ret) {
- xhci_err(xhci, "failed to queue trbs\n");
+ dev_err(dbc->dev, "failed to queue trbs\n");
dma_unmap_single(dev,
req->dma,
req->length,
@@ -567,23 +567,22 @@ static void xhci_dbc_stop(struct xhci_hcd *xhci)
}
static void
-dbc_handle_port_status(struct xhci_hcd *xhci, union xhci_trb *event)
+dbc_handle_port_status(struct xhci_dbc *dbc, union xhci_trb *event)
{
u32 portsc;
- struct xhci_dbc *dbc = xhci->dbc;
portsc = readl(&dbc->regs->portsc);
if (portsc & DBC_PORTSC_CONN_CHANGE)
- xhci_info(xhci, "DbC port connect change\n");
+ dev_info(dbc->dev, "DbC port connect change\n");
if (portsc & DBC_PORTSC_RESET_CHANGE)
- xhci_info(xhci, "DbC port reset change\n");
+ dev_info(dbc->dev, "DbC port reset change\n");
if (portsc & DBC_PORTSC_LINK_CHANGE)
- xhci_info(xhci, "DbC port link status change\n");
+ dev_info(dbc->dev, "DbC port link status change\n");
if (portsc & DBC_PORTSC_CONFIG_CHANGE)
- xhci_info(xhci, "DbC config error change\n");
+ dev_info(dbc->dev, "DbC config error change\n");
/* Port reset change bit will be cleared in other place: */
writel(portsc & ~DBC_PORTSC_RESET_CHANGE, &dbc->regs->portsc);
@@ -598,6 +597,7 @@ static void dbc_handle_xfer_event(struct xhci_hcd *xhci, union xhci_trb *event)
u32 comp_code;
size_t remain_length;
struct dbc_request *req = NULL, *r;
+ struct xhci_dbc *dbc = xhci->dbc;
comp_code = GET_COMP_CODE(le32_to_cpu(event->generic.field[2]));
remain_length = EVENT_TRB_LEN(le32_to_cpu(event->generic.field[2]));
@@ -617,11 +617,11 @@ static void dbc_handle_xfer_event(struct xhci_hcd *xhci, union xhci_trb *event)
case COMP_BABBLE_DETECTED_ERROR:
case COMP_USB_TRANSACTION_ERROR:
case COMP_STALL_ERROR:
- xhci_warn(xhci, "tx error %d detected\n", comp_code);
+ dev_warn(dbc->dev, "tx error %d detected\n", comp_code);
status = -comp_code;
break;
default:
- xhci_err(xhci, "unknown tx error %d\n", comp_code);
+ dev_err(dbc->dev, "unknown tx error %d\n", comp_code);
status = -comp_code;
break;
}
@@ -635,7 +635,7 @@ static void dbc_handle_xfer_event(struct xhci_hcd *xhci, union xhci_trb *event)
}
if (!req) {
- xhci_warn(xhci, "no matched request\n");
+ dev_warn(dbc->dev, "no matched request\n");
return;
}
@@ -676,7 +676,7 @@ static enum evtreturn xhci_dbc_do_handle_events(struct xhci_dbc *dbc)
portsc = readl(&dbc->regs->portsc);
if (portsc & DBC_PORTSC_CONN_STATUS) {
dbc->state = DS_CONNECTED;
- xhci_info(xhci, "DbC connected\n");
+ dev_info(dbc->dev, "DbC connected\n");
}
return EVT_DONE;
@@ -684,7 +684,7 @@ static enum evtreturn xhci_dbc_do_handle_events(struct xhci_dbc *dbc)
ctrl = readl(&dbc->regs->control);
if (ctrl & DBC_CTRL_DBC_RUN) {
dbc->state = DS_CONFIGURED;
- xhci_info(xhci, "DbC configured\n");
+ dev_info(dbc->dev, "DbC configured\n");
portsc = readl(&dbc->regs->portsc);
writel(portsc, &dbc->regs->portsc);
return EVT_GSER;
@@ -696,7 +696,7 @@ static enum evtreturn xhci_dbc_do_handle_events(struct xhci_dbc *dbc)
portsc = readl(&dbc->regs->portsc);
if (!(portsc & DBC_PORTSC_PORT_ENABLED) &&
!(portsc & DBC_PORTSC_CONN_STATUS)) {
- xhci_info(xhci, "DbC cable unplugged\n");
+ dev_info(dbc->dev, "DbC cable unplugged\n");
dbc->state = DS_ENABLED;
xhci_dbc_flush_requests(dbc);
@@ -705,7 +705,7 @@ static enum evtreturn xhci_dbc_do_handle_events(struct xhci_dbc *dbc)
/* Handle debug port reset event: */
if (portsc & DBC_PORTSC_RESET_CHANGE) {
- xhci_info(xhci, "DbC port reset\n");
+ dev_info(dbc->dev, "DbC port reset\n");
writel(portsc, &dbc->regs->portsc);
dbc->state = DS_ENABLED;
xhci_dbc_flush_requests(dbc);
@@ -717,7 +717,7 @@ static enum evtreturn xhci_dbc_do_handle_events(struct xhci_dbc *dbc)
ctrl = readl(&dbc->regs->control);
if ((ctrl & DBC_CTRL_HALT_IN_TR) ||
(ctrl & DBC_CTRL_HALT_OUT_TR)) {
- xhci_info(xhci, "DbC Endpoint stall\n");
+ dev_info(dbc->dev, "DbC Endpoint stall\n");
dbc->state = DS_STALLED;
if (ctrl & DBC_CTRL_HALT_IN_TR) {
@@ -751,7 +751,7 @@ static enum evtreturn xhci_dbc_do_handle_events(struct xhci_dbc *dbc)
return EVT_DONE;
default:
- xhci_err(xhci, "Unknown DbC state %d\n", dbc->state);
+ dev_err(dbc->dev, "Unknown DbC state %d\n", dbc->state);
break;
}
@@ -769,7 +769,7 @@ static enum evtreturn xhci_dbc_do_handle_events(struct xhci_dbc *dbc)
switch (le32_to_cpu(evt->event_cmd.flags) & TRB_TYPE_BITMASK) {
case TRB_TYPE(TRB_PORT_STATUS):
- dbc_handle_port_status(xhci, evt);
+ dbc_handle_port_status(dbc, evt);
break;
case TRB_TYPE(TRB_TRANSFER):
dbc_handle_xfer_event(xhci, evt);
@@ -813,11 +813,11 @@ static void xhci_dbc_handle_events(struct work_struct *work)
case EVT_GSER:
ret = xhci_dbc_tty_register_device(xhci);
if (ret) {
- xhci_err(xhci, "failed to alloc tty device\n");
+ dev_err(dbc->dev, "failed to alloc tty device\n");
break;
}
- xhci_info(xhci, "DbC now attached to /dev/ttyDBC0\n");
+ dev_info(dbc->dev, "DbC now attached to /dev/ttyDBC0\n");
break;
case EVT_DISC:
xhci_dbc_tty_unregister_device(xhci);
@@ -825,7 +825,7 @@ static void xhci_dbc_handle_events(struct work_struct *work)
case EVT_DONE:
break;
default:
- xhci_info(xhci, "stop handling dbc events\n");
+ dev_info(dbc->dev, "stop handling dbc events\n");
return;
}
--
2.17.1
next prev parent reply other threads:[~2020-07-23 14:42 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-07-23 14:45 [PATCH 00/27] xhci features for usb-next Mathias Nyman
2020-07-23 14:45 ` [PATCH 01/27] xhci: Make debug message consistent with bus and port number Mathias Nyman
2020-07-23 14:45 ` [PATCH 02/27] xhci: dbc: Don't use generic xhci inc_deq() function for dbc Mathias Nyman
2020-07-23 14:45 ` [PATCH 03/27] xhci: Don't pass struct xhci_hcd pointer to xhci_link_seg() Mathias Nyman
2020-07-23 14:45 ` [PATCH 04/27] xhci: dbc: Don't use generic xhci erst allocation and free functions Mathias Nyman
2020-07-23 14:45 ` [PATCH 05/27] xhci: dbc: Remove dbc_dma_alloc_coherent() wrapper Mathias Nyman
2020-07-23 14:45 ` [PATCH 06/27] xhci: dbc: Remove dbc_dma_free_coherent() wrapper Mathias Nyman
2020-07-23 14:45 ` [PATCH 07/27] xhci: dbc: Add device pointer to dbc structure Mathias Nyman
2020-07-23 14:45 ` Mathias Nyman [this message]
2020-07-23 14:45 ` [PATCH 09/27] xhci: dbc: Don't use xhci_write_64() as it takes xhci as a parameter Mathias Nyman
2020-07-23 14:45 ` [PATCH 10/27] xhci: dbc: Don't pass the xhci pointer as a parameter to xhci_dbc_init_context() Mathias Nyman
2020-07-23 14:45 ` [PATCH 11/27] xhci: dbc: Get the device pointer from dbc structure in dbc_ep_do_queue() Mathias Nyman
2020-07-23 14:45 ` [PATCH 12/27] xhci: dbc: Pass dbc pointer to endpoint init and exit functions Mathias Nyman
2020-07-23 14:45 ` [PATCH 13/27] xhci: dbc: Change to pass dbc pointer to xhci_do_dbc_stop() Mathias Nyman
2020-07-23 14:45 ` [PATCH 14/27] xhci: dbc: Pass dbc pointer to dbc_handle_xfer_event() instead of xhci_hcd pointer Mathias Nyman
2020-07-23 14:45 ` [PATCH 15/27] xhci: dbgtty: Pass dbc pointer when registering a dbctty device Mathias Nyman
2020-07-23 14:45 ` [PATCH 16/27] xhci: dbc: Pass dbc pointer to get_in/out_ep() helper functions to get endpoints Mathias Nyman
2020-07-23 14:45 ` [PATCH 17/27] xhci: dbc: Use dbc structure in the request completion instead of xhci_hcd Mathias Nyman
2020-07-23 14:45 ` [PATCH 18/27] xhci: dbc: Don't use generic xhci context allocation for dbc Mathias Nyman
2020-07-23 14:45 ` [PATCH 19/27] xhci: dbc: don't use generic xhci ring allocation functions " Mathias Nyman
2020-07-23 14:45 ` [PATCH 20/27] xhci: dbc: Pass dbc pointer to dbc memory init and cleanup functions Mathias Nyman
2020-07-23 14:45 ` [PATCH 21/27] xhci: dbc: Pass dbc pointer to dbc start and stop functions Mathias Nyman
2020-07-23 14:45 ` [PATCH 22/27] xhci: dbc: simplify dbc requests allocation and queueing Mathias Nyman
2020-07-23 14:45 ` [PATCH 23/27] xhci: dbc: remove endpoint pointers from dbc_port structure Mathias Nyman
2020-07-23 14:45 ` [PATCH 24/27] xhci: dbctty: split dbc tty driver registration and unregistration functions Mathias Nyman
2020-07-23 14:45 ` [PATCH 25/27] xhci: dbc: Add a operations structure to access driver functions Mathias Nyman
2020-07-23 14:45 ` [PATCH 26/27] xhci: dbgcap: remove dbc dependency on dbctty specific flag Mathias Nyman
2020-07-23 14:45 ` [PATCH 27/27] xhci: dbc: remove tty specific port structure from struct xhci_dbc Mathias Nyman
2020-07-23 15:04 ` [PATCH 00/27] xhci features for usb-next Greg KH
2020-07-23 18:47 ` Mathias Nyman
2020-07-24 7:06 ` Greg KH
2020-07-24 11:11 ` Mathias Nyman
2020-07-24 16:32 ` Greg KH
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200723144530.9992-9-mathias.nyman@linux.intel.com \
--to=mathias.nyman@linux.intel.com \
--cc=gregkh@linuxfoundation.org \
--cc=linux-usb@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).