include/linux/smsc911x.h
Source file repositories/reference/linux-study-clean/include/linux/smsc911x.h
File Facts
- System
- Linux kernel
- Corpus path
include/linux/smsc911x.h- Extension
.h- Size
- 1670 bytes
- Lines
- 51
- Domain
- Core OS
- Bucket
- Core Kernel Interface
- Inferred role
- Core OS: implementation source
- Status
- source implementation candidate
Why This File Exists
Core operating-system implementation surface: boot, tasks, memory, VFS, syscall-facing interfaces, synchronization, credentials, and isolation.
- Core operating-system implementation surface: boot, tasks, memory, VFS, syscall-facing interfaces, synchronization, credentials, and isolation.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
linux/phy.hlinux/if_ether.h
Detected Declarations
struct smsc911x_platform_config
Annotated Snippet
struct smsc911x_platform_config {
unsigned int irq_polarity;
unsigned int irq_type;
unsigned int flags;
unsigned int shift;
phy_interface_t phy_interface;
unsigned char mac[ETH_ALEN];
};
/* Constants for platform_device irq polarity configuration */
#define SMSC911X_IRQ_POLARITY_ACTIVE_LOW 0
#define SMSC911X_IRQ_POLARITY_ACTIVE_HIGH 1
/* Constants for platform_device irq type configuration */
#define SMSC911X_IRQ_TYPE_OPEN_DRAIN 0
#define SMSC911X_IRQ_TYPE_PUSH_PULL 1
/* Constants for flags */
#define SMSC911X_USE_16BIT (BIT(0))
#define SMSC911X_USE_32BIT (BIT(1))
#define SMSC911X_FORCE_INTERNAL_PHY (BIT(2))
#define SMSC911X_FORCE_EXTERNAL_PHY (BIT(3))
#define SMSC911X_SAVE_MAC_ADDRESS (BIT(4))
/*
* SMSC911X_SWAP_FIFO:
* Enables software byte swap for fifo data. Should only be used as a
* "last resort" in the case of big endian mode on boards with incorrectly
* routed data bus to older devices such as LAN9118. Newer devices such as
* LAN9221 can handle this in hardware, there are registers to control
* this swapping but the driver doesn't currently use them.
*/
#define SMSC911X_SWAP_FIFO (BIT(5))
#endif /* __LINUX_SMSC911X_H__ */
Annotation
- Immediate include surface: `linux/phy.h`, `linux/if_ether.h`.
- Detected declarations: `struct smsc911x_platform_config`.
- Atlas domain: Core OS / Core Kernel Interface.
- 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.