60typedef enum : uint32_t {
90typedef enum : uint32_t {
114typedef enum : uint16_t {
140typedef enum : uint8_t {
c6_join_ip_shift_t
Byte shifts that split a packed IPv4 address into its four octets.
@ k_c6_join_ip_shift_1
Shift for the second octet.
@ k_c6_join_ip_shift_2
Shift for the third octet.
@ k_c6_join_ip_shift_0
Shift for the first (highest) octet.
@ k_c6_join_ip_shift_3
Shift for the fourth (lowest) octet.
c6_join_net_t
Timing and retry bounds for association, DHCP and the ping.
@ k_c6_join_dhcp_wait_ms
DHCP lease wait budget, milliseconds/ticks.
@ k_c6_join_assoc_gap_ms
Gap between association polls, milliseconds.
@ k_c6_join_ping_gap_ms
Gap between echoes, milliseconds.
@ k_c6_join_assoc_tries
Association poll attempts before giving up.
@ k_c6_join_ping_tries
ICMP echoes sent to the gateway.
@ k_c6_join_ping_wait_ms
Per-echo reply timeout, milliseconds/ticks.
void c6_join_print_banner(uint32_t cpuclk_hz, uint32_t pclka_hz)
Print the banner: identity, clocks and link parameters.
c6_join_cfg_t
Link, thread and pacing parameters this application chooses.
@ k_c6_join_worker_stack
Worker-thread stack, in bytes.
@ k_c6_join_uart_baud
Console rate, 8N1, over the J-Link OB VCOM.
@ k_c6_join_heartbeat_ms
Heartbeat gap after the verdict, in milliseconds and therefore in ThreadX ticks.
@ k_c6_join_worker_prio
Worker priority and preemption threshold.
@ k_c6_join_edge_poll_ms
Poll period for a side-band pin with no ICU channel.
@ k_c6_join_boot_wait_ms
Settling delay before the first transaction.
@ k_c6_join_arena_bytes
Decode arena handed to the facade.
@ k_c6_join_sck_hz
SPI bit rate; the rate silicon ran at.
ra8_err_t c6_join_net_up(ra8_c6link_t *link, const ra8_c6link_mac_t *mac, c6_join_lease_t *out)
Bring the IP layer up over the associated C6 link and prove traffic.
struct c6_join_lease c6_join_lease_t
void c6_join_put_hex(uint32_t value, uint8_t digits)
Emit a value as a fixed-width lower-case hexadecimal field.
void c6_join_put_ip(uint32_t ip)
Emit a packed IPv4 address as a dotted quad.
void c6_join_put_u32(uint32_t value)
Emit an unsigned 32-bit value in decimal.
void c6_join_put_mac(const ra8_c6link_mac_t *mac)
Emit an IEEE 802 address as six colon-separated hexadecimal octets.
void c6_join_puts(const char *text)
Write a NUL-terminated string to the board console.
c6_join_fmt_t
Bounds for the console formatters in src/c6_join_console.c.
@ k_c6_join_str_max
Longest string the console helper emits.
@ k_c6_join_hex_byte
Hex digits printed for a byte-wide field.
@ k_c6_join_hex_bits
Bits per hexadecimal digit.
@ k_c6_join_dec_digits
Digits in the widest 32-bit decimal value.
@ k_c6_join_ip_mask
Single-octet mask for IPv4 formatting.
@ k_c6_join_hex_mask
Nibble mask.
@ k_c6_join_dec_radix
Decimal radix.
@ k_c6_join_ip_octets
Octets in an IPv4 address.
@ k_c6_join_hex_digits
Digits in the widest 32-bit hex value.
@ k_c6_join_hex_alpha
First nibble value spelled with a letter.
The single integration boundary between this firmware and the ESP32-C6.
struct ra8_c6link_mac ra8_c6link_mac_t
struct ra8_c6link ra8_c6link_t
Error Code Definitions for ra8-firmware.
ra8_err_codes_t ra8_err_t
Canonical error-return type used by every ra8-firmware API.
What the DHCP bring-up learned, for the verdict and the console.
uint32_t gateway
Default gateway from the lease; the ping target.
uint32_t mask
Subnet mask from the lease.
uint32_t dhcp_server
Address of the DHCP server that answered.
bool ping_ok
A gateway ICMP echo reply was received.
uint32_t ip
Leased station address, or zero on failure.