ra8-firmware 0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
Loading...
Searching...
No Matches
ra8_wifi_cfg Struct Reference

Everything ra8_wifi_init needs that the facade cannot discover. More...

#include <ra8_wifi.h>

Collaboration diagram for ra8_wifi_cfg:

Data Fields

const ra8_wifi_backend_tbackend
 Radio operations; every row set.
void * backend_ctx
 Opaque state handed to the backend.
ra8_wifi_ip_bind_fn ip_bind
 IP-stack hook for ra8_wifi_wait_ip.
void * ip_ctx
 Opaque context handed to ip_bind.

Detailed Description

Everything ra8_wifi_init needs that the facade cannot discover.

The backend and its context select and drive the radio; the IP hook and its context obtain a lease. All four are required: a facade with a half-wired configuration would fail deep in a call rather than at init, which is the wrong place to find out.

Invariant
backend points at a table with every function pointer set.
ip_bind is non-null; ra8_wifi_wait_ip has nothing to call otherwise.
Example:
ra8_wifi_cfg_t cfg = {};
(void)ra8_wifi_c6link_setup(&c6, &bcfg, &cfg); // fills backend + backend_ctx
cfg.ip_bind = my_dhcp;
cfg.ip_ctx = &s_link;
static ra8_c6link_t s_link
Definition c6_cam_app.c:44
struct ra8_wifi_cfg ra8_wifi_cfg_t
ra8_wifi_ip_bind_fn ip_bind
IP-stack hook for ra8_wifi_wait_ip.
Definition ra8_wifi.h:372
void * ip_ctx
Opaque context handed to ip_bind.
Definition ra8_wifi.h:373
See also
ra8_wifi_init
Since
0.1.0

Definition at line 369 of file ra8_wifi.h.

Field Documentation

◆ backend

const ra8_wifi_backend_t* ra8_wifi_cfg::backend

Radio operations; every row set.

Definition at line 370 of file ra8_wifi.h.

Referenced by ra8_wifi_c6link_setup(), and ra8_wifi_init().

◆ backend_ctx

void* ra8_wifi_cfg::backend_ctx

Opaque state handed to the backend.

Definition at line 371 of file ra8_wifi.h.

Referenced by ra8_wifi_c6link_setup(), and ra8_wifi_init().

◆ ip_bind

ra8_wifi_ip_bind_fn ra8_wifi_cfg::ip_bind

IP-stack hook for ra8_wifi_wait_ip.

Definition at line 372 of file ra8_wifi.h.

Referenced by ra8_wifi_init(), and wifi_hal_make_cfg().

◆ ip_ctx

void* ra8_wifi_cfg::ip_ctx

Opaque context handed to ip_bind.

Definition at line 373 of file ra8_wifi.h.

Referenced by ra8_wifi_init(), and wifi_hal_make_cfg().


The documentation for this struct was generated from the following file: