include/net/nfc/nci.h
Source file repositories/reference/linux-study-clean/include/net/nfc/nci.h
File Facts
- System
- Linux kernel
- Corpus path
include/net/nfc/nci.h- Extension
.h- Size
- 16166 bytes
- Lines
- 562
- 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/nfc/nfc.h
Detected Declarations
struct nci_ctrl_hdrstruct nci_data_hdrstruct nci_core_reset_cmdstruct nci_core_init_v2_cmdstruct set_config_paramstruct nci_core_set_config_cmdstruct dest_spec_paramsstruct core_conn_create_dest_spec_paramsstruct nci_core_conn_create_cmdstruct disc_map_configstruct nci_rf_disc_map_cmdstruct disc_configstruct nci_rf_disc_cmdstruct nci_rf_discover_select_cmdstruct nci_rf_deactivate_cmdstruct nci_nfcee_discover_cmdstruct nci_nfcee_mode_set_cmdstruct nci_core_reset_rspstruct nci_core_init_rsp_1struct nci_core_init_rsp_2struct nci_core_init_rsp_nci_ver2struct nci_core_set_config_rspstruct nci_core_conn_create_rspstruct nci_nfcee_discover_rspstruct nci_core_reset_ntfstruct conn_credit_entrystruct nci_core_conn_credit_ntfstruct nci_core_intf_error_ntfstruct rf_tech_specific_params_nfca_pollstruct rf_tech_specific_params_nfcb_pollstruct rf_tech_specific_params_nfcf_pollstruct rf_tech_specific_params_nfcv_pollstruct rf_tech_specific_params_nfcf_listenstruct nci_rf_discover_ntfstruct activation_params_nfca_poll_iso_depstruct activation_params_nfcb_poll_iso_depstruct activation_params_poll_nfc_depstruct activation_params_listen_nfc_depstruct nci_rf_intf_activated_ntfstruct nci_rf_deactivate_ntfstruct nci_rf_nfcee_action_ntfstruct nci_nfcee_supported_protocolstruct nci_nfcee_information_tlvstruct nci_nfcee_discover_ntf
Annotated Snippet
struct nci_ctrl_hdr {
__u8 gid; /* MT & PBF & GID */
__u8 oid;
__u8 plen;
} __packed;
struct nci_data_hdr {
__u8 conn_id; /* MT & PBF & ConnID */
__u8 rfu;
__u8 plen;
} __packed;
/* ------------------------ */
/* ----- NCI Commands ---- */
/* ------------------------ */
#define NCI_OP_CORE_RESET_CMD nci_opcode_pack(NCI_GID_CORE, 0x00)
struct nci_core_reset_cmd {
__u8 reset_type;
} __packed;
#define NCI_OP_CORE_INIT_CMD nci_opcode_pack(NCI_GID_CORE, 0x01)
/* To support NCI 2.x */
struct nci_core_init_v2_cmd {
u8 feature1;
u8 feature2;
};
#define NCI_OP_CORE_SET_CONFIG_CMD nci_opcode_pack(NCI_GID_CORE, 0x02)
struct set_config_param {
__u8 id;
__u8 len;
__u8 val[NCI_MAX_PARAM_LEN];
} __packed;
struct nci_core_set_config_cmd {
__u8 num_params;
struct set_config_param param; /* support 1 param per cmd is enough */
} __packed;
#define NCI_OP_CORE_CONN_CREATE_CMD nci_opcode_pack(NCI_GID_CORE, 0x04)
#define DEST_SPEC_PARAMS_ID_INDEX 0
#define DEST_SPEC_PARAMS_PROTOCOL_INDEX 1
struct dest_spec_params {
__u8 id;
__u8 protocol;
} __packed;
struct core_conn_create_dest_spec_params {
__u8 type;
__u8 length;
__u8 value[];
} __packed;
struct nci_core_conn_create_cmd {
__u8 destination_type;
__u8 number_destination_params;
struct core_conn_create_dest_spec_params params[];
} __packed;
#define NCI_OP_CORE_CONN_CLOSE_CMD nci_opcode_pack(NCI_GID_CORE, 0x05)
#define NCI_OP_RF_DISCOVER_MAP_CMD nci_opcode_pack(NCI_GID_RF_MGMT, 0x00)
struct disc_map_config {
__u8 rf_protocol;
__u8 mode;
__u8 rf_interface;
} __packed;
struct nci_rf_disc_map_cmd {
__u8 num_mapping_configs;
struct disc_map_config mapping_configs
[NCI_MAX_NUM_MAPPING_CONFIGS];
} __packed;
#define NCI_OP_RF_DISCOVER_CMD nci_opcode_pack(NCI_GID_RF_MGMT, 0x03)
struct disc_config {
__u8 rf_tech_and_mode;
__u8 frequency;
} __packed;
struct nci_rf_disc_cmd {
__u8 num_disc_configs;
struct disc_config disc_configs[NCI_MAX_NUM_RF_CONFIGS];
} __packed;
#define NCI_OP_RF_DISCOVER_SELECT_CMD nci_opcode_pack(NCI_GID_RF_MGMT, 0x04)
struct nci_rf_discover_select_cmd {
__u8 rf_discovery_id;
__u8 rf_protocol;
__u8 rf_interface;
Annotation
- Immediate include surface: `net/nfc/nfc.h`.
- Detected declarations: `struct nci_ctrl_hdr`, `struct nci_data_hdr`, `struct nci_core_reset_cmd`, `struct nci_core_init_v2_cmd`, `struct set_config_param`, `struct nci_core_set_config_cmd`, `struct dest_spec_params`, `struct core_conn_create_dest_spec_params`, `struct nci_core_conn_create_cmd`, `struct disc_map_config`.
- 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.