[sw/silicon_creator] Set bank erase permissions in bootstrap
Signed-off-by: Alphan Ulusoy <alphan@google.com>
diff --git a/sw/device/silicon_creator/mask_rom/bootstrap.c b/sw/device/silicon_creator/mask_rom/bootstrap.c
index 53ff861..c09a4d1 100644
--- a/sw/device/silicon_creator/mask_rom/bootstrap.c
+++ b/sw/device/silicon_creator/mask_rom/bootstrap.c
@@ -69,19 +69,11 @@
* @return Result of the operation.
*/
static rom_error_t bootstrap_chip_erase(void) {
- flash_ctrl_data_default_perms_set((flash_ctrl_perms_t){
- .read = kMultiBitBool4False,
- .write = kMultiBitBool4False,
- .erase = kMultiBitBool4True,
- });
+ flash_ctrl_bank_erase_perms_set(kHardenedBoolTrue);
rom_error_t err_0 = flash_ctrl_data_erase(0, kFlashCtrlEraseTypeBank);
rom_error_t err_1 = flash_ctrl_data_erase(FLASH_CTRL_PARAM_BYTES_PER_BANK,
kFlashCtrlEraseTypeBank);
- flash_ctrl_data_default_perms_set((flash_ctrl_perms_t){
- .read = kMultiBitBool4False,
- .write = kMultiBitBool4False,
- .erase = kMultiBitBool4False,
- });
+ flash_ctrl_bank_erase_perms_set(kHardenedBoolFalse);
HARDENED_RETURN_IF_ERROR(err_0);
return err_1;
diff --git a/sw/device/silicon_creator/mask_rom/bootstrap_unittest.cc b/sw/device/silicon_creator/mask_rom/bootstrap_unittest.cc
index 7996616..2e62f18 100644
--- a/sw/device/silicon_creator/mask_rom/bootstrap_unittest.cc
+++ b/sw/device/silicon_creator/mask_rom/bootstrap_unittest.cc
@@ -75,17 +75,6 @@
}
/**
- * Sets an expectation for enabling erase for the data partition.
- */
- void ExpectFlashCtrlEraseEnable() {
- EXPECT_CALL(flash_ctrl_, DataDefaultPermsSet((flash_ctrl_perms_t){
- .read = kMultiBitBool4False,
- .write = kMultiBitBool4False,
- .erase = kMultiBitBool4True,
- }));
- }
-
- /**
* Sets an expectation for enabling write for the data partition.
*/
void ExpectFlashCtrlWriteEnable() {
@@ -114,13 +103,13 @@
* @param err1 Result of erase for the second bank.
*/
void ExpectFlashCtrlChipErase(rom_error_t err0, rom_error_t err1) {
- ExpectFlashCtrlEraseEnable();
+ EXPECT_CALL(flash_ctrl_, BankErasePermsSet(kHardenedBoolTrue));
EXPECT_CALL(flash_ctrl_, DataErase(0, kFlashCtrlEraseTypeBank))
.WillOnce(Return(err0));
EXPECT_CALL(flash_ctrl_, DataErase(FLASH_CTRL_PARAM_BYTES_PER_BANK,
kFlashCtrlEraseTypeBank))
.WillOnce(Return(err1));
- ExpectFlashCtrlAllDisable();
+ EXPECT_CALL(flash_ctrl_, BankErasePermsSet(kHardenedBoolFalse));
}
/**
@@ -132,7 +121,11 @@
*/
void ExpectFlashCtrlSectorErase(rom_error_t err0, rom_error_t err1,
uint32_t addr) {
- ExpectFlashCtrlEraseEnable();
+ EXPECT_CALL(flash_ctrl_, DataDefaultPermsSet((flash_ctrl_perms_t){
+ .read = kMultiBitBool4False,
+ .write = kMultiBitBool4False,
+ .erase = kMultiBitBool4True,
+ }));
EXPECT_CALL(flash_ctrl_, DataErase(addr, kFlashCtrlEraseTypePage))
.WillOnce(Return(err0));
EXPECT_CALL(flash_ctrl_, DataErase(addr + FLASH_CTRL_PARAM_BYTES_PER_PAGE,