-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Closed
Description
I have application which uses "Wifi Firmware" partition functionality:
pico_use_wifi_firmware_partition(efis NO_EMBEDDED_PT)
The partition definition is as follows:
{
"name": "Wi-Fi Firmware",
"id": "0x776966696669726d",
"start": "3500k",
"size": "240K",
"families": ["data"],
"permissions": {
"secure": "rw",
"nonsecure": "rw",
"bootloader": "rw"
},
"link": ["owner", 0],
"ignored_during_riscv_boot": true,
"no_reboot_on_uf2_download": true
},
It works well but not in secure boot mode. The same firmware works on module without secure boot (works including Bluetooth functionality), but it doesn't work on module with secure boot enabled, it fails in partition check:
uint32_t* workarea = malloc(0x1000);
picked_p = rom_pick_ab_partition_during_update(workarea, 0x1000, picked_p);
free(workarea);
#ifdef __riscv
// Reset bootrom stack
rom_set_bootrom_stack(&stack);
free(stack.base);
#endif
if (picked_p < 0) {
if (picked_p == BOOTROM_ERROR_NOT_FOUND) {
CYW43_DEBUG("Chosen CYW43 firmware partition was not verified\n");
picked_p is BOOTROM_ERROR_NOT_FOUND
Metadata
Metadata
Assignees
Labels
No labels