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_MAX78002_MXC_PINS_H_
27 #define LIBRARIES_PERIPHDRIVERS_INCLUDE_MAX78002_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_i2c1;
36 extern const mxc_gpio_cfg_t gpio_cfg_i2c2;
37 
38 extern const mxc_gpio_cfg_t gpio_cfg_uart0;
39 extern const mxc_gpio_cfg_t gpio_cfg_uart0_flow;
40 extern const mxc_gpio_cfg_t gpio_cfg_uart0_flow_disable;
41 extern const mxc_gpio_cfg_t gpio_cfg_uart1;
42 extern const mxc_gpio_cfg_t gpio_cfg_uart1_flow;
43 extern const mxc_gpio_cfg_t gpio_cfg_uart1_flow_disable;
44 extern const mxc_gpio_cfg_t gpio_cfg_uart2;
45 extern const mxc_gpio_cfg_t gpio_cfg_uart2_flow;
46 extern const mxc_gpio_cfg_t gpio_cfg_uart2_flow_disable;
47 extern const mxc_gpio_cfg_t gpio_cfg_uart3;
48 extern const mxc_gpio_cfg_t gpio_cfg_uart3_flow;
49 extern const mxc_gpio_cfg_t gpio_cfg_uart3_flow_disable;
50 
51 // Timers are only defined once, depending on package, each timer could be mapped to other pins
52 extern const mxc_gpio_cfg_t gpio_cfg_tmr0;
53 extern const mxc_gpio_cfg_t gpio_cfg_tmr1;
54 extern const mxc_gpio_cfg_t gpio_cfg_tmr2;
55 extern const mxc_gpio_cfg_t gpio_cfg_tmr3;
56 extern const mxc_gpio_cfg_t gpio_cfg_tmr0b;
57 extern const mxc_gpio_cfg_t gpio_cfg_tmr1b;
58 extern const mxc_gpio_cfg_t gpio_cfg_tmr2b;
59 extern const mxc_gpio_cfg_t gpio_cfg_tmr3b;
60 extern const mxc_gpio_cfg_t gpio_cfg_tmr4;
61 extern const mxc_gpio_cfg_t gpio_cfg_tmr5;
62 
63 extern const mxc_gpio_cfg_t gpio_cfg_i2s0;
64 extern const mxc_gpio_cfg_t gpio_cfg_i2s0_extclk;
65 
66 extern const mxc_gpio_cfg_t gpio_cfg_owm;
67 extern const mxc_gpio_cfg_t gpio_cfg_owmb;
68 
69 extern const mxc_gpio_cfg_t gpio_cfg_spi0;
70 extern const mxc_gpio_cfg_t gpio_cfg_spi1;
71 
72 extern const mxc_gpio_cfg_t gpio_cfg_rtcsqw;
73 extern const mxc_gpio_cfg_t gpio_cfg_rtcsqwb;
74 
75 extern const mxc_gpio_cfg_t gpio_cfg_pt0;
76 extern const mxc_gpio_cfg_t gpio_cfg_pt1;
77 extern const mxc_gpio_cfg_t gpio_cfg_pt2;
78 extern const mxc_gpio_cfg_t gpio_cfg_pt3;
79 
80 extern const mxc_gpio_cfg_t gpio_cfg_pcif_P0_BITS_0_7;
81 extern const mxc_gpio_cfg_t gpio_cfg_pcif_P0_BITS_8_9;
82 extern const mxc_gpio_cfg_t gpio_cfg_pcif_P1_BITS_10_11;
83 extern const mxc_gpio_cfg_t gpio_cfg_pcif_hsync;
84 extern const mxc_gpio_cfg_t gpio_cfg_pcif_vsync;
85 extern const mxc_gpio_cfg_t gpio_cfg_pcif_xclk;
86 
87 extern const mxc_gpio_cfg_t gpio_cfg_adc_ain0;
88 extern const mxc_gpio_cfg_t gpio_cfg_adc_ain1;
89 extern const mxc_gpio_cfg_t gpio_cfg_adc_ain2;
90 extern const mxc_gpio_cfg_t gpio_cfg_adc_ain3;
91 extern const mxc_gpio_cfg_t gpio_cfg_adc_ain4;
92 extern const mxc_gpio_cfg_t gpio_cfg_adc_ain4;
93 extern const mxc_gpio_cfg_t gpio_cfg_adc_ain5;
94 extern const mxc_gpio_cfg_t gpio_cfg_adc_ain6;
95 extern const mxc_gpio_cfg_t gpio_cfg_adc_ain7;
96 
97 extern const mxc_gpio_cfg_t gpio_cfg_rv_jtag;
98 
99 extern const mxc_gpio_cfg_t gpio_cfg_cmp0;
100 extern const mxc_gpio_cfg_t gpio_cfg_cmp1;
101 extern const mxc_gpio_cfg_t gpio_cfg_cmp2;
102 extern const mxc_gpio_cfg_t gpio_cfg_cmp3;
103 
104 extern const mxc_gpio_cfg_t gpio_cfg_sdhc;
105 
106 // SPI v2 Pin Definitions
107 extern const mxc_gpio_cfg_t gpio_cfg_spi0_standard;
108 extern const mxc_gpio_cfg_t gpio_cfg_spi0_3wire;
109 extern const mxc_gpio_cfg_t gpio_cfg_spi0_dual;
110 extern const mxc_gpio_cfg_t gpio_cfg_spi0_quad;
111 extern const mxc_gpio_cfg_t gpio_cfg_spi1_standard;
112 extern const mxc_gpio_cfg_t gpio_cfg_spi1_3wire;
113 extern const mxc_gpio_cfg_t gpio_cfg_spi1_dual;
114 extern const mxc_gpio_cfg_t gpio_cfg_spi1_quad;
115 
116 // SPI v2 Target Selects Pin Definitions
117 extern const mxc_gpio_cfg_t gpio_cfg_spi0_ts0;
118 extern const mxc_gpio_cfg_t gpio_cfg_spi0_ts1;
119 extern const mxc_gpio_cfg_t gpio_cfg_spi0_ts2;
120 extern const mxc_gpio_cfg_t gpio_cfg_spi1_ts0;
121 
122 #endif // LIBRARIES_PERIPHDRIVERS_INCLUDE_MAX78002_MXC_PINS_H_
123