Commit Graph

212 Commits

Author SHA1 Message Date
Red Bear OS e9342b78e9 feat(fbcond): bidirectional serial console mirror for headless login
fbcond now mirrors all framebuffer-console output to the kernel debug (serial)
scheme AND feeds serial input back into the active VT's input queue. Previously,
once fbcond took over the console after display handoff the serial line went
silent (headless operators saw the boot stop at 'Performing handoff' and never
saw the getty login prompt, which draws only to the framebuffer VT). Now the
same console — boot log, login prompt, and shell — is fully usable over serial,
reusing the working framebuffer getty for both surfaces.
2026-07-18 07:23:22 +09:00
Red Bear OS 324172abaf fbcond: restore console scrollback (lost P4-fbcond-scrollback)
Re-adds the archived-but-unapplied scrollback support: a 1000-line ring
buffer in TextScreen capturing all output (incl. pre-handoff boot log), a
Handle::Scrollback variant opened via /scheme/fbcon/<vt>/scrollback, and a
read path returning the retained buffer. Adapted to the current single-step
openat scheme protocol.
2026-07-16 21:59:18 +09:00
Red Bear OS 2b48b9e966 pcid: log PCIe->I/O-port fallback at info; fbcond: transient no-display at debug 2026-07-16 06:39:43 +09:00
Red Bear OS 00b799d512 absorb: 41 orphaned base patches re-applied (Phase 1.0A)
Per local/docs/PATCH-PRESERVATION-AUDIT-2026-07-12.md the base
fork was carrying only 38 of 100 patches in local/patches/base/.
The other 62 patches' content was silently missing from the fork
working tree, even though their .patch files were preserved.

This commit re-applies 41 patches that genuinely still apply
cleanly + 17 hunks that partially applied. Recovery covers:

- D-Bus initfs service wiring (P4-initfs-dbus-services)
- USB service wiring (P4-initfs-usb-drm-services)
- netcfg/dhcp/dhcpv6 driver fixes
- acpid shutdown/PM/quirk fixes
- inputd/ps2d hard-fail logging
- pcid driver interface refinements (server cmd channel)
- virtio-core for VirtualBox support
- ixgbed/rtl8139/rtl8168 net drivers
- ahcid NCQ + per-function interrupt coalescing
- logd persistent logging
- bootstrap procmgr race-condition fixes
- cargo version pin to +rb0.3.0 (synchronized release branch)

58 files changed, +1444/-318 lines.

Untracked mnt/ tree and *.orig / *.rej files cleaned up after
patch application (leftover from absolute-path patch headers).
2026-07-12 01:29:08 +03:00
Red Bear OS bd595851e2 base: apply Red Bear patches on latest upstream/main
251 files: init, acpid, ipcd, netcfg, ihdgd, virtio-gpud, scheme-utils,
inputd, block driver, ptyd, ramfs, randd, initfs bootstrap, path deps,
version +rb0.3.1, author attribution
2026-07-11 11:39:24 +03:00
Jeremy Soller 2878a22564 Merge branch 'fix_fbcond_enter' into 'main'
Fix enter key in fbcond

See merge request redox-os/base!297
2026-07-03 06:01:44 -06:00
bjorn3 d1b51888b6 Fix enter key in fbcond 2026-07-02 19:57:52 +02:00
bjorn3 31793e7c0c drivers/graphics/driver-graphics: Implement cursor planes 2026-07-02 19:33:53 +02:00
bjorn3 4411f8cfb6 drivers/graphics/driver-graphics: Implement DRM_IOCTL_MODE_CLOSEFB 2026-07-01 21:49:11 +02:00
bjorn3 9c52365339 Remove unnecessary struct reprs 2026-06-26 12:13:28 +02:00
bjorn3 5701459db4 drivers/graphics/console-draw: Use font height rather than width where necessary
This fixes major corruption of the drawn text.
2026-05-24 20:36:18 +02:00
bjorn3 54b2697a6d drivers/graphics/console-draw: Missed change 2026-05-24 20:31:51 +02:00
bjorn3 5e800afd1b drivers/graphics: Couple of misc fbcond/fbbootlogd cleanups 2026-05-24 20:23:05 +02:00
Wildan M b70f565ec5 fbbootlogd: Fix build 2026-05-16 15:26:38 +07:00
Jeremy Soller a0e34b92e5 Merge branch 'console-font-support' into 'main'
Implement font support

