summaryrefslogtreecommitdiffstats
path: root/platforms/avr
diff options
context:
space:
mode:
authorJoel Challis <git@zvecr.com>2022-04-18 11:51:40 +0100
committerGitHub <noreply@github.com>2022-04-18 20:51:40 +1000
commitb8245a550752ed3826902f63a75203c67282ace7 (patch)
tree967e46a6a071dffb14f3fe44a11771ad64cc5ba0 /platforms/avr
parent7aa9a353ac6e2ee095ad8c6695f62f0bafe7b6f3 (diff)
Expose API for hardware unique ID (#16869)
Diffstat (limited to 'platforms/avr')
-rw-r--r--platforms/avr/hardware_id.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/platforms/avr/hardware_id.c b/platforms/avr/hardware_id.c
new file mode 100644
index 0000000000..073834c19c
--- /dev/null
+++ b/platforms/avr/hardware_id.c
@@ -0,0 +1,13 @@
+// Copyright 2022 QMK
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#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;
+}