serial.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2020 Benjamin Valentin
3  *
4  * This file is subject to the terms and conditions of the GNU Lesser
5  * General Public License v2.1. See the file LICENSE in the top level
6  * directory for more details.
7  */
8 
22 #ifndef RIOTBOOT_SERIAL_H
23 #define RIOTBOOT_SERIAL_H
24 
25 #ifdef __cplusplus
26 extern "C" {
27 #endif
28 
45 #define RIOTBOOT_CMD_BOOT 'b'
46 
53 #define RIOTBOOT_CMD_ERASE 'e'
54 
62 #define RIOTBOOT_CMD_WRITE 'w'
63 
73 #define RIOTBOOT_CMD_GET_PAGE 'P'
81 #define RIOTBOOT_STAT_OK '.'
83 #define RIOTBOOT_STAT_BAD_CRC '?'
85 #define RIOTBOOT_STAT_ILLEGAL '!'
92 /* sent to stop auto-boot */
93 #define RIOTBOOT_ENTER_LOADER 'B'
94 /* sent to probe if auto-boot is paused and riotboot is active */
95 #define RIOTBOOT_PROBE '?'
96 
97 /* continuously sent by riotboot before booting */
98 #define RIOTBOOT_STAT_WAITING 'b'
99 /* indicates riotboot is ready to accept commands */
100 #define RIOTBOOT_STAT_READY '>'
106 #ifndef RIOTBOOT_CRC8_POLY
107 #define RIOTBOOT_CRC8_POLY (0x31)
108 #endif
109 
115 
116 #ifdef __cplusplus
117 }
118 #endif
119 
120 #endif /* RIOTBOOT_SERIAL_H */
int riotboot_serial_loader(void)
Start interactive serial bootloader.