include/net/ieee802154_netdev.h
Source file repositories/reference/linux-study-clean/include/net/ieee802154_netdev.h
File Facts
- System
- Linux kernel
- Corpus path
include/net/ieee802154_netdev.h- Extension
.h- Size
- 13335 bytes
- Lines
- 523
- Domain
- Networking Core
- Bucket
- Sockets, Protocols, Packet Path, And Network Policy
- Inferred role
- Networking Core: implementation source
- Status
- source implementation candidate
Why This File Exists
Networking stack implementation surface: socket APIs, protocol dispatch, packet flow, routing, filtering, and network namespaces.
- Networking stack implementation surface: socket APIs, protocol dispatch, packet flow, routing, filtering, and network namespaces.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
net/af_ieee802154.hlinux/netdevice.hlinux/skbuff.hlinux/ieee802154.hnet/cfg802154.h
Detected Declarations
struct ieee802154_beacon_hdrstruct ieee802154_mac_cmd_plstruct ieee802154_sechdrstruct ieee802154_hdr_fcstruct ieee802154_assoc_req_plstruct ieee802154_assoc_resp_plstruct ieee802154_hdrstruct ieee802154_beacon_framestruct ieee802154_mac_cmd_framestruct ieee802154_beacon_req_framestruct ieee802154_association_req_framestruct ieee802154_association_resp_framestruct ieee802154_disassociation_notif_framestruct ieee802154_mac_cbstruct ieee802154_mac_paramsstruct wpan_phystruct ieee802154_llsec_opsstruct ieee802154_mlme_opsenum ieee802154_frame_versionenum ieee802154_addressing_modeenum ieee802154_association_statusenum ieee802154_disassociation_reasonfunction ieee802154_sechdr_authtag_lenfunction ieee802154_hdr_lengthfunction ieee802154_addr_equalfunction ieee802154_devaddr_from_rawfunction ieee802154_devaddr_to_rawfunction ieee802154_sockaddr_check_sizefunction ieee802154_addr_from_safunction ieee802154_addr_to_safunction ieee802154_mlme_ops
Annotated Snippet
struct ieee802154_beacon_hdr {
#if defined(__LITTLE_ENDIAN_BITFIELD)
u16 beacon_order:4,
superframe_order:4,
final_cap_slot:4,
battery_life_ext:1,
reserved0:1,
pan_coordinator:1,
assoc_permit:1;
u8 gts_count:3,
gts_reserved:4,
gts_permit:1;
u8 pend_short_addr_count:3,
reserved1:1,
pend_ext_addr_count:3,
reserved2:1;
#elif defined(__BIG_ENDIAN_BITFIELD)
u16 assoc_permit:1,
pan_coordinator:1,
reserved0:1,
battery_life_ext:1,
final_cap_slot:4,
superframe_order:4,
beacon_order:4;
u8 gts_permit:1,
gts_reserved:4,
gts_count:3;
u8 reserved2:1,
pend_ext_addr_count:3,
reserved1:1,
pend_short_addr_count:3;
#else
#error "Please fix <asm/byteorder.h>"
#endif
} __packed;
struct ieee802154_mac_cmd_pl {
u8 cmd_id;
} __packed;
struct ieee802154_sechdr {
#if defined(__LITTLE_ENDIAN_BITFIELD)
u8 level:3,
key_id_mode:2,
reserved:3;
#elif defined(__BIG_ENDIAN_BITFIELD)
u8 reserved:3,
key_id_mode:2,
level:3;
#else
#error "Please fix <asm/byteorder.h>"
#endif
u8 key_id;
__le32 frame_counter;
union {
__le32 short_src;
__le64 extended_src;
};
};
struct ieee802154_hdr_fc {
#if defined(__LITTLE_ENDIAN_BITFIELD)
u16 type:3,
security_enabled:1,
frame_pending:1,
ack_request:1,
intra_pan:1,
reserved:3,
dest_addr_mode:2,
version:2,
source_addr_mode:2;
#elif defined(__BIG_ENDIAN_BITFIELD)
u16 reserved:1,
intra_pan:1,
ack_request:1,
frame_pending:1,
security_enabled:1,
type:3,
source_addr_mode:2,
version:2,
dest_addr_mode:2,
reserved2:2;
#else
#error "Please fix <asm/byteorder.h>"
#endif
};
struct ieee802154_assoc_req_pl {
#if defined(__LITTLE_ENDIAN_BITFIELD)
u8 reserved1:1,
Annotation
- Immediate include surface: `net/af_ieee802154.h`, `linux/netdevice.h`, `linux/skbuff.h`, `linux/ieee802154.h`, `net/cfg802154.h`.
- Detected declarations: `struct ieee802154_beacon_hdr`, `struct ieee802154_mac_cmd_pl`, `struct ieee802154_sechdr`, `struct ieee802154_hdr_fc`, `struct ieee802154_assoc_req_pl`, `struct ieee802154_assoc_resp_pl`, `struct ieee802154_hdr`, `struct ieee802154_beacon_frame`, `struct ieee802154_mac_cmd_frame`, `struct ieee802154_beacon_req_frame`.
- Atlas domain: Networking Core / Sockets, Protocols, Packet Path, And Network Policy.
- 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.