ENUM NFC_ATTRS(9)
πΈ ENUM NFC_ATTRS πΈ
okay bestie, gather round, because this is the enum nfc_attrs page from the Kernel API Manual and it's literally the master list of supported nfc attributes. think of it as the group chat roster for NFC stuff in the kernel β every attribute that gets to be in the enum is listed here, no gatekeeping π
β¨ SYNOPSIS β¨
here's the whole enum, exactly as it lives in the source β do not touch, do not "fix", just vibe with it:
enum nfc_attrs {
NFC_ATTR_UNSPEC ,
NFC_ATTR_DEVICE_INDEX ,
NFC_ATTR_DEVICE_NAME ,
NFC_ATTR_PROTOCOLS ,
NFC_ATTR_TARGET_INDEX ,
NFC_ATTR_TARGET_SENS_RES ,
NFC_ATTR_TARGET_SEL_RES ,
NFC_ATTR_TARGET_NFCID1 ,
NFC_ATTR_TARGET_SENSB_RES ,
NFC_ATTR_TARGET_SENSF_RES ,
NFC_ATTR_COMM_MODE ,
NFC_ATTR_RF_MODE ,
NFC_ATTR_DEVICE_POWERED ,
NFC_ATTR_IM_PROTOCOLS ,
NFC_ATTR_TM_PROTOCOLS ,
NFC_ATTR_LLC_PARAM_LTO ,
NFC_ATTR_LLC_PARAM_RW ,
NFC_ATTR_LLC_PARAM_MIUX ,
NFC_ATTR_SE ,
NFC_ATTR_LLC_SDP ,
NFC_ATTR_FIRMWARE_NAME ,
NFC_ATTR_SE_INDEX ,
NFC_ATTR_SE_TYPE ,
NFC_ATTR_SE_AID ,
NFC_ATTR_FIRMWARE_DOWNLOAD_STATUS ,
NFC_ATTR_SE_APDU ,
NFC_ATTR_TARGET_ISO15693_DSFID ,
NFC_ATTR_TARGET_ISO15693_UID ,
NFC_ATTR_SE_PARAMS ,
NFC_ATTR_VENDOR_ID ,
NFC_ATTR_VENDOR_SUBCMD ,
NFC_ATTR_VENDOR_DATA ,
NFC_ATTR_TARGET_ATS
};
π CONSTANTS π
okay so now the actual lore, one attribute at a time. no skips, we're reading the whole syllabus πβ¨
NFC_ATTR_UNSPECβ the unspecified attribute. it's giving "no thoughts, head empty" placeholder energy πNFC_ATTR_DEVICE_INDEXβ index of the nfc device. it's the device's little ID number π«NFC_ATTR_DEVICE_NAMEβ device name, and heads up: max 8 chars. eight. that's it. keep it cute and short πNFC_ATTR_PROTOCOLSβ nfc protocols, as a bitwise or-ed combination from theNFC_PROTO_*_MASKconstants. mix and match, bestie πNFC_ATTR_TARGET_INDEXβ index of the nfc target π―NFC_ATTR_TARGET_SENS_RESβ NFC-A targets extra information such as NFCID β¨NFC_ATTR_TARGET_SEL_RESβ NFC-A targets extra information, and the manpage literally says it's useful if the target is not NFC-Forum compliant β so like, for the rebels πNFC_ATTR_TARGET_NFCID1β NFC-A targets identifier, max 10 bytes πNFC_ATTR_TARGET_SENSB_RESβ NFC-B targets extra information, max 12 bytes πNFC_ATTR_TARGET_SENSF_RESβ NFC-F targets extra information, max 18 bytes πΈNFC_ATTR_COMM_MODEβ passive or active mode. pick your era πNFC_ATTR_RF_MODEβ initiator or target. are you the one sliding into the DMs or the one receiving? πNFC_ATTR_DEVICE_POWEREDβ-- undescribed --. yeah. the manpage said nothing. we know nothing. iconically mysterious π«₯NFC_ATTR_IM_PROTOCOLSβ initiator mode protocols to poll for π‘NFC_ATTR_TM_PROTOCOLSβ target mode protocols to listen for πNFC_ATTR_LLC_PARAM_LTOβ Link TimeOut parameter β³NFC_ATTR_LLC_PARAM_RWβ Receive Window size parameter πͺNFC_ATTR_LLC_PARAM_MIUXβ MIU eXtension parameter. the x is capitalized, respect it βοΈNFC_ATTR_SEβ Available Secure Elements πNFC_ATTR_LLC_SDPβ-- undescribed --again. the void stares back π³οΈNFC_ATTR_FIRMWARE_NAMEβ Free format firmware version. free format means go off, no rules π¨NFC_ATTR_SE_INDEXβ secure element index π’NFC_ATTR_SE_TYPEβ secure element type, and the options are (UICC or EMBEDDED) π³NFC_ATTR_SE_AIDβ-- undescribed --. third mystery of the page, we love a cryptic queen πNFC_ATTR_FIRMWARE_DOWNLOAD_STATUSβ firmware download operation status π₯NFC_ATTR_SE_APDUβ secure element APDU π¨NFC_ATTR_TARGET_ISO15693_DSFIDβ ISO 15693 Data Storage Format Identifier π·οΈNFC_ATTR_TARGET_ISO15693_UIDβ ISO 15693 Unique Identifier. unique, like you π¦NFC_ATTR_SE_PARAMSβ parameters data from anevt_transactionπ¦NFC_ATTR_VENDOR_IDβ NFC manufacturer unique ID, typically an OUI πNFC_ATTR_VENDOR_SUBCMDβ vendor specific sub command π οΈNFC_ATTR_VENDOR_DATAβ vendor specific data, to be optionally passed to a vendor specific command implementation. optional! no pressure π«ΆNFC_ATTR_TARGET_ATSβ ISO 14443 type A target Answer To Select. ATS, not the other thing π¬
π SEE ALSO π
go read these next, i promise they're worth it:
- Kernel file
./include/uapi/linux/nfc.h enum nfc_commands(9)
okay that's the whole page, you ate that honestly π
π₯ this came from ./include/uapi/linux, dated October 2026 β stay iconic, bestie, and go read your headers πβ¨π¦
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms