Commit Graph
88 Commits
Author SHA1 Message Date
flamingcow 01e00dfffe BCM path proven on X520: fix multi-byte i2c read (SDA release), GET_SNR is 0x8030 invoked bare, IEEE SNR regs dead on BCM, module pause forced off 2026-08-12 17:50:14 -07:00
flamingcow 6f787c0873 Record X520 install: FS+Wiitek seated and linked, FS's honest EEPROM is what trips ixgbe qualification, uplink moved to enp88s0 2026-08-12 17:35:25 -07:00
flamingcow 5f4a8ceb57 Vendor AQR datasheet, correct timestamp model (hw rx stamps are a hard requirement), order ConnectX-5, map 82599 bucket-timestamp routes 2026-08-10 12:50:57 -07:00
flamingcow 73074040e0 Answer open questions from desk analysis: ETQF steering, E820 is post-FEC, compound I2C op, forced co-location 2026-08-10 11:51:39 -07:00
flamingcow 8c8e0c7d32 Add open-questions doc for pre-hardware deep-dive 2026-08-10 11:31:19 -07:00
flamingcow 44e010caa9 Note Wiitek ixgbe RollBall client and flag ixgbe RX-steering as open investigation 2026-08-10 11:29:05 -07:00
flamingcow 3f1bb03e52 Record X520 ixgbe raw-i2c patch and BCM client prep in state doc 2026-08-10 11:21:49 -07:00
flamingcow 6597a11c33 Add in-repo project docs: goals, state, hardware, module-PHY transports, module diagnostics, and measurement lessons 2026-08-10 10:34:26 -07:00
flamingcow 6d73221123 Hold a fatal error on the framebuffer and reboot in five minutes rather than exiting, since init's death drops the kernel's panic screen over the cause 2026-08-05 21:46:15 -07:00
flamingcow cd259556d4 Build i40e into the appliance kernel, whose forbidden list predated the noise pair that needs it 2026-08-05 21:46:15 -07:00
flamingcow e7c73ca0a9 Reveal the build's commit hash in place of the reset label while a finger holds the top-right corner, and dev where go run left no stamp 2026-08-05 16:13:20 -07:00
flamingcow 2fcab83756 Drive a noise cable on the i40e pair, cycling its link down and up since the module PHYs ignore everything softer, and flag its absence beside the error columns 2026-08-05 10:49:23 -07:00
flamingcow 88f4f7da80 Poll the nic on the sampler's cadence, and reboot rather than exit when a clean return reaches PID 1 2026-08-05 08:18:44 -07:00
flamingcow ab60cc1cfc Cap cpu idle exit latency for the life of the run, deep enough to keep C1 and shallow enough to block the rest 2026-08-04 22:50:22 -07:00
flamingcow 49eaa8a8a8 Take the rate epoch from the slowest stream's frontier, since reading a bucket claims every stream has delivered through it 2026-08-04 22:38:10 -07:00
flamingcow 7b2601a02e Fail loudly on a touch read, stop the workers before their sockets close, and file down the small edges 2026-08-04 22:26:07 -07:00
flamingcow 12cef6a89b Fold the shutdown flags into one, take the smallest frame to the wire minimum, drop the speed column 2026-08-04 22:12:07 -07:00
flamingcow 19b0f1d2ea Refuse a filter location something else holds, and the driver's word on how many it wrote 2026-08-04 22:12:03 -07:00
flamingcow f5d05d1fc5 Fail loudly on a drm read instead of leaving the panel frozen on its last frame 2026-08-04 22:11:58 -07:00
flamingcow dd94f4cab5 Set the socket buffers through the force options alone instead of falling back to the capped ones 2026-08-04 22:01:10 -07:00
flamingcow 4c7062d600 Take the line rate as a constant so nothing has to be plugged in, and drop the config box 2026-08-04 21:58:52 -07:00
flamingcow 01d673dc83 Check the header version on arrival and say what the error window actually spans 2026-08-04 21:29:03 -07:00
flamingcow 49de171ad0 Commit the receive counters once per batch instead of once per frame 2026-08-04 21:25:04 -07:00
flamingcow 21788fdd4f Judge a frame against the stream its socket receives rather than the one its header claims 2026-08-04 21:19:08 -07:00
flamingcow 51467231ee Fill what a rounded rectangle contains outright as spans instead of pixel by pixel 2026-08-04 21:09:12 -07:00
flamingcow ce44fe9866 Walk the control buffer by hand instead of allocating a message list per frame 2026-08-04 20:48:17 -07:00
flamingcow 1d54a1a1f6 Checksum the header and refuse sequence numbers the sender never sent 2026-08-04 20:41:16 -07:00
flamingcow 703039587b Bucket received frames by their mac receive stamp and read one bucket back 2026-08-04 20:04:30 -07:00
flamingcow 8db5c29882 Cover the loss window, rate window, error taxonomy and formatters with tests 2026-08-04 15:46:12 -07:00
flamingcow 63196eb691 Mirror the panel in the console table as one summed row in two sections 2026-08-04 14:02:53 -07:00
flamingcow fbfcabda7e Draw every panel figure from the latest sample instead of holding the totals 2026-08-04 13:49:21 -07:00
flamingcow 4e60757937 Rate from the newest bucket, stamped when the counters are actually read 2026-08-04 13:45:16 -07:00
flamingcow 2035d42734 Fold the leftover formatters into the SI ones and stop reallocating the draw scratch 2026-08-04 13:37:19 -07:00
flamingcow f5a6420cfa Drop the fatal flag now that every failed check is fatal 2026-08-04 13:33:08 -07:00
flamingcow 39c27166dc Hardcode the settled sizes, streams and batch instead of carrying flags for them 2026-08-04 13:31:14 -07:00
flamingcow 05e1958710 Cut the drm package comments back to what is not evident from the code 2026-08-04 13:23:41 -07:00
flamingcow 4fd3abaf25 Move the shared drm ioctl abi into internal/drm 2026-08-04 13:21:50 -07:00
flamingcow 66bfb88dd7 Make every failed check and unreadable counter fatal instead of degrading 2026-08-04 13:03:07 -07:00
flamingcow fb6a0d2c1b Push the new origin into the sample ring so a reset cannot underflow the totals 2026-08-04 12:59:50 -07:00
flamingcow a285b8999c Drop the counter padding that was never buying a cache line 2026-08-04 12:53:53 -07:00
flamingcow 06592cbc81 Stop counting a partly filled send vector as a failure 2026-08-04 12:45:12 -07:00
flamingcow 1f9b5ea62e Look the expected checksum up instead of carrying it in the frame 2026-08-04 12:45:04 -07:00
flamingcow 03b7ff4954 Drop the write-only direction fields and the unused pattern names 2026-08-04 12:26:10 -07:00
flamingcow 21b20d0071 Scale integer counts on the panel like every other figure 2026-08-04 11:27:35 -07:00
flamingcow 49a1a2f829 Read rx errors from the driver stats array and add the pcs counters 2026-08-04 11:27:30 -07:00
flamingcow 5eea6856fb Cut the comments back to the genuinely subtle ones 2026-08-01 16:14:12 -07:00
flamingcow 726c4c2445 Rework the panel onto SI figures, labelled chips and one spacing scale 2026-08-01 16:07:44 -07:00
flamingcow de2ff13eb6 Collapse errors into lost, corrupt, link and internal 2026-07-31 17:10:25 -07:00
flamingcow 3c8637f931 Show recent errors as labelled chips and rebuild the reset button to match 2026-07-31 17:05:31 -07:00
flamingcow f512391ee4 Capture the panel by reading the displayed drm buffer instead of fbdev 2026-07-31 16:46:11 -07:00