2017-03-21 00:41:49 +00:00
|
|
|
#ifndef __TREZORHAL_COMMON_H__
|
|
|
|
#define __TREZORHAL_COMMON_H__
|
|
|
|
|
2017-03-29 18:50:45 +00:00
|
|
|
#include <stdint.h>
|
|
|
|
|
2017-04-10 17:11:44 +00:00
|
|
|
#define BOARDLOADER_START 0x08000000
|
2017-10-11 19:15:22 +00:00
|
|
|
#define BOOTLOADER_START 0x08020000
|
|
|
|
#define FIRMWARE_START 0x08040000
|
2017-04-10 17:11:44 +00:00
|
|
|
#define HEADER_SIZE 0x200
|
2017-03-30 14:47:02 +00:00
|
|
|
|
2017-10-11 10:58:36 +00:00
|
|
|
extern void memset_reg(volatile void *start, volatile void *stop, uint32_t val);
|
|
|
|
|
2017-10-12 22:36:12 +00:00
|
|
|
void clear_otg_hs_memory(void);
|
|
|
|
|
2017-03-23 15:22:58 +00:00
|
|
|
void periph_init(void);
|
2017-03-21 00:41:49 +00:00
|
|
|
|
2017-10-11 22:32:46 +00:00
|
|
|
void __attribute__((noreturn)) __fatal_error(const char *expr, const char *msg, const char *file, int line, const char *func);
|
|
|
|
|
2017-10-12 14:06:53 +00:00
|
|
|
#define ensure(expr, msg) ((expr) ? (void)0 : __fatal_error(#expr, msg, __FILE__, __LINE__, __func__))
|
2017-03-21 00:41:49 +00:00
|
|
|
|
2017-03-29 18:50:45 +00:00
|
|
|
void jump_to(uint32_t address);
|
|
|
|
|
2017-10-05 15:31:05 +00:00
|
|
|
void hal_delay(uint32_t ms);
|
|
|
|
|
2017-10-13 15:18:02 +00:00
|
|
|
void shutdown(void);
|
|
|
|
|
2017-10-11 19:15:22 +00:00
|
|
|
extern uint32_t __stack_chk_guard;
|
|
|
|
|
2017-03-21 00:41:49 +00:00
|
|
|
#endif
|