Kinetis Bootloader  2.0.0
Common bootloader for Kinetis devices
bl_peripheral_interface.h
1 /*
2  * Copyright (c) 2013, 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 #if !defined(__BL_PERIPHERAL_INTERFACE_H__)
31 #define __BL_PERIPHERAL_INTERFACE_H__
32 
33 #include "bootloader/bl_context.h"
34 
37 
39 // Prototypes
41 
43 typedef enum
44 {
45  kPeripheralClearClock = 0,
46  kPeripheralSetClock
48 
50 typedef enum
51 {
52  kPeripheralDisableIRQ = 0,
53  kPeripheralEnableIRQ
55 
57 // Externs
59 
61 
64 
68 
70 
73 
77 
79 
82 
86 
88 
91 
95 
97 
100 
104 
106 
109 
113 
115 
118 
122 
124 
127 
131 
133 
136 
140 
142 
145 
149 
151 
154 
158 
160 
164 
166 
167 #endif // __BL_PERIPHERAL_INTERFACE_H__
168 // EOF
const peripheral_control_interface_t g_dspiControlInterface
Control interface for the DSPI peripheral driver.
Definition: dspi_peripheral_interface.c:84
const peripheral_control_interface_t g_uart0ControlInterface
Control interface for the UART0 peripheral driver.
Definition: uart0_peripheral_interface.c:60
const peripheral_control_interface_t g_scuartControlInterface
Control interface for the SCIUART peripheral driver.
Definition: scuart_peripheral_interface.c:63
const peripheral_byte_inteface_t g_i2cByteInterface
Byte I/O interface for the I2C peripheral driver.
Definition: i2c_peripheral_interface.c:115
const peripheral_control_interface_t g_uartControlInterface
Control interface for the UART peripheral driver.
Definition: uart_peripheral_interface.c:65
const peripheral_control_interface_t g_spiControlInterface
Control interface for the SPI peripheral driver.
Definition: spi_peripheral_interface.c:83
const peripheral_control_interface_t g_lpspiControlInterface
Control interface for the LPSPI peripheral driver.
Definition: lpspi_peripheral_interface.c:84
const peripheral_control_interface_t g_usbHidControlInterface
Control interface for the USB HID peripheral driver.
Definition: usb_hid_msc_peripheral_interface.c:105
PeripheralSystemIRQSetting
IRQ options.
Definition: bl_peripheral_interface.h:50
const peripheral_byte_inteface_t g_spiByteInterface
Byte I/O interface for the SPI peripheral driver.
Definition: spi_peripheral_interface.c:90
Peripheral control interface.
Definition: bl_peripheral.h:75
PeripheralClockSetting
Clock options.
Definition: bl_peripheral_interface.h:43
const peripheral_control_interface_t g_usbMsdControlInterface
Control interface for the USB MSD peripheral driver.
const peripheral_byte_inteface_t g_lpi2cByteInterface
Byte I/O interface for the LPI2C peripheral driver.
Definition: lpi2c_peripheral_interface.c:107
Peripheral Packet Interface.
Definition: bl_peripheral.h:101
const peripheral_byte_inteface_t g_uartByteInterface
Byte I/O interface for the UART peripheral driver.
Definition: uart_peripheral_interface.c:69
const peripheral_control_interface_t g_flexcanControlInterface
Control interface for the FLEXCAN peripheral driver.
Definition: flexcan_peripheral_interface.c:266
Peripheral abstract byte interface.
Definition: bl_peripheral.h:84
const peripheral_control_interface_t g_lpi2cControlInterface
Control interface for the LPI2C peripheral driver.
Definition: lpi2c_peripheral_interface.c:103
const peripheral_byte_inteface_t g_dspiByteInterface
Byte I/O interface for the DSPI peripheral driver.
Definition: dspi_peripheral_interface.c:91
const peripheral_packet_interface_t g_usbHidPacketInterface
Packet interface for the USB HID peripheral driver.
Definition: usb_hid_msc_peripheral_interface.c:110
const peripheral_byte_inteface_t g_uart0ByteInterface
Byte I/O interface for the UART0 peripheral driver.
Definition: uart0_peripheral_interface.c:64
const peripheral_byte_inteface_t g_lpuartByteInterface
Byte I/O interface for the LPUART peripheral driver.
Definition: lpuart_peripheral_interface.c:67
const peripheral_byte_inteface_t g_lpspiByteInterface
Byte I/O interface for the LPSPI peripheral driver.
Definition: lpspi_peripheral_interface.c:88
const peripheral_control_interface_t g_i2cControlInterface
Control interface for the I2C peripheral driver.
Definition: i2c_peripheral_interface.c:108
const peripheral_byte_inteface_t g_flexcanByteInterface
Byte I/O interface for the FLEXCAN peripheral driver.
Definition: flexcan_peripheral_interface.c:274
const peripheral_control_interface_t g_lpuartControlInterface
Control interface for the LPUART peripheral driver.
Definition: lpuart_peripheral_interface.c:63
const peripheral_byte_inteface_t g_scuartByteInterface
Byte I/O interface for the SCIUART peripheral driver.
Definition: scuart_peripheral_interface.c:67