IOCTL_NFCSE_SET_ROUTING_TABLE IOCTL (nfcsedev.h)
配置 NFC 控制器侦听模式路由表。 请注意,调用方必须发送单个呼叫中的完整侦听模式路由信息。 调用方应确保路由表小于 4.2.5.1 中定义的 cbMaxRoutingTableSize 值。 总大小根据 NFC NCI 标准秒 6.3.2 计算,等于基于 AID 的路由数 x 4 + cbAid + 基于技术的路由数 x 5 + 基于协议的路由 x 5。 调用方应确保基于技术和协议的路由的值符合 NCI NFC 规范秒 6.3.2。
主要代码
输入缓冲区
SECURE_ELEMENT_ROUTING_TABLE 包含当前配置的所有路由条目。
输出缓冲区
没有
状态块
Irp->IoStatus.Status 设置为 STATUS_SUCCESS(如果请求成功)。 可能的错误代码包括:
返回代码 | 描述 |
---|---|
STATUS_INVALID_BUFFER_SIZE | 提供的缓冲区大于 NFC 控制器MAX_ROUTING_TABLE_SIZE。 |
STATUS_FEATURE_NOT_SUPPORTED | NFCC 不支持侦听模式路由配置。 |
STATUS_INVALID_PARAMETER | 如果输出缓冲区为非零,或者用于技术或协议的值符合 NFC NCI 规范秒 6.3.2,或者使用重复的 AID,或者使用当前 NFC 控制器功能不支持的路由模式时,将返回此状态。 |
STATUS_INVALID_DEVICE_STATE | 如果在具有相对名称“SEManage”的句柄上发送 IOCTL,则返回此代码。 |
言论
以下是驱动程序必须遵循的要求。
- 此 IOCTL 在具有“SEManage”相对文件名的句柄上发送,否则驱动程序必须使用STATUS_INVALID_DEVICE_STATE完成它。
- 驱动程序应具有初始的默认侦听模式路由表条目,这些条目将 RF 技术 A、B 和 F 和/或 ISO-DEP 协议路由到 UICC SE(如果存在)。 这些路由条目稍后可能会被设备主机启动的新侦听模式路由表配置重写。
- 驱动程序应确保协议 NFC-DEP 随时映射到设备主机。 即使调用方未指定此规则,驱动程序也需要隐式添加此规则。
- 如果 NFCC 处于 RF 发现状态时发出此 IOCTL,驱动程序需要将 NFCC 置于 RF 空闲状态、配置路由表并重启 RF 发现。
要求
要求 | 价值 |
---|---|
标头 | nfcsedev.h |