~ruther/qmk_firmware

ref: bba5c14933274d47c88140106de13b1ce9391b01 qmk_firmware/platforms/chibios/hardware_id.c -rw-r--r-- 583 bytes
bba5c149 — Joel Challis Avoid exceptions when layouts contain OOB matrix values (#22609) 1 year, 5 months ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// Copyright 2022 QMK
// SPDX-License-Identifier: GPL-2.0-or-later

#include <ch.h>
#include "hardware_id.h"

hardware_id_t get_hardware_id(void) {
    hardware_id_t id = {0};
#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[2] = (uint32_t)(*((uint32_t *)(UID_BASE + 8)));
#endif
    return id;
}
Do not follow this link