16 #define SMSC75XX_INT_STS 0x00c 17 #define SMSC75XX_INT_STS_RDFO_INT 0x00400000UL 18 #define SMSC75XX_INT_STS_PHY_INT 0x00020000UL 21 #define SMSC75XX_HW_CFG 0x010 22 #define SMSC75XX_HW_CFG_BIR 0x00000080UL 23 #define SMSC75XX_HW_CFG_LRST 0x00000002UL 26 #define SMSC75XX_INT_EP_CTL 0x038 27 #define SMSC75XX_INT_EP_CTL_RDFO_EN 0x00400000UL 28 #define SMSC75XX_INT_EP_CTL_PHY_EN 0x00020000UL 31 #define SMSC75XX_BULK_IN_DLY 0x03c 32 #define SMSC75XX_BULK_IN_DLY_SET(ticks) ( (ticks) << 0 ) 35 #define SMSC75XX_E2P_BASE 0x040 38 #define SMSC75XX_RFE_CTL 0x060 39 #define SMSC75XX_RFE_CTL_AB 0x00000400UL 40 #define SMSC75XX_RFE_CTL_AM 0x00000200UL 41 #define SMSC75XX_RFE_CTL_AU 0x00000100UL 44 #define SMSC75XX_FCT_RX_CTL 0x090 45 #define SMSC75XX_FCT_RX_CTL_EN 0x80000000UL 46 #define SMSC75XX_FCT_RX_CTL_BAD 0x02000000UL 49 #define SMSC75XX_FCT_TX_CTL 0x094 50 #define SMSC75XX_FCT_TX_CTL_EN 0x80000000UL 53 #define SMSC75XX_MAC_RX 0x104 54 #define SMSC75XX_MAC_RX_MAX_SIZE(mtu) ( (mtu) << 16 ) 55 #define SMSC75XX_MAC_RX_MAX_SIZE_DEFAULT \ 56 SMSC75XX_MAC_RX_MAX_SIZE ( ETH_FRAME_LEN + 4 + 4 ) 57 #define SMSC75XX_MAC_RX_FCS 0x00000010UL 58 #define SMSC75XX_MAC_RX_EN 0x00000001UL 61 #define SMSC75XX_MAC_TX 0x108 62 #define SMSC75XX_MAC_TX_EN 0x00000001UL 65 #define SMSC75XX_RX_ADDR_BASE 0x118 68 #define SMSC75XX_MII_BASE 0x120 71 #define SMSC75XX_MII_PHY_INTR_SOURCE 29 74 #define SMSC75XX_MII_PHY_INTR_MASK 30 77 #define SMSC75XX_PHY_INTR_ANEG_DONE 0x0040 80 #define SMSC75XX_PHY_INTR_LINK_DOWN 0x0010 83 #define SMSC75XX_ADDR_FILT_BASE 0x300 98 #define SMSC75XX_RX_RED 0x00400000UL 111 #define SMSC75XX_TX_FCS 0x00400000UL 204 #define SMSC75XX_RESET_MAX_WAIT_MS 100 210 #define SMSC75XX_IN_MAX_FILL 8 213 #define SMSC75XX_IN_MTU \ 214 ( sizeof ( struct smsc75xx_rx_header ) + \
uint32_t pause
Pause frames.
Transmit error statistics.
Receive error statistics.
uint32_t oversize
Oversize frame errors.
uint32_t undersize
Undersize frame errors.
struct smsc75xx_tx_error_statistics err
Error statistics.
uint32_t count
Bad byte count.
uint32_t carrier
Carrier errors.
uint32_t unicast
Unicast frames.
uint32_t jabber
Jabber errors.
struct usb_endpoint_driver_operations smsc75xx_in_operations
Bulk IN endpoint operations.
uint32_t multicast
Multicast frames.
uint32_t multicast
Multicast byte count.
uint32_t unicast
Unicast byte count.
uint32_t dropped
Dropped frame errors.
uint32_t deferral
Excess deferral errors.
struct smsc75xx_frame_statistics frame
Frame count statistics.
FILE_LICENCE(GPL2_OR_LATER_OR_UBDL)
static struct net_device * netdev
int smsc75xx_dump_statistics(struct smscusb_device *smscusb)
Dump statistics (for debugging)
uint32_t late
Late collisions.
SMSC USB Ethernet drivers.
uint32_t broadcast
Broadcast frames.
struct smsc75xx_tx_statistics tx
Transmit statistics.
struct smsc75xx_rx_statistics rx
Receive statistics.
int smsc75xx_transmit(struct net_device *netdev, struct io_buffer *iobuf)
Transmit packet.
struct smsc75xx_frame_statistics frame
Frame count statistics.
uint32_t alignment
Alignment errors.
uint32_t excessive
Excession collisions.
void smsc75xx_poll(struct net_device *netdev)
Poll for completed and received packets.
uint32_t single
Single collisions.
uint32_t broadcast
Broadcast byte count.
uint32_t fragment
Fragment errors.
USB endpoint driver operations.
uint32_t multiple
Multiple collisions.
uint32_t len[7]
Frames by length category.
struct smsc75xx_rx_error_statistics err
Error statistics.