aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/synopsys/dwc-xlgmac.h
diff options
context:
space:
mode:
authorJie Deng <Jie.Deng1@synopsys.com>2017-04-12 13:10:06 +0800
committerDavid S. Miller <davem@davemloft.net>2017-04-13 13:46:38 -0400
commitd4d49bc145e830fdcfdcfba9ef4b7db5d0b1f8a7 (patch)
treefa3d2ca27451ad47a20d8e8d425e7ac23b570c5b /drivers/net/ethernet/synopsys/dwc-xlgmac.h
parentnet: ipv4: Refine the ipv4_default_advmss (diff)
downloadlinux-dev-d4d49bc145e830fdcfdcfba9ef4b7db5d0b1f8a7.tar.xz
linux-dev-d4d49bc145e830fdcfdcfba9ef4b7db5d0b1f8a7.zip
net: dwc-xlgmac: add the initial ethtool support
It is necessary to provide ethtool support for displaying and modifying parameters of dwc-xlgmac. Signed-off-by: Jie Deng <jiedeng@synopsys.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/synopsys/dwc-xlgmac.h')
-rw-r--r--drivers/net/ethernet/synopsys/dwc-xlgmac.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/net/ethernet/synopsys/dwc-xlgmac.h b/drivers/net/ethernet/synopsys/dwc-xlgmac.h
index 676b2fb8dfcc..cab3e40a86b9 100644
--- a/drivers/net/ethernet/synopsys/dwc-xlgmac.h
+++ b/drivers/net/ethernet/synopsys/dwc-xlgmac.h
@@ -67,6 +67,8 @@
#define XLGMAC_INIT_DMA_TX_FRAMES 25
#define XLGMAC_INIT_DMA_RX_USECS 30
#define XLGMAC_INIT_DMA_RX_FRAMES 25
+#define XLGMAC_MAX_DMA_RIWT 0xff
+#define XLGMAC_MIN_DMA_RIWT 0x01
/* Flow control queue count */
#define XLGMAC_MAX_FLOW_CONTROL_QUEUES 8
@@ -190,7 +192,15 @@ struct xlgmac_stats {
/* Extra counters */
u64 tx_tso_packets;
u64 rx_split_header_packets;
+ u64 tx_process_stopped;
+ u64 rx_process_stopped;
+ u64 tx_buffer_unavailable;
u64 rx_buffer_unavailable;
+ u64 fatal_bus_error;
+ u64 tx_vlan_packets;
+ u64 rx_vlan_packets;
+ u64 napi_poll_isr;
+ u64 napi_poll_txtimer;
};
struct xlgmac_ring_buf {
@@ -622,6 +632,7 @@ struct xlgmac_pdata {
void xlgmac_init_desc_ops(struct xlgmac_desc_ops *desc_ops);
void xlgmac_init_hw_ops(struct xlgmac_hw_ops *hw_ops);
const struct net_device_ops *xlgmac_get_netdev_ops(void);
+const struct ethtool_ops *xlgmac_get_ethtool_ops(void);
void xlgmac_dump_tx_desc(struct xlgmac_pdata *pdata,
struct xlgmac_ring *ring,
unsigned int idx,