diff options
Diffstat (limited to 'platforms/chibios/hardware_id.c')
| -rw-r--r-- | platforms/chibios/hardware_id.c | 9 | 
1 files changed, 7 insertions, 2 deletions
| diff --git a/platforms/chibios/hardware_id.c b/platforms/chibios/hardware_id.c index 888a275465..1097db5966 100644 --- a/platforms/chibios/hardware_id.c +++ b/platforms/chibios/hardware_id.c @@ -6,10 +6,15 @@  hardware_id_t get_hardware_id(void) {      hardware_id_t id = {0}; -#ifdef UID_BASE +#if defined(RP2040) +    // Forward declare as including "hardware/flash.h" here causes more issues... +    void flash_get_unique_id(uint8_t *); + +    flash_get_unique_id((uint8_t *)&id); +#elif defined(UID_BASE)      id.data[0] = (uint32_t)(*((uint32_t *)UID_BASE));      id.data[1] = (uint32_t)(*((uint32_t *)(UID_BASE + 4))); -    id.data[1] = (uint32_t)(*((uint32_t *)(UID_BASE + 8))); +    id.data[2] = (uint32_t)(*((uint32_t *)(UID_BASE + 8)));  #endif      return id;  } | 
