Files
RedBear-OS/local/docs
vasilito 4b58abd15b docs: 3D plan marks Phase 4 winsys landed (Phase 5+ remaining)
Phase 4 of local/docs/3D-DRIVER-PLAN.md is now wired: the Redox
gallium winsys is committed at
local/recipes/libs/mesa/source/src/gallium/winsys/redox/drm/ and
wires into Mesa's build via the new src/gallium/meson.build.

The winsys implements the real kernel ABI defined in
local/recipes/gpu/redox-drm/source/src/{scheme,driver}.rs:
- redox_drm_bo.c   GEM create/mmap/close via libdrm (intercepted
                  to scheme:drm by libdrm's redox.patch)
- redox_drm_cs.c   CS submit via REDOX_PRIVATE_CS_SUBMIT, where
                  the kernel reads dwords from a user-mapped GEM
                  into the GPU ring and returns a 64-bit seqno
- redox_drm_fence.c  Polling fence over the kernel's last-completed
                  seqno. The kernel doesn't expose sync objects yet;
                  this is an honest stopgap. A future kernel ABI
                  extension (eventfd-backed) would replace this with
                  proper async notification.
- redox_drm_surface.c  Minimal pipe_surface implementation. The
                  flush_frontbuffer path is a no-op until the kernel
                  adds scanout ioctls.
- redox_drm_winsys.c  pipe_screen_ops table and lifecycle (init/destroy).

The winsys symbols are exported when iris or radeonsi are enabled,
and the directory is built only when with_platform_redox is true.

Status table updates: iris and radeonsi change from
'🟡 Compiles (libclc OK)' to '🟡 Compiles + winsys wired', with
the remaining ' Needs winsys runtime' tag listing the kernel ABI
extensions needed.

The plan also notes that Phase 5+ is blocked on kernel ABI
extensions, not on userland work:
- REDOX_SCANOUT_FLIP ioctl (for surface_flush_frontbuffer wiring)
- context_id field in redox_private_cs (for multi-context)
- eventfd-backed fence (replaces the polling fence)
- DMA-BUF export (for inter-process buffer sharing)
- SDMA + VM paging ioctls (radeonsi-specific)
- i915 batch buffer submission path (iris-specific)
2026-07-25 15:50:03 +09:00
..