Skip to content

Commit

Permalink
Revert "bootutil: Fix wrong definition of find_swap_count"
Browse files Browse the repository at this point in the history
This reverts commit ab4fb32.

This was a wrong change and was caused by a faulty TFM board

Signed-off-by: Jamie McCrae <[email protected]>
  • Loading branch information
nordicjm committed Sep 10, 2024
1 parent f51a014 commit 6376b4c
Showing 1 changed file with 29 additions and 31 deletions.
60 changes: 29 additions & 31 deletions boot/bootutil/src/swap_scratch.c
Original file line number Diff line number Diff line change
Expand Up @@ -492,6 +492,35 @@ find_last_sector_idx(const struct boot_loader_state *state, uint32_t copy_size)
return last_sector_idx;
}

/**
* Finds the number of swap operations that have to be performed to swap the two images.
*
* @param state Current bootloader's state.
* @param copy_size Total number of bytes to swap.
*
* @return The number of swap operations that have to be performed.
*/
static uint32_t
find_swap_count(const struct boot_loader_state *state, uint32_t copy_size)
{
int first_sector_idx;
int last_sector_idx;
uint32_t swap_count;

last_sector_idx = find_last_sector_idx(state, copy_size);

swap_count = 0;

while (last_sector_idx >= 0) {
boot_copy_sz(state, last_sector_idx, &first_sector_idx);

last_sector_idx = first_sector_idx - 1;
swap_count++;
}

return swap_count;
}

/**
* Swaps the contents of two flash regions within the two image slots.
*
Expand Down Expand Up @@ -732,37 +761,6 @@ swap_run(struct boot_loader_state *state, struct boot_status *bs,
}
#endif /* !MCUBOOT_OVERWRITE_ONLY */

#ifdef MCUBOOT_SWAP_USING_SCRATCH
/**
* Finds the number of swap operations that have to be performed to swap the two images.
*
* @param state Current bootloader's state.
* @param copy_size Total number of bytes to swap.
*
* @return The number of swap operations that have to be performed.
*/
static uint32_t
find_swap_count(const struct boot_loader_state *state, uint32_t copy_size)
{
int first_sector_idx;
int last_sector_idx;
uint32_t swap_count;

last_sector_idx = find_last_sector_idx(state, copy_size);

swap_count = 0;

while (last_sector_idx >= 0) {
boot_copy_sz(state, last_sector_idx, &first_sector_idx);

last_sector_idx = first_sector_idx - 1;
swap_count++;
}

return swap_count;
}
#endif /* MCUBOOT_SWAP_USING_SCRATCH */

int app_max_size(struct boot_loader_state *state)
{
size_t num_sectors_primary;
Expand Down

0 comments on commit 6376b4c

Please sign in to comment.