mirror of
https://github.com/tillitis/tillitis-key1.git
synced 2025-12-04 22:23:43 -05:00
tkey-libs: Import tag fw-3 of tkey-libs
- Use tag fw-3 from https://github.com/tillitis/tkey-libs/
This commit is contained in:
parent
d0c049cdba
commit
81f3195592
19 changed files with 861 additions and 79 deletions
|
|
@ -14,9 +14,8 @@
|
|||
#elif defined(TKEY_DEBUG)
|
||||
|
||||
#define assert(expr) \
|
||||
((expr) \
|
||||
? (void)(0) \
|
||||
: assert_fail(IO_TKEYCTRL, #expr, __FILE__, __LINE__, __func__))
|
||||
((expr) ? (void)(0) \
|
||||
: assert_fail(IO_DEBUG, #expr, __FILE__, __LINE__, __func__))
|
||||
|
||||
#else
|
||||
|
||||
|
|
|
|||
|
|
@ -1,22 +0,0 @@
|
|||
// SPDX-FileCopyrightText: 2023 Tillitis AB <tillitis.se>
|
||||
// SPDX-License-Identifier: BSD-2-Clause
|
||||
|
||||
#ifndef TKEY_BLAKE2S_H
|
||||
#define TKEY_BLAKE2S_H
|
||||
|
||||
#include <stddef.h>
|
||||
#include <stdint.h>
|
||||
|
||||
// blake2s state context
|
||||
typedef struct {
|
||||
uint8_t b[64]; // input buffer
|
||||
uint32_t h[8]; // chained state
|
||||
uint32_t t[2]; // total number of bytes
|
||||
size_t c; // pointer for b[]
|
||||
size_t outlen; // digest size
|
||||
} blake2s_ctx;
|
||||
|
||||
int blake2s(void *out, unsigned long outlen, const void *key,
|
||||
unsigned long keylen, const void *in, unsigned long inlen,
|
||||
blake2s_ctx *ctx);
|
||||
#endif
|
||||
|
|
@ -18,12 +18,12 @@
|
|||
|
||||
#elif defined(TKEY_DEBUG)
|
||||
|
||||
#define debug_putchar(ch) putchar(IO_TKEYCTRL, ch)
|
||||
#define debug_lf() putchar(IO_TKEYCTRL, '\n')
|
||||
#define debug_putinthex(ch) putinthex(IO_TKEYCTRL, ch)
|
||||
#define debug_puts(s) puts(IO_TKEYCTRL, s)
|
||||
#define debug_puthex(ch) puthex(IO_TKEYCTRL, ch)
|
||||
#define debug_hexdump(buf, len) hexdump(IO_TKEYCTRL, buf, len)
|
||||
#define debug_putchar(ch) putchar(IO_DEBUG, ch)
|
||||
#define debug_lf() putchar(IO_DEBUG, '\n')
|
||||
#define debug_putinthex(ch) putinthex(IO_DEBUG, ch)
|
||||
#define debug_puts(s) puts(IO_DEBUG, s)
|
||||
#define debug_puthex(ch) puthex(IO_DEBUG, ch)
|
||||
#define debug_hexdump(buf, len) hexdump(IO_DEBUG, buf, len)
|
||||
|
||||
#else
|
||||
|
||||
|
|
|
|||
|
|
@ -10,15 +10,20 @@
|
|||
// I/O endpoints. Keep it as bits possible to use in a bitmask in
|
||||
// readselect().
|
||||
//
|
||||
// Note that the the TKEYCTRL, CDC, and HID should be kept the same on
|
||||
// Note that the DEBUG, CDC, and FIDO should be kept the same on
|
||||
// the CH552 side.
|
||||
enum ioend {
|
||||
IO_NONE = 0x00, // No endpoint
|
||||
IO_UART = 0x01, // Only destination, raw UART access
|
||||
IO_QEMU = 0x10, // Only destination, QEMU debug port
|
||||
IO_TKEYCTRL = 0x20, // HID debug port
|
||||
IO_CDC = 0x40, // CDC "serial port"
|
||||
IO_HID = 0x80, // HID security token
|
||||
IO_NONE = 0x00, // No endpoint
|
||||
IO_UART = 0x01, // Only destination, raw UART access
|
||||
IO_QEMU = 0x02, // Only destination, QEMU debug port
|
||||
IO_CH552 = 0x10, // Internal CH552 control port
|
||||
IO_DEBUG = 0x20, // HID debug port
|
||||
IO_CDC = 0x40, // CDC "serial port"
|
||||
IO_FIDO = 0x80, // FIDO security token port
|
||||
};
|
||||
|
||||
enum ch552cmd {
|
||||
SET_ENDPOINTS = 0x01, // Config USB endpoints on the CH552
|
||||
};
|
||||
|
||||
void write(enum ioend dest, const uint8_t *buf, size_t nbytes);
|
||||
|
|
@ -30,4 +35,6 @@ void puthex(enum ioend dest, const uint8_t ch);
|
|||
void putinthex(enum ioend dest, const uint32_t n);
|
||||
void puts(enum ioend dest, const char *s);
|
||||
void hexdump(enum ioend dest, void *buf, int len);
|
||||
void config_endpoints(enum ioend endpoints);
|
||||
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue