|
Bridle API 4.2.0
A Zephyr based application framework
|
MFD Driver for an SIPO/MUX GP matrix controller. More...
Functions | |
| LOG_MODULE_REGISTER (mfd_sipomuxgp, CONFIG_MFD_LOG_LEVEL) | |
| int | mfd_sipomuxgp_num_bits (const struct device *dev) |
| Get number of available bits from SIPO/MUX GP. | |
| static int | mfd_sipomuxgp_get_bit (const struct device *dev, uint32_t bit, uint8_t *value) |
| int | mfd_sipomuxgp_bits (const struct device *dev, size_t offs, uint32_t *val) |
| Read 32 bits from SIPO/MUX GP. | |
| static int | mfd_sipomuxgp_set_bit (const struct device *dev, uint32_t bit, uint8_t value) |
| int | mfd_sipomuxgp_bit_on (const struct device *dev, size_t bit) |
| Write logical one to a single bit on SIPO/MUX GP. | |
| int | mfd_sipomuxgp_bit_off (const struct device *dev, size_t bit) |
| Write logical zero to a single bit on SIPO/MUX GP. | |
| int | mfd_sipomuxgp_xy_on (const struct device *dev, size_t x, size_t y) |
| Write logical one to a single XY position on SIPO/MUX GP. | |
| int | mfd_sipomuxgp_xy_off (const struct device *dev, size_t x, size_t y) |
| Write logical zero to a single XY position on SIPO/MUX GP. | |
| int | mfd_sipomuxgp_output_ratio (const struct device *dev, uint8_t percent) |
| Change ratio of SIPO/MUX GP output enable signal. | |
| static void | mfd_sipomuxgp_process (const struct device *dev) |
| static int | mfd_sipomuxgp_set_oe (const struct device *dev, const uint8_t value) |
| static int | mfd_sipomuxgp_set_addr (const struct device *dev, const uint8_t addr) |
| static int | mfd_sipomuxgp_cfg_oe (const struct device *dev) |
| static int | mfd_sipomuxgp_cfg_addr (const struct device *dev) |
| static void | mfd_sipomuxgp_refresh_worker (struct k_work *work) |
| static void | mfd_sipomuxgp_refresh_timer (struct k_timer *timer) |
| static int | mfd_sipomuxgp_init (const struct device *dev) |
MFD Driver for an SIPO/MUX GP matrix controller.
| #define DT_INST_FOREACH_SIPOMUXGP_STATUS_OKAY | ( | b | ) |
| #define INST_DT_SIPOMUXGP | ( | n, | |
| b | |||
| ) | DT_INST(n, sipo_mux_gp_##b) |
| #define MFD_SIPOMUXGP_CTX_BACKEND | ( | n, | |
| b | |||
| ) |
| #define MFD_SIPOMUXGP_CTX_BITBUF | ( | n, | |
| b | |||
| ) | (uint8_t [(MFD_SIPOMUXGP_CTX_BITBUF_SZ(n, b))]) {} |
| #define MFD_SIPOMUXGP_CTX_BITBUF_SZ | ( | n, | |
| b | |||
| ) | (__TOTAL_BYTES(MFD_SIPOMUXGP_CTX_NUM_BITS(n, b))) |
| #define MFD_SIPOMUXGP_CTX_COLUMNS | ( | n, | |
| b | |||
| ) | DT_PROP(INST_DT_SIPOMUXGP(n, b), data_width) |
| #define MFD_SIPOMUXGP_CTX_FOREACH_ELEM | ( | n, | |
| b, | |||
| p | |||
| ) |
| #define MFD_SIPOMUXGP_CTX_GPIO_ENABLE | ( | n, | |
| b | |||
| ) | GPIO_DT_SPEC_GET_OR(INST_DT_SIPOMUXGP(n, b), oe_gpios, {0}) |
| #define MFD_SIPOMUXGP_CTX_GPIOS_ADDR | ( | n, | |
| b | |||
| ) |
| #define MFD_SIPOMUXGP_CTX_NUM_ADDR | ( | n, | |
| b | |||
| ) | DT_PROP_LEN(INST_DT_SIPOMUXGP(n, b), addr_gpios) |
| #define MFD_SIPOMUXGP_CTX_NUM_BITS | ( | n, | |
| b | |||
| ) | (MFD_SIPOMUXGP_CTX_ROWS(n, b) * MFD_SIPOMUXGP_CTX_COLUMNS(n, b)) |
| #define MFD_SIPOMUXGP_CTX_PADDING | ( | n, | |
| b | |||
| ) | (MFD_SIPOMUXGP_CTX_SHIFTING(n, b) - MFD_SIPOMUXGP_CTX_COLUMNS(n, b)) |
| #define MFD_SIPOMUXGP_CTX_PADDING_SZ | ( | n, | |
| b | |||
| ) | (__TOTAL_BYTES(MFD_SIPOMUXGP_CTX_PADDING(n, b))) |
| #define MFD_SIPOMUXGP_CTX_RFSTIME | ( | n, | |
| b | |||
| ) | DT_PROP(INST_DT_SIPOMUXGP(n, b), refresh_time_us) |
| #define MFD_SIPOMUXGP_CTX_ROWS | ( | n, | |
| b | |||
| ) | BIT(MFD_SIPOMUXGP_CTX_NUM_ADDR(n, b)) |
| #define MFD_SIPOMUXGP_CTX_SHIFTING | ( | n, | |
| b | |||
| ) | DT_PROP(INST_DT_SIPOMUXGP(n, b), shift_width) |
| #define MFD_SIPOMUXGP_CTX_SPEC_ELEM | ( | _node_id, | |
| _prop, | |||
| _idx | |||
| ) | GPIO_DT_SPEC_GET_BY_IDX(_node_id, _prop, _idx), |
| #define SIPOMUXGP_INIT | ( | n, | |
| b | |||
| ) |
| LOG_MODULE_REGISTER | ( | mfd_sipomuxgp | , |
| CONFIG_MFD_LOG_LEVEL | |||
| ) |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |