Kinetis Bootloader
2.0.0
Common bootloader for Kinetis devices
Introduction
Related Pages
Modules
blsh.h
1
/*
2
* Copyright (c) 2013 - 2014, Freescale Semiconductor, Inc.
3
* All rights reserved.
4
*
5
* Redistribution and use in source and binary forms, with or without modification,
6
* are permitted provided that the following conditions are met:
7
*
8
* o Redistributions of source code must retain the above copyright notice, this list
9
* of conditions and the following disclaimer.
10
*
11
* o Redistributions in binary form must reproduce the above copyright notice, this
12
* list of conditions and the following disclaimer in the documentation and/or
13
* other materials provided with the distribution.
14
*
15
* o Neither the name of Freescale Semiconductor, Inc. nor the names of its
16
* contributors may be used to endorse or promote products derived from this
17
* software without specific prior written permission.
18
*
19
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
20
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
21
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
23
* ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
26
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29
*/
30
31
#ifndef __BLSH_H__
32
#define __BLSH_H__
33
34
#include <stdint.h>
35
#include <stdio.h>
36
#include "bootloader_common.h"
37
38
/*******************************************************************************
39
* Definitions
40
******************************************************************************/
41
42
#define blsh_printf debug_printf
43
#define blsh_getchar wait_uart_char
44
#define blsh_putchar putchar
45
47
typedef
void (*blsh_func_t)(uint8_t argc, uint8_t **argv);
48
50
typedef
struct
_blsh_cmd
51
{
52
uint8_t *name;
/* command input name, not 0. */
53
uint8_t *help;
/* help string, can be 0. */
54
uint8_t *usage;
/* usage string, can be 0. */
55
blsh_func_t
function
;
/* function to launch on command, can be 0. */
56
void
*arg;
/* current argument when function called. */
57
struct
_blsh_cmd *next;
/* next command, can be 0. */
58
}
blsh_cmd_t
;
59
60
/*******************************************************************************
61
* API
62
******************************************************************************/
63
#if defined(__cplusplus)
64
extern
"C"
{
65
#endif
/* __cplusplus */
66
68
void
blsh_init(
void
);
69
71
void
blsh_run(
void
);
72
74
uint8_t blsh_exit(
void
);
75
77
void
command_add(
blsh_cmd_t
*cmd);
78
79
#if defined(__cplusplus)
80
}
81
#endif
/* __cplusplus */
82
83
#endif
/* __BLSH_H__ */
blsh_cmd_t
blsh command struct
Definition:
blsh.h:50
blsh
blsh.h
Generated on Mon Mar 7 2016 16:48:23 for Kinetis Bootloader by
1.8.11