NCI 版本参数应编码为 8 位字段,由两个 4 位无符号值组成,表示本规范的主要和次要版本级别。 最高有效 4 位应表示主要版本级别。 最低有效 4 位应表示本规范的次要版本级别。
如果 DH 支持 NFCC 报告的主要版本,则 DH 应继续通信,并且不应使用比 NFCC 报告的更高次要版本的命令、RFU 值或 RFU 字段。
CORE_RESET_CMD 由 DH 发出,用于重置 NFCC。 该命令可以在 NFCC 通电后随时发出。 如果 DH 发送 CORE_RESET_CMD,它将忽略除 CORE_RESET_RSP 之外的所有消息。 一旦 DH 收到 CORE_RESET_RSP,它就不会发送任何其他命令,直到收到 CORE_RESET_NTF。
收到 CORE_RESET_CMD 后,NFCC 应以 CORE_RESET_RSP 响应,状态设置为 STATUS_OK,并开始其重置过程。 完成重置过程后,NFCC 应发送 CORE_RESET_NTF 通知 DH NFCC 已重置。
成功重置后,DH 可以发送专有命令,NFCC 可以发送专有响应和通知。 CORE_RESET_CMD 允许使用 Reset Type 参数定义不同的重置类型。 CORE_RESET_NTF 中的配置状态参数向 DH 通知重置后 NCI RF 配置的状态。
笔记
这允许不同的 NFCC 实现:某些 NFCC 可能具有用于 NCI RF 配置的持久内存,因此不需要 DH 在重置后重新配置。 其他人可能没有 NCI RF 配置的持久内存。 DH 可以使用 Reset Type 参数强制重置配置。 DH根据Configuration Status值知道重置后是否需要配置NFCC。
如果重置类型已设置为 0x00,则 CORE_RESET_NTF 中的配置状态应设置为 0x00 或 0x01。
如果复位类型已设置为 0x01,则 CORE_RESET_NTF 中的配置状态应设置为 0x01。
对于所有配置状态值,用于 NCI 数据和控制数据包交换的缓冲区中的所有数据应被删除,并且缓冲区应被释放。
在这种情况下,NCI RF 配置应包括:
侦听模式路由表和强制 NFCEE 路由状态(请参阅第 6.3 节)
所有配置参数(有关配置参数列表,请参阅表 138)
RF 接口映射配置(参见第 6.2 节)。
如果CORE_RESET_NTF中的配置状态等于0x01,则NCI RF配置应已重置,其中包括:
删除侦听模式路由表的所有条目并禁用强制 NFCEE 路由
将所有配置参数恢复为其默认值
擦除 RF 接口映射配置。
如果配置状态等于 0x00,则 NCI RF 配置应与复位前相同。 在这种情况下,NFCEE 到 NFCEE ID 的 NFCC 内部映射也应保持不变(否则侦听模式路由表将被损坏)。
NFCC 还可以自行重置(没有收到 CORE_RESET_CMD); 例如,在发生内部错误的情况下。 在这些情况下,NFCC 应通过 CORE_RESET_NTF 通知 DH。 原因代码应反映内部复位原因,配置状态应反映 NCI RF 配置的状态。
成功复位后,应执行第 4.2 节中指定的 NCI 初始化。
4.2 Initialization of NFCC
These Control Messages are used to initialize the NFCC.
一组位,用于启用或禁用某些 NFCC 功能,这些功能可能会导致实现规范的早期次要版本级别的 DH 出现兼容性问题。 在所有情况下,0 表示禁用该功能以确保向后兼容操作。 参见表 9。