11#if PC_ENABLE_WEARLEVEL
13size_t pc_wearlevel_pick(
const uint32_t *counts,
size_t n)
15 if (!counts || n == 0)
20 uint32_t lowest = counts[0];
21 for (
size_t i = 1; i < n; i++)
23 if (counts[i] < lowest)
32void pc_wearlevel_mark(uint32_t *counts,
size_t n,
size_t idx)
34 if (!counts || idx >= n)
38 if (counts[idx] != 0xFFFFFFFFu)
44uint32_t pc_wearlevel_spread(
const uint32_t *counts,
size_t n)
46 if (!counts || n == 0)
50 uint32_t lo = counts[0];
51 uint32_t hi = counts[0];
52 for (
size_t i = 1; i < n; i++)
Flash wear-leveling slot selector (PC_ENABLE_WEARLEVEL).