1 /** 2 * @file mxc_pins.h 3 * @brief This file contains constant pin configurations for the peripherals. 4 */ 5 6 /****************************************************************************** 7 * 8 * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by 9 * Analog Devices, Inc.), 10 * Copyright (C) 2023-2024 Analog Devices, Inc. 11 * 12 * Licensed under the Apache License, Version 2.0 (the "License"); 13 * you may not use this file except in compliance with the License. 14 * You may obtain a copy of the License at 15 * 16 * http://www.apache.org/licenses/LICENSE-2.0 17 * 18 * Unless required by applicable law or agreed to in writing, software 19 * distributed under the License is distributed on an "AS IS" BASIS, 20 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 21 * See the License for the specific language governing permissions and 22 * limitations under the License. 23 * 24 ******************************************************************************/ 25 26 #ifndef LIBRARIES_PERIPHDRIVERS_INCLUDE_MAX32690_MXC_PINS_H_ 27 #define LIBRARIES_PERIPHDRIVERS_INCLUDE_MAX32690_MXC_PINS_H_ 28 29 #include "gpio.h" 30 31 /***** Global Variables *****/ 32 // Predefined GPIO Configurations 33 extern const mxc_gpio_cfg_t gpio_cfg_extclk; 34 extern const mxc_gpio_cfg_t gpio_cfg_i2c0; 35 extern const mxc_gpio_cfg_t gpio_cfg_i2c0a; 36 extern const mxc_gpio_cfg_t gpio_cfg_i2c1; 37 extern const mxc_gpio_cfg_t gpio_cfg_i2c1a; 38 extern const mxc_gpio_cfg_t gpio_cfg_i2c2; 39 extern const mxc_gpio_cfg_t gpio_cfg_i2c2c; 40 41 extern const mxc_gpio_cfg_t gpio_cfg_uart0; 42 extern const mxc_gpio_cfg_t gpio_cfg_uart0_flow; 43 extern const mxc_gpio_cfg_t gpio_cfg_uart0_flow_disable; 44 extern const mxc_gpio_cfg_t gpio_cfg_uart1; 45 extern const mxc_gpio_cfg_t gpio_cfg_uart1_flow; 46 extern const mxc_gpio_cfg_t gpio_cfg_uart1_flow_disable; 47 extern const mxc_gpio_cfg_t gpio_cfg_uart2; 48 extern const mxc_gpio_cfg_t gpio_cfg_uart2_flow; 49 extern const mxc_gpio_cfg_t gpio_cfg_uart2_flow_disable; 50 extern const mxc_gpio_cfg_t gpio_cfg_uart3; 51 extern const mxc_gpio_cfg_t gpio_cfg_uart3_flow; 52 extern const mxc_gpio_cfg_t gpio_cfg_uart3_flow_disable; 53 54 extern const mxc_gpio_cfg_t antenna_ctrl0; 55 extern const mxc_gpio_cfg_t antenna_ctrl1; 56 extern const mxc_gpio_cfg_t antenna_ctrl2; 57 extern const mxc_gpio_cfg_t antenna_ctrl3; 58 59 // Timers are only defined once, depending on package, each timer could be mapped to other pins 60 extern const mxc_gpio_cfg_t gpio_cfg_tmr0; 61 extern const mxc_gpio_cfg_t gpio_cfg_tmr0b; 62 extern const mxc_gpio_cfg_t gpio_cfg_tmr1; 63 extern const mxc_gpio_cfg_t gpio_cfg_tmr1b; 64 extern const mxc_gpio_cfg_t gpio_cfg_tmr2; 65 extern const mxc_gpio_cfg_t gpio_cfg_tmr2b; 66 extern const mxc_gpio_cfg_t gpio_cfg_tmr3; 67 extern const mxc_gpio_cfg_t gpio_cfg_tmr3b; 68 extern const mxc_gpio_cfg_t gpio_cfg_tmr4; 69 extern const mxc_gpio_cfg_t gpio_cfg_tmr5; 70 71 extern const mxc_gpio_cfg_t gpio_cfg_i2s0; 72 extern const mxc_gpio_cfg_t gpio_cfg_i2s0_clkext; 73 74 extern const mxc_gpio_cfg_t gpio_cfg_spi0; 75 extern const mxc_gpio_cfg_t gpio_cfg_spi0_ss0; 76 extern const mxc_gpio_cfg_t gpio_cfg_spi0_ss1; 77 78 extern const mxc_gpio_cfg_t gpio_cfg_spi1; 79 extern const mxc_gpio_cfg_t gpio_cfg_spi1_ss0; 80 extern const mxc_gpio_cfg_t gpio_cfg_spi1_ss1; 81 extern const mxc_gpio_cfg_t gpio_cfg_spi1_ss2; 82 83 extern const mxc_gpio_cfg_t gpio_cfg_spi2; 84 extern const mxc_gpio_cfg_t gpio_cfg_spi2_ss0; 85 extern const mxc_gpio_cfg_t gpio_cfg_spi2_ss1; 86 extern const mxc_gpio_cfg_t gpio_cfg_spi2_ss2; 87 88 extern const mxc_gpio_cfg_t gpio_cfg_spi3; 89 extern const mxc_gpio_cfg_t gpio_cfg_spi3_ss0; 90 extern const mxc_gpio_cfg_t gpio_cfg_spi3_ss1; 91 extern const mxc_gpio_cfg_t gpio_cfg_spi3_ss2; 92 93 extern const mxc_gpio_cfg_t gpio_cfg_spi4; 94 extern const mxc_gpio_cfg_t gpio_cfg_spi4_ss0; 95 extern const mxc_gpio_cfg_t gpio_cfg_spi4_ss1; 96 extern const mxc_gpio_cfg_t gpio_cfg_spi4_ss2; 97 98 extern const mxc_gpio_cfg_t gpio_cfg_spixr; 99 extern const mxc_gpio_cfg_t gpio_cfg_spixf; 100 101 extern const mxc_gpio_cfg_t gpio_cfg_owm; 102 103 extern const mxc_gpio_cfg_t gpio_cfg_rtcsqw; 104 extern const mxc_gpio_cfg_t gpio_cfg_rtcsqwb; 105 106 extern const mxc_gpio_cfg_t gpio_cfg_hpb; 107 extern const mxc_gpio_cfg_t gpio_cfg_hpb_cs0; 108 extern const mxc_gpio_cfg_t gpio_cfg_hpb_cs1; 109 110 extern const mxc_gpio_cfg_t gpio_cfg_pt0; 111 extern const mxc_gpio_cfg_t gpio_cfg_pt1; 112 extern const mxc_gpio_cfg_t gpio_cfg_pt2; 113 extern const mxc_gpio_cfg_t gpio_cfg_pt3; 114 extern const mxc_gpio_cfg_t gpio_cfg_pt4; 115 extern const mxc_gpio_cfg_t gpio_cfg_pt5; 116 extern const mxc_gpio_cfg_t gpio_cfg_pt6; 117 extern const mxc_gpio_cfg_t gpio_cfg_pt7; 118 extern const mxc_gpio_cfg_t gpio_cfg_pt8; 119 extern const mxc_gpio_cfg_t gpio_cfg_pt9; 120 extern const mxc_gpio_cfg_t gpio_cfg_pt10; 121 extern const mxc_gpio_cfg_t gpio_cfg_pt11; 122 extern const mxc_gpio_cfg_t gpio_cfg_pt12; 123 extern const mxc_gpio_cfg_t gpio_cfg_pt13; 124 extern const mxc_gpio_cfg_t gpio_cfg_pt14; 125 extern const mxc_gpio_cfg_t gpio_cfg_pt15; 126 127 extern const mxc_gpio_cfg_t gpio_cfg_adc_ain0; 128 extern const mxc_gpio_cfg_t gpio_cfg_adc_ain1; 129 extern const mxc_gpio_cfg_t gpio_cfg_adc_ain2; 130 extern const mxc_gpio_cfg_t gpio_cfg_adc_ain3; 131 extern const mxc_gpio_cfg_t gpio_cfg_adc_ain4; 132 extern const mxc_gpio_cfg_t gpio_cfg_adc_ain5; 133 extern const mxc_gpio_cfg_t gpio_cfg_adc_ain6; 134 extern const mxc_gpio_cfg_t gpio_cfg_adc_ain7; 135 136 extern const mxc_gpio_cfg_t gpio_cfg_adc_trig_p0_10; 137 extern const mxc_gpio_cfg_t gpio_cfg_adc_trig_p1_0; 138 extern const mxc_gpio_cfg_t gpio_cfg_adc_trig_p2_15; 139 140 extern const mxc_gpio_cfg_t gpio_cfg_cmp0; 141 extern const mxc_gpio_cfg_t gpio_cfg_cmp1; 142 extern const mxc_gpio_cfg_t gpio_cfg_cmp2; 143 extern const mxc_gpio_cfg_t gpio_cfg_cmp3; 144 145 extern const mxc_gpio_cfg_t gpio_cfg_rv_jtag; 146 147 extern const mxc_gpio_cfg_t gpio_cfg_can0; 148 extern const mxc_gpio_cfg_t gpio_cfg_can1; 149 150 // SPI v2 Pin Definitions 151 extern const mxc_gpio_cfg_t gpio_cfg_spi0_standard; 152 extern const mxc_gpio_cfg_t gpio_cfg_spi0_3wire; 153 extern const mxc_gpio_cfg_t gpio_cfg_spi0_dual; 154 extern const mxc_gpio_cfg_t gpio_cfg_spi0_quad; 155 extern const mxc_gpio_cfg_t gpio_cfg_spi1_standard; 156 extern const mxc_gpio_cfg_t gpio_cfg_spi1_3wire; 157 extern const mxc_gpio_cfg_t gpio_cfg_spi1_dua; 158 extern const mxc_gpio_cfg_t gpio_cfg_spi1_quad_0; 159 extern const mxc_gpio_cfg_t gpio_cfg_spi1_quad_1; 160 extern const mxc_gpio_cfg_t gpio_cfg_spi2_standard; 161 extern const mxc_gpio_cfg_t gpio_cfg_spi2_3wire; 162 extern const mxc_gpio_cfg_t gpio_cfg_spi2_dual; 163 extern const mxc_gpio_cfg_t gpio_cfg_spi2_quad_0; 164 extern const mxc_gpio_cfg_t gpio_cfg_spi2_quad_1; 165 extern const mxc_gpio_cfg_t gpio_cfg_spi3_standard; 166 extern const mxc_gpio_cfg_t gpio_cfg_spi3_3wire; 167 extern const mxc_gpio_cfg_t gpio_cfg_spi3_dual; 168 extern const mxc_gpio_cfg_t gpio_cfg_spi3_quad; 169 extern const mxc_gpio_cfg_t gpio_cfg_spi4_standard; 170 extern const mxc_gpio_cfg_t gpio_cfg_spi4_3wire; 171 extern const mxc_gpio_cfg_t gpio_cfg_spi4_dual; 172 extern const mxc_gpio_cfg_t gpio_cfg_spi4_quad; 173 174 // SPI v2 Target Selects Pin Definitions 175 extern const mxc_gpio_cfg_t gpio_cfg_spi0_ts0; 176 extern const mxc_gpio_cfg_t gpio_cfg_spi0_ts1; 177 extern const mxc_gpio_cfg_t gpio_cfg_spi1_ts0; 178 extern const mxc_gpio_cfg_t gpio_cfg_spi1_ts1; 179 extern const mxc_gpio_cfg_t gpio_cfg_spi1_ts2; 180 extern const mxc_gpio_cfg_t gpio_cfg_spi2_ts0; 181 extern const mxc_gpio_cfg_t gpio_cfg_spi2_ts1; 182 extern const mxc_gpio_cfg_t gpio_cfg_spi2_ts2; 183 extern const mxc_gpio_cfg_t gpio_cfg_spi3_ts0; 184 extern const mxc_gpio_cfg_t gpio_cfg_spi3_ts1; 185 extern const mxc_gpio_cfg_t gpio_cfg_spi3_ts2; 186 extern const mxc_gpio_cfg_t gpio_cfg_spi4_ts0; 187 extern const mxc_gpio_cfg_t gpio_cfg_spi4_ts1; 188 extern const mxc_gpio_cfg_t gpio_cfg_spi4_ts2; 189 190 #endif // LIBRARIES_PERIPHDRIVERS_INCLUDE_MAX32690_MXC_PINS_H_ 191