36#define PORT_VIEW_UNKNOWN 0xFFu
38#define PORT_VIEW_NO_PIN 0xFFu
40#define PORT_VIEW_FN_UNKNOWN 0xFFu
59uint32_t port_view_revision(
void);
62bool port_view_has(uint8_t port);
65uint8_t port_view_func(uint8_t port);
69bool port_view_pwm(uint8_t port);
72bool port_view_dshot(uint8_t port);
77const char *port_view_fn_name(uint8_t fn);
80typedef bool (*port_view_ask_fn)(uint8_t seq, uint8_t port,
82void port_view_set_ask(port_view_ask_fn fn);
100uint8_t port_view_ask_seq(
void);
108bool port_view_ask_line(uint8_t port,
char *buf,
size_t cap);
The page map: what the panel can ask the IOmcu for, and set.
#define LINK_PG_PORTS_MAX
Ports the page has room for.
Definition link_pages.h:2190
The panel's side of the programming ports' page (0x33).
prog_link_ask_kind_t
What a prog_link_ask() asks: a port's PIN or its FUNC.
Definition prog_link.h:88
prog_link_ask_state_t
Where the last prog_link_ask() stands.
Definition prog_link.h:94
Definition port_view.h:42
uint8_t refused
Definition port_view.h:49
uint8_t count
Definition port_view.h:43
uint8_t pin[LINK_PG_PORTS_MAX]
Definition port_view.h:47
uint8_t func[LINK_PG_PORTS_MAX]
Definition port_view.h:48
bool has_dshot
Definition port_view.h:46
bool has_func
Definition port_view.h:45