Hardware Abstraction Layer for FreeRTOS
mux.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: MIT */
2 /*
3  * Author: Andreas Werner <kernel@andy89.org>
4  * Date: 2016
5  */
6 #ifndef MUX_H_
7 #define MUX_H_
8 #include <stdint.h>
9 #include <system.h>
20 struct mux;
25 struct mux *mux_init();
31 int32_t mux_deinit(struct mux *mux);
32 
36 #define MUX_CTL_OPEN BIT(0)
37 
40 #define MUX_CTL_PULL_DOWN BIT(1)
41 
44 #define MUX_CTL_PULL_UP BIT(2)
45 
48 #define MUX_CTL_SCHMITT BIT(3)
49 
52 #define MUX_CTL_MODE(x) (x << 8)
53 
63 int32_t mux_pinctl(struct mux *mux, uint32_t pin, uint32_t ctl, uint32_t extra);
65 #endif
mux_init
struct mux * mux_init()
system.h
mux_deinit
int32_t mux_deinit(struct mux *mux)
mux_pinctl
int32_t mux_pinctl(struct mux *mux, uint32_t pin, uint32_t ctl, uint32_t extra)