Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
15 check-ins
|
2026-07-31
| ||
| 22:44 |
Fundamental restructure: thin PHY cog + Spin protocol
Missed fact: P_USB_PAIR is a byte FIFO, not a USB MAC. Working hosts use a fraction of a cog for wait-DP/AKPIN/WYPIN and RDPIN; protocol stays in Spin. - WRPIN BOTH pins with (P_USB_PAIR|P_OE)+(1<<16) Rev B drive-out - TX order: wait DP IN high, AKPIN DP, WYPIN DM - Mailbox is INIT/LINE/TX/RX/SOFEN only (~fit $180) - Spin builds tokens/data/CRC and runs control transfer SM - Dropped HUBEXEC mega-SM and packet-level HAL ISA leaf check-in: 5843a6d69b user: refaqtor tags: trunk | |
| 22:40 | Add host-structure.md (authoritative design); track structural rewrite docs check-in: 8df39dac40 user: refaqtor tags: trunk | |
| 22:40 |
Structural rewrite: whole-transfer mailbox + HUBEXEC host cog
Abandon patch path (packet HAL cmds, raw SE0, TT11, blind settle, FIT thrash). Structure from P2 docs: - Spin posts only whole transfers (CTRL/BULK/INT) - One cog owns P_USB_PAIR and completes sequences in-cog - HUBEXEC_NEW so full protocol fits without shrinking USB - Pair: DIRL o WRPIN even USB|OE only o WXPIN o DIRH both o WYPIN IDLE - Ready: DP IN low/high, DM IN+RDPIN Z only - CORDIC baud once; bus reset via Y=SE0 until Z.SE0 then USB hold Docs: host-structure.md is authority; p2-native-reset superseded. check-in: fb05ea52aa user: refaqtor tags: trunk | |
| 22:34 |
Kill blind WAITX settle: wait only on ready flags (DP IN, DM IN, Z bits)
User rule: settle/blind wait is never correct. Ready conditions now: - TX: after WYPIN wait DP IN low (ack) then high (buffer empty) - Gap: DP empty then Z.EOP of local echo - RX: DM IN high then RDPIN until EOP - SE0: wait both pads low, then GETCT hold for USB min 10ms only - Attach: wait Z.J|Z.K not fixed ms - CORDIC still uses GETQX stall No waitx remains in host cog. FIT $1F0. Harness probe also flags-based. check-in: 63bada202f user: refaqtor tags: trunk | |
| 22:14 |
P2-native PHY hard reset: DIRH not DRVH, TT11 on DP, raw SE0, event waits
Rescan vs P2KB (not generic MCU patterns): - Smart-pin order DIRL o WRPIN o WXPIN o DIRH o WYPIN (Y after enable) - Never DRVH (was forcing OUT high) - Even: P_USB_PAIR|P_OE; odd: P_TT_11 differential OTHER (not a second USB pair) - CORDIC QMUL/QDIV with GETQX stall (no soft waitx) - SETSE/WAITSE for TX empty and RX status - Drop RX purge + long turnaround (was eating FS ACK) - Bus reset: raw DRVL both pads 20ms then re-pair (Y=1 SE0 failed to pull DP in probe) - Harness: raw pad probe + pair_probe before host cog Live: baud $CF5C, SOF ~1kHz, Zidle shows J on fallback; SETUP ACK still timeout. check-in: 5bbaec1d3f user: refaqtor tags: trunk | |
| 22:01 |
Design reset: P2-native rules (not generic MCU USB)
Document silicon-first constraints: Force-1 host cog, P_USB_PAIR ownership, CORDIC for baud, no soft-64 divides, event waits, local RX echo, multi-pair emulators. FIT thrash was structure failure; stop treating P2 like other chips. check-in: ecc3b2b00f user: refaqtor tags: trunk | |
| 21:59 |
Host cog rewrite: CORDIC baud/timing, hard FIT $1F0, no soft divides
Admit prior FIT thrash was soft 64-bit math and sprawl, not CORDIC. QMUL/QDIV compute baud X and us/ms bases in ~120 clocks of waitx. Lean register file + primitives; Spin still owns control orchestration. check-in: 00533baf63 user: refaqtor tags: trunk | |
| 21:56 |
USB PHY: dual WRPIN, TX IN-race fix, drain local RX echo
- Configure both even/odd pins with P_USB_PAIR|P_OE (silicon requirement) - TX: wait after WYPIN before polling buffer-empty; post-EOP gap - RX: drain local TX echo before waiting for device ACK - Spin supplies baud X=$CF5C; longer hub reset/recovery Still: SETUP DATA0 gets no ACK (timeout) on 34/35 and 38/39 — next dig deeper. check-in: c653e7b452 user: refaqtor tags: trunk | |
| 21:44 |
Control xfer: add missing IN/OUT tokens; stage fail logs; hub note
GET_DESCRIPTOR failed at SETUP data/ACK (hs=0,crc=1) on both 34/35 and 38/39 with hub+thumb. SOF live. Next: RX handshake / VBUS power verification. check-in: 69c1bf1894 user: refaqtor tags: trunk | |
| 21:10 |
Bring-up on P81svj44: load, VBUS, SOF live; GET_DESCRIPTOR pending
Harness tries 34/35 then 38/39 with GET_DESCRIPTOR probe. Host cog starts, SOF ~1 kHz confirmed. Fix Spin baudX display (was 32-bit overflow). Device descriptor still fails (CRC/status -2) — need 5V/host path debug next. check-in: 525aaa82b7 user: refaqtor tags: trunk | |
| 21:03 |
Board map: Serial Host base32; top USB prefer 34/35 then 38/39
Primary host pair 34/35 with VBUS EN 33 (pretend top=ch1). Fallback pair 38/39 EN 37 if device not found. Proto gangs 40/48 and 41/49 unchanged. check-in: 61a6333e24 user: refaqtor tags: trunk | |
| 18:39 |
Greenfield USB FS host scaffold: one-cog PHY + Spin orchestration
Implement original (non-community) host stack for P2 smart-pin P_USB_PAIR: hub RAM mailbox ABI, compact PASM primitives, Spin2 control/bulk/int paths, HID/MSC/CDC class stubs under -D gates, self-test harness with debug() metrics. Research/design/hardware docs included. Ignore .bin build products. Pin map still provisional pending board confirm on P81svj44. check-in: c2f0264ef7 user: refaqtor tags: trunk | |
| 18:24 |
Fix TICKETS.md index with all 55 Fossil UUIDs
Populate dependency waves, judgement gates, and UUID table for unambiguous ticket↔work association. check-in: 7bd92970a1 user: refaqtor tags: trunk | |
| 18:24 |
Seed mission prompt and 55-phase ticket index
Heed prompt.md: Fossil-only P2 USB FS Host (HID/MSC/CDC) one-cog driver with self-test harness. Ticket ledger covers research through deliverables; TICKETS.md maps NNNN titles to Fossil UUIDs for live links. check-in: 860217df99 user: refaqtor tags: trunk | |
| 16:58 | initial empty check-in check-in: a4cc59d612 user: refaqtor tags: trunk | |