drivers/net/usb/smsc75xx.h
Source file repositories/reference/linux-study-clean/drivers/net/usb/smsc75xx.h
File Facts
- System
- Linux kernel
- Corpus path
drivers/net/usb/smsc75xx.h- Extension
.h- Size
- 13128 bytes
- Lines
- 410
- Domain
- Driver Families
- Bucket
- drivers/net
- Inferred role
- Driver Families: implementation source
- Status
- source implementation candidate
Why This File Exists
Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.
- Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.
Dependency Surface
- No C-style include directives detected by the generator.
Detected Declarations
- No top-level syscall, struct, function, initcall, or export declaration detected by the generator.
Annotated Snippet
#ifndef _SMSC75XX_H
#define _SMSC75XX_H
/* Tx command words */
#define TX_CMD_A_LSO (0x08000000)
#define TX_CMD_A_IPE (0x04000000)
#define TX_CMD_A_TPE (0x02000000)
#define TX_CMD_A_IVTG (0x01000000)
#define TX_CMD_A_RVTG (0x00800000)
#define TX_CMD_A_FCS (0x00400000)
#define TX_CMD_A_LEN (0x000FFFFF)
#define TX_CMD_B_MSS (0x3FFF0000)
#define TX_CMD_B_MSS_SHIFT (16)
#define TX_MSS_MIN ((u16)8)
#define TX_CMD_B_VTAG (0x0000FFFF)
/* Rx command words */
#define RX_CMD_A_ICE (0x80000000)
#define RX_CMD_A_TCE (0x40000000)
#define RX_CMD_A_IPV (0x20000000)
#define RX_CMD_A_PID (0x18000000)
#define RX_CMD_A_PID_NIP (0x00000000)
#define RX_CMD_A_PID_TCP (0x08000000)
#define RX_CMD_A_PID_UDP (0x10000000)
#define RX_CMD_A_PID_PP (0x18000000)
#define RX_CMD_A_PFF (0x04000000)
#define RX_CMD_A_BAM (0x02000000)
#define RX_CMD_A_MAM (0x01000000)
#define RX_CMD_A_FVTG (0x00800000)
#define RX_CMD_A_RED (0x00400000)
#define RX_CMD_A_RWT (0x00200000)
#define RX_CMD_A_RUNT (0x00100000)
#define RX_CMD_A_LONG (0x00080000)
#define RX_CMD_A_RXE (0x00040000)
#define RX_CMD_A_DRB (0x00020000)
#define RX_CMD_A_FCS (0x00010000)
#define RX_CMD_A_UAM (0x00008000)
#define RX_CMD_A_LCSM (0x00004000)
#define RX_CMD_A_LEN (0x00003FFF)
#define RX_CMD_B_CSUM (0xFFFF0000)
#define RX_CMD_B_CSUM_SHIFT (16)
#define RX_CMD_B_VTAG (0x0000FFFF)
/* SCSRs */
#define ID_REV (0x0000)
#define FPGA_REV (0x0004)
#define BOND_CTL (0x0008)
#define INT_STS (0x000C)
#define INT_STS_RDFO_INT (0x00400000)
#define INT_STS_TXE_INT (0x00200000)
#define INT_STS_MACRTO_INT (0x00100000)
#define INT_STS_TX_DIS_INT (0x00080000)
#define INT_STS_RX_DIS_INT (0x00040000)
#define INT_STS_PHY_INT_ (0x00020000)
#define INT_STS_MAC_ERR_INT (0x00008000)
#define INT_STS_TDFU (0x00004000)
#define INT_STS_TDFO (0x00002000)
#define INT_STS_GPIOS (0x00000FFF)
#define INT_STS_CLEAR_ALL (0xFFFFFFFF)
#define HW_CFG (0x0010)
#define HW_CFG_SMDET_STS (0x00008000)
#define HW_CFG_SMDET_EN (0x00004000)
#define HW_CFG_EEM (0x00002000)
#define HW_CFG_RST_PROTECT (0x00001000)
#define HW_CFG_PORT_SWAP (0x00000800)
#define HW_CFG_PHY_BOOST (0x00000600)
#define HW_CFG_PHY_BOOST_NORMAL (0x00000000)
#define HW_CFG_PHY_BOOST_4 (0x00002000)
#define HW_CFG_PHY_BOOST_8 (0x00004000)
#define HW_CFG_PHY_BOOST_12 (0x00006000)
#define HW_CFG_LEDB (0x00000100)
#define HW_CFG_BIR (0x00000080)
#define HW_CFG_SBP (0x00000040)
#define HW_CFG_IME (0x00000020)
#define HW_CFG_MEF (0x00000010)
#define HW_CFG_ETC (0x00000008)
#define HW_CFG_BCE (0x00000004)
#define HW_CFG_LRST (0x00000002)
#define HW_CFG_SRST (0x00000001)
#define PMT_CTL (0x0014)
#define PMT_CTL_PHY_PWRUP (0x00000400)
#define PMT_CTL_RES_CLR_WKP_EN (0x00000100)
#define PMT_CTL_DEV_RDY (0x00000080)
Annotation
- Atlas domain: Driver Families / drivers/net.
- Implementation status: source implementation candidate.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.