1 /*
2  * Copyright 2023 NXP
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  */
6 #ifndef SM_PINCTRL_H_
7 #define SM_PINCTRL_H_
8 
9 #include "fsl_common.h"
10 #include "sm_platform.h"
11 
12 /*******************************************************************************
13  * definition
14  ******************************************************************************/
15 typedef struct
16 {
17     uint32_t channel;
18     uint32_t mux_register;
19     uint32_t mux_mode;
20     uint32_t input_register;
21     uint32_t input_daisy;
22     uint32_t config_register;
23     uint32_t config_value;
24     uint32_t input_on_field;
25 } sm_pinctrl_t;
26 
27 /*******************************************************************************
28  * API
29  ******************************************************************************/
30 
31 #if defined(__cplusplus)
32 extern "C" {
33 #endif /*__cplusplus */
34 
35 void SM_PINCTRL_SetPinMux(sm_pinctrl_t *sm_pinctrl);
36 void SM_PINCTRL_SetPinCfg(sm_pinctrl_t *sm_pinctrl);
37 
38 #if defined(__cplusplus)
39 }
40 #endif /*__cplusplus */
41 
42 /*! @} */
43 
44 #endif /* SM_PINCTRL_H_ */
45