Thread (51 messages) flat view 51 messages, 6 authors, 2016-03-05
STALE3815d

RE: [PATCH net-next V2 13/16] net: fec: print more debug info in fec_timeout

From: Fugang Duan <hidden>
Date: 2016-03-04 10:06:18
Also in: linux-arm-kernel

From: Troy Kisky <redacted> Sent: Thursday, February 25, 2016 8:37 AM
quoted hunk ↗ jump to hunk
To: netdev@vger.kernel.org; davem@davemloft.net; b38611@freescale.com
Cc: fabio.estevam@freescale.com; l.stach@pengutronix.de; andrew@lunn.ch;
tremyfr@gmail.com; linux@arm.linux.org.uk; linux-arm-
kernel@lists.infradead.org; laci@boundarydevices.com; shawnguo@kernel.org;
johannes@sipsolutions.net; stillcompiling@gmail.com;
sergei.shtylyov@cogentembedded.com; arnd@arndb.de; Troy Kisky
[off-list ref]
Subject: [PATCH net-next V2 13/16] net: fec: print more debug info in
fec_timeout

Print the current interrupt flags and mask and the interrupt state during the last
interrupt in fec_timeout.

Signed-off-by: Troy Kisky <redacted>
---
 drivers/net/ethernet/freescale/fec.h      | 1 +
 drivers/net/ethernet/freescale/fec_main.c | 4 ++++
 2 files changed, 5 insertions(+)
diff --git a/drivers/net/ethernet/freescale/fec.h
b/drivers/net/ethernet/freescale/fec.h
index 001200b..615cca1 100644
--- a/drivers/net/ethernet/freescale/fec.h
+++ b/drivers/net/ethernet/freescale/fec.h
@@ -506,6 +506,7 @@ struct fec_enet_private {
 	unsigned int total_tx_ring_size;
 	unsigned int total_rx_ring_size;
 	uint	events;
+	uint	last_ievents;

 	struct	platform_device *pdev;
diff --git a/drivers/net/ethernet/freescale/fec_main.c
b/drivers/net/ethernet/freescale/fec_main.c
index afd4060..9a3136b 100644
--- a/drivers/net/ethernet/freescale/fec_main.c
+++ b/drivers/net/ethernet/freescale/fec_main.c
@@ -1107,6 +1107,9 @@ fec_timeout(struct net_device *ndev)
 	int i;
 	uint events = 0;

+	pr_err("%s: last=%x %x, mask %x\n", __func__, fep->last_ievents,
+	       readl(fep->hwp + FEC_IEVENT), readl(fep->hwp + FEC_IMASK));
+
pr_err() -> netdev_err()

I don't want the debug patch enter to the driver.
quoted hunk ↗ jump to hunk
 	for (i = 0; i < fep->num_tx_queues; i++) {
 		struct fec_enet_priv_tx_q *txq = fep->tx_queue[i];
 		int index;
@@ -1514,6 +1517,7 @@ fec_enet_interrupt(int irq, void *dev_id)

 	if (!int_events)
 		return IRQ_NONE;
+	fep->last_ievents = int_events;

 	if (int_events & (FEC_ENET_RXF | FEC_ENET_TXF)) {
 		if (napi_schedule_prep(&fep->napi)) {
--
2.5.0
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help