See merge request redox-os/base!261
2026-05-15 17:21:18 -06:00
Migue Magic ae77a4f0ad Implement font support 2026-05-15 17:21:18 -06:00
bjorn3 fc2d098f70 drivers/graphics/driver-graphics: Move property ioctls to a separate module 2026-05-14 18:37:55 +02:00
bjorn3 3e7b757f0b drivers/graphics/driver-graphics: Deduplicate code between MODE_CURSOR and MODE_CURSOR2 2026-05-14 17:40:43 +02:00
bjorn3 798ef0738e drivers/graphics/driver-graphics: Move cursor ioctls to a separate module 2026-05-14 17:36:55 +02:00
bjorn3 df845d6566 drivers/graphics/driver-graphics: Move framebuffer ioctls to a separate module 2026-05-14 17:32:39 +02:00
bjorn3 2ac2182caa drivers/graphics/driver-graphics: Move ioctl impls to a new module 2026-05-14 17:25:02 +02:00
bjorn3 22060149c2 drivers/graphics/driver-graphics: Extract ioctl implementations into a function 2026-05-14 17:22:15 +02:00
bjorn3 241bae84e7 drivers/graphics/driver-graphics: Fix leftover of dummy planes 2026-05-14 17:13:31 +02:00
bjorn3 c66c9e95fa drivers/graphics/driver-graphics: Introduce DrmHandle 2026-05-14 17:05:47 +02:00
bjorn3 a53777050c drivers/graphics/driver-graphics: Expose a bunch of properties on planes 2026-05-14 16:43:10 +02:00
bjorn3 607906de28 Rustfmt 2026-05-14 16:19:10 +02:00
bjorn3 b0d7b6135e Restore some FIXMEs 2026-05-14 16:09:07 +02:00
bjorn3 6a039c29fe drivers/graphics/ihdgd: Don't access CRTC in set_plane 2026-05-14 16:05:57 +02:00
bjorn3 5d6faacfb3 drivers/graphics/driver-graphics: Couple of fixups 2026-05-14 16:00:30 +02:00
bjorn3 0ee128ad8d drivers/graphics: Make everything work 2026-05-14 15:50:15 +02:00
bjorn3 ab8bfb9d5d drivers/graphics/driver-graphics: Report actual planes from MODE_GET_PLANE 2026-05-14 15:33:17 +02:00
bjorn3 76d6398473 drivers/graphics/driver-graphics: Add primary plane for every CRTC 2026-05-14 15:29:58 +02:00
Meijlen 835be6f654 drivers/graphics: Implement support for planes 2026-05-14 15:29:56 +02:00
bjorn3 53da1b0dc4 drivers/graphics/driver-graphics: Fix ioctl order 2026-05-14 15:29:24 +02:00
bjorn3 5f4e5016a8 drivers/graphics/driver-graphics: Implement MODE_ADD_FB2 2026-05-14 14:56:33 +02:00
bjorn3 0eb6390fe1 drivers/graphics/driver-graphics: Report DRM_MAJOR as device major 2026-05-14 12:23:54 +02:00
bjorn3 6875c90850 drivers/graphics/driver-graphics: Implement SET_VERSION and GET_UNIQUE
libdrm needs these when searching for drm devices.
2026-05-14 12:09:55 +02:00
bjorn3 d110147d62 drivers/graphics/driver-graphics: Introduce KmsObjects::remove helper 2026-05-13 21:19:05 +02:00
bjorn3 d1cf7d53d2 drivers/graphics/driver-graphics: Introduce set_connector_edid helper
And don't create a new blob unless the EDID actually changes.
2026-05-13 21:18:59 +02:00
bjorn3 74bd1db73a drivers/graphics/virtio-gpu: Move some block_on calls to the callers 2026-05-13 20:02:01 +02:00
bjorn3 e2c67fa8f8 drivers/graphics/virtio-gpu: Extract create_dumb_buffer_inner as async function 2026-05-13 20:00:25 +02:00
bjorn3 ebdf681eab drivers/graphics/virtio-gpu: Introduce send_request_cursor 2026-05-13 19:46:56 +02:00
bjorn3 7c533510a9 drivers/graphics/driver-graphics: Match error codes of Linux 2026-05-12 21:15:59 +02:00
bjorn3 e4462ccc09 drivers/graphics/driver-graphics: Report dummy TILE property for connectors 2026-05-10 15:28:39 +02:00
bjorn3 3f4ad965de drivers/graphics/driver-graphics: Report ACTIVE property for CRTCs 2026-05-10 15:22:15 +02:00
bjorn3 e93431cac0 drivers/graphics/driver-graphics: Replace From and TryFrom impls with KmsObjectKind trait 2026-05-10 15:09:34 +02:00
bjorn3 009a9130d2 drivers/graphics: Report DRM_CAP_DUMB_PREFERRED_DEPTH to clients 2026-05-10 14:54:47 +02:00
bjorn3 853e050fc8 drivers/graphics/driver-graphics: Use unzip in get_object_properties_data 2026-05-10 12:17:35 +02:00
bjorn3 d528fb73b4 drivers: Use map_bar instead of physmap where possible
Physmap requires root, while map_bar in the future could be run as
unprivileged process given a pcid handle for the target device.
2026-05-09 20:12:41 +02:00
bjorn3 018d795eb0 drivers/graphics: Avoid unnecessary force probes
Force probes can be rather expensive on real hardware so according to
the drm_mode_get_connector docs it should only be done at startup, on a
hotplug event and when explicitly requested by the user.
2026-05-09 12:16:22 +02:00