Phase 37.1: Fix STDIN routing (compositor bypass)

Issue: NipBox was blocking on READ syscall forever.
Root Cause: Input was being routed to inactive compositor channel.

Fix: Route stdin directly to chan_input since compositor is not operational in Phase 37.

Status:
-  STDIN routing path corrected
- ⚠️ UART input still not reaching NexShell (polling issue or timing)

Next: Investigate UART ISR or add buffering for pre-boot input.
This commit is contained in:
Markus Maiwald 2026-01-04 02:06:09 +01:00
parent 1b4facd86b
commit 641847ba47
1 changed files with 2 additions and 6 deletions

View File

@ -149,12 +149,8 @@ proc ion_push_stdin*(p: pointer, len: csize_t) {.exportc, cdecl.} =
kprintln("[Kernel] Input packet pushed to ring")
# Phase 35d: Route to Compositor FIRST
if chan_compositor_input.ring != nil:
chan_compositor_input.send(pkt)
else:
# Fallback to direct routing if compositor not active
chan_input.send(pkt)
# Phase 37: Direct routing (Compositor not yet operational)
chan_input.send(pkt)
proc get_ion_load(): int =
## Calculate load of the Command Ring (The Heartbeat of the NPLs)