|
Zephyr API Documentation 4.4.99
A Scalable Open Source RTOS
|
Public API for MUX (Multiplexer) controllers. More...
#include <errno.h>#include <stddef.h>#include <zephyr/types.h>#include <zephyr/device.h>#include <zephyr/devicetree.h>#include <zephyr/devicetree/mux.h>#include <zephyr/sys/util.h>#include <zephyr/syscalls/mux.h>Go to the source code of this file.
Data Structures | |
| struct | mux_control |
| Addressing-only specifier for a single MUX control line. More... | |
| struct | mux_state |
| Addressing + default state pair for a MUX control line. More... | |
| struct | mux_control_driver_api |
| MUX controller driver API. More... | |
Macros | |
| #define | MUX_CONTROL_DT_SPEC_DEFINE_BY_IDX(node_id, idx) |
Define a mux_control object from a mux-controls entry. | |
| #define | MUX_CONTROL_DT_SPEC_DEFINE(node_id) |
| Equivalent to MUX_CONTROL_DT_SPEC_DEFINE_BY_IDX(node_id, 0). | |
| #define | MUX_CONTROL_DT_SPEC_DEFINE_BY_NAME(node_id, name) |
Define a mux_control object by name from a mux-control-names entry. | |
| #define | MUX_STATE_DT_SPEC_DEFINE_BY_IDX(node_id, idx) |
Define a mux_state object from a mux-states entry. | |
| #define | MUX_STATE_DT_SPEC_DEFINE(node_id) |
| Equivalent to MUX_STATE_DT_SPEC_DEFINE_BY_IDX(node_id, 0). | |
| #define | MUX_STATE_DT_SPEC_DEFINE_BY_NAME(node_id, name) |
Define a mux_state object by name from a mux-state-names entry. | |
Functions | |
| int | mux_control_set (const struct device *dev, const struct mux_control *control, uint32_t state) |
| Drive a MUX control line to the given state. | |
| int | mux_state_apply (const struct device *dev, const struct mux_state *mstate) |
| Apply a devicetree-defined default state to a MUX control line. | |
| int | mux_state_get (const struct device *dev, const struct mux_control *control, uint32_t *state) |
| Read back the current state of a MUX control line. | |
| int | mux_control_disconnect (const struct device *dev, const struct mux_control *control) |
| Physically disconnect a MUX control line. | |
Public API for MUX (Multiplexer) controllers.