Mailbox Client Intel® FPGA IP用户指南

ID 683290
日期 12/04/2023
Public
文档目录

1.10.2.3. 无有效SPT或CPB的情况下使用LibRSU HAL API

当flash存储器中的SPT或CPB损坏时,您可以使用LibRSU HAL API,但功能性会减少。Intel 提供专门的API来恢复已保存的SPT或CPB,以及创建空的 CPB。使用这些API修复CPB和SPT后,即可使用完整的RSU功能。

表 26.  无有效SPT或CPB的LibRSU HAL API
数据损坏 影响
单个SPT或单个CPB librsu_init函数从正确的副本中将其恢复。
两个SPT librsu_init仍然成功(返回代码0),但某些函数在被调用时返回错误代码ECORRUPTED_SPT。两个SPT均已损坏,导致librsu_init无法识别CPB的位置,并且认为CPB损坏。
两个CPB librsu_init仍然成功(返回代码0),但某些函数在被调用时返回错误代码ECORRUPTED_CPB
注: 处理器实现Functions时,需要在启用整个应用程序的开头调用函数librsu_init,并以librsu_exit结束。对于RSU Client API并不必要。

下表列出了需要有效SPT或CPB的API。

表 27.  需要有效SPT或CPB的函数
函数 需要有效SPT 需要有效CPB
librsu_init    
librsu_exit    
rsu_slot_count Yes  
rsu_slot_by_name Yes  
rsu_slot_get_info Yes Yes
rsu_slot_size Yes  
rsu_slot_priority Yes Yes
rsu_slot_erase Yes Yes
rsu_slot_program_buf Yes Yes
rsu_slot_verify_buf Yes Yes
rsu_slot_program_callback Yes Yes
rsu_slot_verify_callback Yes Yes
rsu_slot_copy_to_buf Yes Yes
rsu_slot_enable Yes Yes
rsu_slot_disable Yes Yes
rsu_slot_load Yes Yes
rsu_slot_load_factory Yes  
rsu_slot_rename Yes  
rsu_slot_delete Yes Yes
rsu_slot_create Yes  
rsu_status_log    
rsu_clear_error_status    
rsu_dcmf_version    
rsu_max_retry    
rsu_dcmf_status    
rsu_create_empty_cpb    
rsu_restore_cpb    
rsu_save_cpb   Yes
rsu_restore_spt    
rsu_save_spt Yes  
rsu_running_factory Yes