Visible to Intel only — GUID: mvw1660705574803
Ixiasoft
Visible to Intel only — GUID: mvw1660705574803
Ixiasoft
1.11.2.3. Using LibRSU HAL API without Valid SPT or CPB
You can use the LibRSU HAL APIs when the SPTs or CPBs in flash are corrupted, but with reduced functionality. Altera provides specialized APIs to restore a saved SPT or CPB, and also to create an empty CPB. After the CPBs and SPTs are repaired using these APIs, the full RSU functionality is available.
Data Corruption | Impact |
---|---|
Single SPT or Single CPB | The librsu_init function restores it from the good copy. |
Both SPTs | The librsu_init is still successful (return code 0) but some of the functions returns the error code ECORRUPTED_SPT when called. Both SPTs being corrupted cause librsu_init to not be able to identify the location of the CPBs, and the CPBs is also considered as corrupted. |
Both CPBs | The librsu_init is still successful (return code 0) but some of the functions returns the error code ECORRUPTED_CPB when called. |
The table below lists which APIs require valid SPT or CPB.
Functions | Requires Valid SPT | Requires Valid 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 |