Commit Graph

109 Commits

Author SHA1 Message Date
Ian Gulliver
a7381ca435 MACRAW net stack, slog, load -target flag, LED blink, net_poll disabled pending SPI fix 2026-04-07 08:34:29 +09:00
Ian Gulliver
a9193d51e4 Switch commands to slog, disable net_poll pending fix 2026-04-07 07:43:16 +09:00
Ian Gulliver
46db2fd966 MACRAW IP stack with ARP/ICMP, stable device ordering, LED blink on test 2026-04-07 07:34:24 +09:00
Ian Gulliver
642e2ff318 Remove leading underscores and mixed case from w6300 internal symbols 2026-04-07 07:15:24 +09:00
Ian Gulliver
3c320cf466 Rename screaming case symbols to snake_case in w6300 public API 2026-04-07 07:09:11 +09:00
Ian Gulliver
843a286631 Remove multicast socket polling, fix USB responsiveness 2026-04-07 07:04:53 +09:00
Ian Gulliver
e60479bad8 Switch to IPv4 zeroconf, add test framework with discovery test, fix serial enumeration 2026-04-07 06:58:39 +09:00
Ian Gulliver
b8c0e6be66 Handlers return multiple responses, dispatch polls sockets for UDP commands 2026-04-06 20:22:40 +09:00
Ian Gulliver
f837937cb7 Add firmware_name to info response 2026-04-06 20:09:30 +09:00
Ian Gulliver
49bbe1b29c Split dispatch init/run, join IPv6 multicast discovery group in firmware 2026-04-06 20:01:22 +09:00
Ian Gulliver
00b960d81d Add dispatch loop, copy_to_ram, retry picotool load without sleep 2026-04-06 17:36:41 +09:00
Ian Gulliver
b197f0bfa7 Extract picoboot and info handlers into lib/handlers 2026-04-06 17:24:34 +09:00
Ian Gulliver
00ab432a72 Add IPv6 link-local address to net_init and info response, use WaitGroup.Go 2026-04-06 17:20:13 +09:00
Ian Gulliver
1fa1b2076c Poll for BOOTSEL readiness instead of fixed sleep, load with -x 2026-04-06 09:19:26 +09:00
Ian Gulliver
ee8563ab69 Remove DHCP client, preserved on dhcp-wip branch 2026-04-06 09:10:50 +09:00
Ian Gulliver
1bbe350370 Add test target, parallelize load and info across two devices 2026-04-05 21:48:47 +09:00
Ian Gulliver
30a697066c Move C++ tree into firmware/ 2026-04-05 21:33:19 +09:00
Ian Gulliver
4989cfd8cb Use pico_rand for DHCP xid, run cmake in load command 2026-04-05 21:30:21 +09:00
Ian Gulliver
28caa2e590 Add sorted_list, timer_queue, and DHCP discover with inline options 2026-04-05 21:23:14 +09:00
Ian Gulliver
421cb5840e Split into main/net/tusb_config, extract ring_buffer and usb_cdc headers 2026-04-05 21:04:56 +09:00
Ian Gulliver
9fc79408dc Non-blocking USB TX with ring buffer and immediate drain 2026-04-05 20:47:48 +09:00
Ian Gulliver
d33b711378 Sleep with __wfi() between USB interrupts instead of busy-polling 2026-04-05 20:36:34 +09:00
Ian Gulliver
401008b5a7 Switch from stdio to direct TinyUSB CDC, drop cstdio from w6300 2026-04-05 17:03:34 +09:00
Ian Gulliver
579876774e Rename internal symbols: snake_case accessors, REG_ prefix for registers, no reserved identifiers 2026-04-05 16:26:56 +09:00
Ian Gulliver
b7fd5f7668 Fix public API: const refs, return by value, ip_address for addrs, remove void* dispatch 2026-04-05 15:32:20 +09:00
Ian Gulliver
732ea4250d Rename all internal wiz/WIZCHIP symbols to clean names 2026-04-05 09:09:10 +09:00
Ian Gulliver
eee3a2a420 Remove dead void* dispatch functions and unused internal enums/constants 2026-04-05 09:01:37 +09:00
Ian Gulliver
fd9e85c970 Use std::array, std::span, split void* ctl functions into typed API 2026-04-05 08:55:51 +09:00
Ian Gulliver
7f7055cec5 Use std::expected for socket return types, enum class sock_error 2026-04-05 08:38:16 +09:00
Ian Gulliver
0b81ca6139 Replace raw uint8_t constants with enum class types, move internal constants to cpp 2026-04-05 08:18:28 +09:00
Ian Gulliver
8a48c58a0b Add socket_id and port_num strong types to W6300 socket API 2026-04-05 07:30:50 +09:00
Ian Gulliver
ef7baee973 Rename W6300 public API: drop wiz prefix, snake_case, verb-first functions, namespace w6300 2026-04-05 07:01:43 +09:00
Ian Gulliver
9f9a1885ae Rename msgpackpp->msgpack, merge device+protocol->wire, absorb picoserial into client 2026-04-04 23:16:25 +09:00
Ian Gulliver
8e550d37db Merge PIO code into w6300.cpp, rename pio.pio to qspi.pio 2026-04-04 23:08:33 +09:00
Ian Gulliver
3af0f7695d Enable compiler warnings, remove dead code, fix unused variable 2026-04-04 20:52:54 +09:00
Ian Gulliver
6f95d5d595 Hide internal W6300 symbols with anonymous namespace 2026-04-04 20:47:25 +09:00
Ian Gulliver
6782025e38 Split w6300 headers into public w6300.h and w6300_internal.h, rename pio files 2026-04-04 20:36:22 +09:00
Ian Gulliver
aad458f44c Merge w6300 cpp files into single translation unit 2026-04-04 20:21:38 +09:00
Ian Gulliver
43bf0fe951 Stream-decode msgpack responses instead of waiting for read timeout 2026-04-04 19:54:46 +09:00
Ian Gulliver
f8e4249047 Split info fetch from cmd/load into cmd/info 2026-04-04 17:29:37 +09:00
Ian Gulliver
224fe4f7eb Convert W6300 #defines to constexpr/inline across all headers 2026-04-04 17:21:57 +09:00
Ian Gulliver
92e00476da C++-ize W6300 driver: remove vtable indirection, constexpr pins, pragma once 2026-04-04 16:22:37 +09:00
Ian Gulliver
dec8d0c68d Strip QSPI mode options to quad-only, remove dead files 2026-04-04 15:28:27 +09:00
Ian Gulliver
45e121bd99 Set locally-administered MAC from board ID at init 2026-04-04 15:12:15 +09:00
Ian Gulliver
0973f9c454 Reorder ext IDs, add board ID to ResponseInfo, fix CRLF translation 2026-04-04 15:09:16 +09:00
Ian Gulliver
d2b9a2e2aa Add RequestInfo/ResponseInfo with MAC address 2026-04-04 15:00:16 +09:00
Ian Gulliver
46af5becfe Strip W6300 drivers to W6300-only, remove doxygen, flatten into w6300/ 2026-04-03 22:37:43 +09:00
Ian Gulliver
577fc6d774 Add W6300 ethernet initialization 2026-04-03 21:47:48 +09:00
Ian Gulliver
d6541a76ed Make roundTrip generic on response type 2026-04-03 17:47:03 +09:00
Ian Gulliver
21ea6c9332 Rename BOOTSEL to PICOBOOT, disable mass storage in bootsel mode 2026-04-03 17:44:32 +09:00