qmk/platforms/avr/hardware_id.c
Nick Brassel f50a623909
Fixup AVR builds. (#16875)
* Fixup AVR builds.

* Update platforms/avr/hardware_id.c

Co-authored-by: Ryan <fauxpark@gmail.com>

Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2022-04-18 15:39:45 +01:00

20 lines
558 B
C

// Copyright 2022 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
// For some reason this bit is undocumented for some AVR parts and not defined in their avr-libc IO headers
// See https://stackoverflow.com/questions/12350914/how-to-read-atmega-32-signature-row
#ifndef SIGRD
# define SIGRD 5
#endif // SIGRD
#include <avr/boot.h>
#include "hardware_id.h"
hardware_id_t get_hardware_id(void) {
hardware_id_t id = {0};
for (uint8_t i = 0; i < 10; i += 1) {
((uint8_t*)&id)[i] = boot_signature_byte_get(i + 0x0E);
}
return id;
}