aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/freescale/fec.h
diff options
context:
space:
mode:
authorFugang Duan <fugang.duan@nxp.com>2018-10-15 05:19:00 +0000
committerDavid S. Miller <davem@davemloft.net>2018-10-15 22:52:18 -0700
commitec20a63aa8b8ec3223fb25cdb2a49f9f9dfda88c (patch)
tree6eef69aee045c42bdc7c42933dc4f18369d6a4e8 /drivers/net/ethernet/freescale/fec.h
parentqed: fix spelling mistake "Ireelevant" -> "Irrelevant" (diff)
downloadlinux-dev-ec20a63aa8b8ec3223fb25cdb2a49f9f9dfda88c.tar.xz
linux-dev-ec20a63aa8b8ec3223fb25cdb2a49f9f9dfda88c.zip
net: fec: don't dump RX FIFO register when not available
Commit db65f35f50e0 ("net: fec: add support of ethtool get_regs") introduce ethool "--register-dump" interface to dump all FEC registers. But not all silicon implementations of the Freescale FEC hardware module have the FRBR (FIFO Receive Bound Register) and FRSR (FIFO Receive Start Register) register, so we should not be trying to dump them on those that don't. To fix it we create a quirk flag, FEC_QUIRK_HAS_RFREG, and check it before dump those RX FIFO registers. Signed-off-by: Fugang Duan <fugang.duan@nxp.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/freescale/fec.h')
-rw-r--r--drivers/net/ethernet/freescale/fec.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/net/ethernet/freescale/fec.h b/drivers/net/ethernet/freescale/fec.h
index 4778b663653e..bf80855dd0dd 100644
--- a/drivers/net/ethernet/freescale/fec.h
+++ b/drivers/net/ethernet/freescale/fec.h
@@ -452,6 +452,10 @@ struct bufdesc_ex {
* initialisation.
*/
#define FEC_QUIRK_MIB_CLEAR (1 << 15)
+/* Only i.MX25/i.MX27/i.MX28 controller supports FRBR,FRSR registers,
+ * those FIFO receive registers are resolved in other platforms.
+ */
+#define FEC_QUIRK_HAS_FRREG (1 << 16)
struct bufdesc_prop {
int qid;