From 6f996c67c20e28df8d5be89948c8e274a479c2c4 Mon Sep 17 00:00:00 2001 From: Pol Henarejos Date: Sun, 1 Feb 2026 20:33:39 +0100 Subject: [PATCH] Fix phy marker write. Signed-off-by: Pol Henarejos --- src/fs/low_flash.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/fs/low_flash.c b/src/fs/low_flash.c index 36ca3c7..3c72333 100644 --- a/src/fs/low_flash.c +++ b/src/fs/low_flash.c @@ -406,10 +406,12 @@ void phymarker_write() { memcpy(pm.uid, pico_serial.id, PICO_UNIQUE_BOARD_ID_SIZE_BYTES); pm.crc32 = crc32c((const uint8_t *)&pm, sizeof(phymarker_t) - sizeof(uint32_t)); + uint8_t buf[FLASH_PAGE_SIZE] = {0}; + memcpy(buf, &pm, sizeof(phymarker_t)); uint32_t ints = save_and_disable_interrupts(); flash_range_erase((uint32_t)__phymarker_start - XIP_BASE, FLASH_SECTOR_SIZE); - flash_range_program((uint32_t)__phymarker_start - XIP_BASE, (const uint8_t *)&pm, sizeof(phymarker_t)); + flash_range_program((uint32_t)__phymarker_start - XIP_BASE, (const uint8_t *)buf, sizeof(buf)); restore_interrupts(ints); }