Daniel Schaefer 84e018fecf lotus: Read serial number from flash
Signed-off-by: Daniel Schaefer <dhs@frame.work>
2023-01-16 17:56:52 +08:00

41 lines
947 B
C

// Copyright 2022 Framework Computer
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#include "quantum.h"
#ifdef KEYBOARD_lotus_ansi
#include "ansi.h"
#elif KEYBOARD_lotus_iso
#include "iso.h"
#elif KEYBOARD_lotus_jis
#include "jis.h"
#elif KEYBOARD_lotus_numpad
#include "numpad.h"
#elif KEYBOARD_lotus_gridpad
#include "gridpad.h"
#endif
enum lotus_keycodes {
// Custom keycode to change screen modes (e.g. enable external screen)
KC_SCRN = SAFE_RANGE,
};
#define SLEEP_GPIO GP0
#define MUX_ENABLE_GPIO GP4
#define BOOT_DONE_GPIO GP5
// Pin SDB to enable the RGB controller
#ifdef PICO_LOTUS
// 22 only on RPi Pico because it doesn't have GP29
#define IS31FL3743A_ENABLE_GPIO GP22
#else
#define IS31FL3743A_ENABLE_GPIO GP29
#endif
void *lotus_serial_number_string(void);
uint16_t lotus_serial_number_string_len(void);
#define FLASH_OFFSET 0x10000000
#define LAST_4K_BLOCK 0xff000
#define SERIALNUM_LEN 18