ISSDK  1.7
IoT Sensing Software Development Kit
pin_mux.h
Go to the documentation of this file.
1 /*
2  * The Clear BSD License
3  * Copyright (c) 2015, Freescale Semiconductor, Inc.
4  * Copyright 2016-2017 NXP
5  * All rights reserved.
6  *
7  * Redistribution and use in source and binary forms, with or without modification,
8  * are permitted (subject to the limitations in the disclaimer below) provided
9  * that the following conditions are met:
10  *
11  * o Redistributions of source code must retain the above copyright notice, this list
12  * of conditions and the following disclaimer.
13  *
14  * o Redistributions in binary form must reproduce the above copyright notice, this
15  * list of conditions and the following disclaimer in the documentation and/or
16  * other materials provided with the distribution.
17  *
18  * o Neither the name of the copyright holder nor the names of its
19  * contributors may be used to endorse or promote products derived from this
20  * software without specific prior written permission.
21  *
22  * NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE GRANTED BY THIS LICENSE.
23  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
24  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
25  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
26  * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
27  * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
28  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
29  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
30  * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
31  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
32  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33  */
34 
35 #ifndef _PIN_MUX_H_
36 #define _PIN_MUX_H_
37 
38 /*******************************************************************************
39  * Definitions
40  ******************************************************************************/
41 
42 /*! @brief Direction type */
43 typedef enum _pin_mux_direction
44 {
45  kPIN_MUX_DirectionInput = 0U, /* Input direction */
46  kPIN_MUX_DirectionOutput = 1U, /* Output direction */
47  kPIN_MUX_DirectionInputOrOutput = 2U /* Input or output direction */
49 
50 /*!
51  * @addtogroup pin_mux
52  * @{
53  */
54 
55 /*******************************************************************************
56  * API
57  ******************************************************************************/
58 
59 #if defined(__cplusplus)
60 extern "C" {
61 #endif
62 
63 /* FC0_RXD_SDA_MOSI (number 31), U18[4]/TO_MUX_P0_0-ISP_RX */
64 #define BOARD_DEBUG_UART_RX_PERIPHERAL FLEXCOMM0 /*!< Device name: FLEXCOMM0 */
65 #define BOARD_DEBUG_UART_RX_SIGNAL RXD_SDA_MOSI /*!< FLEXCOMM0 signal: RXD_SDA_MOSI */
66 #define BOARD_DEBUG_UART_RX_PIN_NAME FC0_RXD_SDA_MOSI /*!< Pin name */
67 #define BOARD_DEBUG_UART_RX_LABEL "U18[4]/TO_MUX_P0_0-ISP_RX" /*!< Label */
68 #define BOARD_DEBUG_UART_RX_NAME "DEBUG_UART_RX" /*!< Identifier name */
69 
70 /* FC0_TXD_SCL_MISO (number 32), U6[4]/U22[3]/P0_1-ISP_TX */
71 #define BOARD_DEBUG_UART_TX_PERIPHERAL FLEXCOMM0 /*!< Device name: FLEXCOMM0 */
72 #define BOARD_DEBUG_UART_TX_SIGNAL TXD_SCL_MISO /*!< FLEXCOMM0 signal: TXD_SCL_MISO */
73 #define BOARD_DEBUG_UART_TX_PIN_NAME FC0_TXD_SCL_MISO /*!< Pin name */
74 #define BOARD_DEBUG_UART_TX_LABEL "U6[4]/U22[3]/P0_1-ISP_TX" /*!< Label */
75 #define BOARD_DEBUG_UART_TX_NAME "DEBUG_UART_TX" /*!< Identifier name */
76 
77 /*!
78  * @brief Configures pin routing and optionally pin electrical features.
79  *
80  */
81 void BOARD_InitPins(void); /* Function assigned for the Core #0 (ARM Cortex-M4) */
82 
83 /* FC0_RXD_SDA_MOSI (number 31), U18[4]/TO_MUX_P0_0-ISP_RX */
84 #define BOARD_DEBUG_UART_RX_PERIPHERAL FLEXCOMM0 /*!< Device name: FLEXCOMM0 */
85 #define BOARD_DEBUG_UART_RX_SIGNAL RXD_SDA_MOSI /*!< FLEXCOMM0 signal: RXD_SDA_MOSI */
86 #define BOARD_DEBUG_UART_RX_PIN_NAME FC0_RXD_SDA_MOSI /*!< Pin name */
87 #define BOARD_DEBUG_UART_RX_LABEL "U18[4]/TO_MUX_P0_0-ISP_RX" /*!< Label */
88 #define BOARD_DEBUG_UART_RX_NAME "DEBUG_UART_RX" /*!< Identifier name */
89 
90 /* FC0_TXD_SCL_MISO (number 32), U6[4]/U22[3]/P0_1-ISP_TX */
91 #define BOARD_DEBUG_UART_TX_PERIPHERAL FLEXCOMM0 /*!< Device name: FLEXCOMM0 */
92 #define BOARD_DEBUG_UART_TX_SIGNAL TXD_SCL_MISO /*!< FLEXCOMM0 signal: TXD_SCL_MISO */
93 #define BOARD_DEBUG_UART_TX_PIN_NAME FC0_TXD_SCL_MISO /*!< Pin name */
94 #define BOARD_DEBUG_UART_TX_LABEL "U6[4]/U22[3]/P0_1-ISP_TX" /*!< Label */
95 #define BOARD_DEBUG_UART_TX_NAME "DEBUG_UART_TX" /*!< Identifier name */
96 
97 /*!
98  * @brief Configures pin routing and optionally pin electrical features.
99  *
100  */
101 void USART0_InitPins(void); /* Function assigned for the Core #0 (ARM Cortex-M4) */
102 
103 /* PIO0_0 (number 31), U18[4]/TO_MUX_P0_0-ISP_RX */
104 #define USART0_DEINITPINS_DEBUG_UART_RX_GPIO GPIO /*!< GPIO device name: GPIO */
105 #define USART0_DEINITPINS_DEBUG_UART_RX_PORT 0U /*!< PORT device index: 0 */
106 #define USART0_DEINITPINS_DEBUG_UART_RX_GPIO_PIN 0U /*!< PIO0 pin index: 0 */
107 #define USART0_DEINITPINS_DEBUG_UART_RX_PIN_NAME PIO0_0 /*!< Pin name */
108 #define USART0_DEINITPINS_DEBUG_UART_RX_LABEL "U18[4]/TO_MUX_P0_0-ISP_RX" /*!< Label */
109 #define USART0_DEINITPINS_DEBUG_UART_RX_NAME "DEBUG_UART_RX" /*!< Identifier name */
110 
111 /* PIO0_1 (number 32), U6[4]/U22[3]/P0_1-ISP_TX */
112 #define USART0_DEINITPINS_DEBUG_UART_TX_GPIO GPIO /*!< GPIO device name: GPIO */
113 #define USART0_DEINITPINS_DEBUG_UART_TX_PORT 0U /*!< PORT device index: 0 */
114 #define USART0_DEINITPINS_DEBUG_UART_TX_GPIO_PIN 1U /*!< PIO0 pin index: 1 */
115 #define USART0_DEINITPINS_DEBUG_UART_TX_PIN_NAME PIO0_1 /*!< Pin name */
116 #define USART0_DEINITPINS_DEBUG_UART_TX_LABEL "U6[4]/U22[3]/P0_1-ISP_TX" /*!< Label */
117 #define USART0_DEINITPINS_DEBUG_UART_TX_NAME "DEBUG_UART_TX" /*!< Identifier name */
118 
119 /*!
120  * @brief Configures pin routing and optionally pin electrical features.
121  *
122  */
123 void USART0_DeinitPins(void); /* Function assigned for the Core #0 (ARM Cortex-M4) */
124 
125 /* FC4_CTS_SDA_SSEL0 (number 4), J1[3]/JS5[1]/U10[5]/P0_26-FC4_SDAX */
126 #define I2C4_INITPINS_FC4_SDAX_PERIPHERAL FLEXCOMM4 /*!< Device name: FLEXCOMM4 */
127 #define I2C4_INITPINS_FC4_SDAX_SIGNAL CTS_SDA_SSEL0 /*!< FLEXCOMM4 signal: CTS_SDA_SSEL0 */
128 #define I2C4_INITPINS_FC4_SDAX_PIN_NAME FC4_CTS_SDA_SSEL0 /*!< Pin name */
129 #define I2C4_INITPINS_FC4_SDAX_LABEL "J1[3]/JS5[1]/U10[5]/P0_26-FC4_SDAX" /*!< Label */
130 #define I2C4_INITPINS_FC4_SDAX_NAME "FC4_SDAX" /*!< Identifier name */
131 
132 /* FC4_RTS_SCL_SSEL1 (number 3), J1[1]/JS4[1]/U10[7]/P0_25-FC4_SCLX */
133 #define I2C4_INITPINS_FC4_SCLX_PERIPHERAL FLEXCOMM4 /*!< Device name: FLEXCOMM4 */
134 #define I2C4_INITPINS_FC4_SCLX_SIGNAL RTS_SCL_SSEL1 /*!< FLEXCOMM4 signal: RTS_SCL_SSEL1 */
135 #define I2C4_INITPINS_FC4_SCLX_PIN_NAME FC4_RTS_SCL_SSEL1 /*!< Pin name */
136 #define I2C4_INITPINS_FC4_SCLX_LABEL "J1[1]/JS4[1]/U10[7]/P0_25-FC4_SCLX" /*!< Label */
137 #define I2C4_INITPINS_FC4_SCLX_NAME "FC4_SCLX" /*!< Identifier name */
138 
139 /*!
140  * @brief Configures pin routing and optionally pin electrical features.
141  *
142  */
143 void I2C4_InitPins(void); /* Function assigned for the Core #0 (ARM Cortex-M4) */
144 
145 /* PIO0_26 (number 4), J1[3]/JS5[1]/U10[5]/P0_26-FC4_SDAX */
146 #define I2C4_DEINITPINS_FC4_SDAX_GPIO GPIO /*!< GPIO device name: GPIO */
147 #define I2C4_DEINITPINS_FC4_SDAX_PORT 0U /*!< PORT device index: 0 */
148 #define I2C4_DEINITPINS_FC4_SDAX_GPIO_PIN 26U /*!< PIO0 pin index: 26 */
149 #define I2C4_DEINITPINS_FC4_SDAX_PIN_NAME PIO0_26 /*!< Pin name */
150 #define I2C4_DEINITPINS_FC4_SDAX_LABEL "J1[3]/JS5[1]/U10[5]/P0_26-FC4_SDAX" /*!< Label */
151 #define I2C4_DEINITPINS_FC4_SDAX_NAME "FC4_SDAX" /*!< Identifier name */
152 
153 /* PIO0_25 (number 3), J1[1]/JS4[1]/U10[7]/P0_25-FC4_SCLX */
154 #define I2C4_DEINITPINS_FC4_SCLX_GPIO GPIO /*!< GPIO device name: GPIO */
155 #define I2C4_DEINITPINS_FC4_SCLX_PORT 0U /*!< PORT device index: 0 */
156 #define I2C4_DEINITPINS_FC4_SCLX_GPIO_PIN 25U /*!< PIO0 pin index: 25 */
157 #define I2C4_DEINITPINS_FC4_SCLX_PIN_NAME PIO0_25 /*!< Pin name */
158 #define I2C4_DEINITPINS_FC4_SCLX_LABEL "J1[1]/JS4[1]/U10[7]/P0_25-FC4_SCLX" /*!< Label */
159 #define I2C4_DEINITPINS_FC4_SCLX_NAME "FC4_SCLX" /*!< Identifier name */
160 
161 /*!
162  * @brief Configures pin routing and optionally pin electrical features.
163  *
164  */
165 void I2C4_DeinitPins(void); /* Function assigned for the Core #0 (ARM Cortex-M4) */
166 
167 /* FC5_TXD_SCL_MISO (number 58), J1[11]/U5[2]/P0_18-FC5_TXD_SCL_MISO */
168 #define I2C5_INITPINS_SPI_FLASH_MISO_PERIPHERAL FLEXCOMM5 /*!< Device name: FLEXCOMM5 */
169 #define I2C5_INITPINS_SPI_FLASH_MISO_SIGNAL TXD_SCL_MISO /*!< FLEXCOMM5 signal: TXD_SCL_MISO */
170 #define I2C5_INITPINS_SPI_FLASH_MISO_PIN_NAME FC5_TXD_SCL_MISO /*!< Pin name */
171 #define I2C5_INITPINS_SPI_FLASH_MISO_LABEL "J1[11]/U5[2]/P0_18-FC5_TXD_SCL_MISO" /*!< Label */
172 #define I2C5_INITPINS_SPI_FLASH_MISO_NAME "SPI_FLASH_MISO" /*!< Identifier name */
173 
174 /* FC5_RXD_SDA_MOSI (number 60), J1[13]/U5[5]/P0_20-FC5_RXD_SDA_MOSI */
175 #define I2C5_INITPINS_SPI_FLASH_MOSI_PERIPHERAL FLEXCOMM5 /*!< Device name: FLEXCOMM5 */
176 #define I2C5_INITPINS_SPI_FLASH_MOSI_SIGNAL RXD_SDA_MOSI /*!< FLEXCOMM5 signal: RXD_SDA_MOSI */
177 #define I2C5_INITPINS_SPI_FLASH_MOSI_PIN_NAME FC5_RXD_SDA_MOSI /*!< Pin name */
178 #define I2C5_INITPINS_SPI_FLASH_MOSI_LABEL "J1[13]/U5[5]/P0_20-FC5_RXD_SDA_MOSI" /*!< Label */
179 #define I2C5_INITPINS_SPI_FLASH_MOSI_NAME "SPI_FLASH_MOSI" /*!< Identifier name */
180 
181 /*!
182  * @brief Configures pin routing and optionally pin electrical features.
183  *
184  */
185 void I2C5_InitPins(void); /* Function assigned for the Core #0 (ARM Cortex-M4) */
186 
187 /* PIO0_20 (number 60), J1[13]/U5[5]/P0_20-FC5_RXD_SDA_MOSI */
188 #define I2C5_DEINITPINS_SPI_FLASH_MOSI_GPIO GPIO /*!< GPIO device name: GPIO */
189 #define I2C5_DEINITPINS_SPI_FLASH_MOSI_PORT 0U /*!< PORT device index: 0 */
190 #define I2C5_DEINITPINS_SPI_FLASH_MOSI_GPIO_PIN 20U /*!< PIO0 pin index: 20 */
191 #define I2C5_DEINITPINS_SPI_FLASH_MOSI_PIN_NAME PIO0_20 /*!< Pin name */
192 #define I2C5_DEINITPINS_SPI_FLASH_MOSI_LABEL "J1[13]/U5[5]/P0_20-FC5_RXD_SDA_MOSI" /*!< Label */
193 #define I2C5_DEINITPINS_SPI_FLASH_MOSI_NAME "SPI_FLASH_MOSI" /*!< Identifier name */
194 
195 /* PIO0_18 (number 58), J1[11]/U5[2]/P0_18-FC5_TXD_SCL_MISO */
196 #define I2C5_DEINITPINS_SPI_FLASH_MISO_GPIO GPIO /*!< GPIO device name: GPIO */
197 #define I2C5_DEINITPINS_SPI_FLASH_MISO_PORT 0U /*!< PORT device index: 0 */
198 #define I2C5_DEINITPINS_SPI_FLASH_MISO_GPIO_PIN 18U /*!< PIO0 pin index: 18 */
199 #define I2C5_DEINITPINS_SPI_FLASH_MISO_PIN_NAME PIO0_18 /*!< Pin name */
200 #define I2C5_DEINITPINS_SPI_FLASH_MISO_LABEL "J1[11]/U5[2]/P0_18-FC5_TXD_SCL_MISO" /*!< Label */
201 #define I2C5_DEINITPINS_SPI_FLASH_MISO_NAME "SPI_FLASH_MISO" /*!< Identifier name */
202 
203 /*!
204  * @brief Configures pin routing and optionally pin electrical features.
205  *
206  */
207 void I2C5_DeinitPins(void); /* Function assigned for the Core #0 (ARM Cortex-M4) */
208 
209 /*!
210  * @brief Configures pin routing and optionally pin electrical features.
211  *
212  */
213 void SPI3_InitPins(void); /* Function assigned for the Core #0 (ARM Cortex-M4) */
214 
215 /*!
216  * @brief Configures pin routing and optionally pin electrical features.
217  *
218  */
219 void SPI3_DeinitPins(void); /* Function assigned for the Core #0 (ARM Cortex-M4) */
220 
221 /*!
222  * @brief Configures pin routing and optionally pin electrical features.
223  *
224  */
225 void SPI5_InitPins(void); /* Function assigned for the Core #0 (ARM Cortex-M4) */
226 
227 /*!
228  * @brief Configures pin routing and optionally pin electrical features.
229  *
230  */
231 void SPI5_DeinitPins(void); /* Function assigned for the Core #0 (ARM Cortex-M4) */
232 
233 #if defined(__cplusplus)
234 }
235 #endif
236 
237 /*!
238  * @}
239  */
240 #endif /* _PIN_MUX_H_ */
241 
242 /*******************************************************************************
243  * EOF
244  ******************************************************************************/
void SPI3_InitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:419
_pin_mux_direction
Direction type.
Definition: pin_mux.h:44
void USART0_InitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:136
void I2C4_DeinitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:275
void I2C4_InitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:228
enum _pin_mux_direction pin_mux_direction_t
Direction type.
void SPI5_InitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:596
void I2C5_InitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:320
void SPI5_DeinitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:680
void USART0_DeinitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:183
void BOARD_InitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:73
void SPI3_DeinitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:514
void I2C5_DeinitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:367