|
|
@@ -126,13 +126,10 @@ void nv_save_all_soc(void){
|
|
|
nv_save_soc_by_backup(1);
|
|
|
}
|
|
|
|
|
|
-void nv_erase(void){
|
|
|
+void nv_erase_soc(int index){
|
|
|
uint8_t data = 0xFF;
|
|
|
for (int i = 0; i < sizeof(soc_t) + sizeof(uint16_t); i++){
|
|
|
- AT24CXX_Write(SOC_ADDR + i, &data, 1);
|
|
|
- }
|
|
|
- for (int i = 0; i < sizeof(soc_t) + sizeof(uint16_t); i++){
|
|
|
- AT24CXX_Write(SOC_ADDR + SOC_SIZE + i, &data, 1);
|
|
|
+ AT24CXX_Write(SOC_ADDR + SOC_SIZE * index + i, &data, 1);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -170,6 +167,7 @@ int nv_restore_soc(void){
|
|
|
nv_save_soc_by_backup(0);
|
|
|
}
|
|
|
}
|
|
|
+ sys_debug("soc bk0=%d, bk1=%d\n", success0, success1);
|
|
|
return ((success0 == 0) || (success1 == 0))?0:-1;
|
|
|
}
|
|
|
|