0ec7bd46bb
ROLLUP of all Phase 1-3 work on branch 0.3.0, targeting a production-ready console + full graphical desktop under Intel and Virgl/VirtIO-GPU. === Phase 1 — Stability === - fbcond: Enter key handler (scancode 0x1C→\n), display map buffering, control-char filter in all 7 keymaps, write_event assert - build-redbear.sh: auto-rebuild-prefix when fork timestamps are newer than prefix/x86_64-unknown-redox/sysroot (was warning-only). Added configurable REDBEAR_SKIP_PREFIX_REBUILD guard. - build-redbear.sh: set explicit keymap '-K us' in console activation - config/redbear-device-services.toml: remove spurious init.d service files for redbear-acmd/ecmd/usbaudiod. These USB device daemons are spawned dynamically by pcid-spawner, not as boot-time init services. Starting them without args panicked the boot flow. - relibc: grantpt/unlockpt/ptsname (then deduplicated against stdlib) - userutils: cherry-pick upstream getty commit2834434(standard C ptsname/grantpt/unlockpt) - base fork: Russian (ЙЦУКЕН) keymap + inputd control-char filter (K_ESC/K_BKSP/K_ENTER → \0, commit73e44d81in submodule/base) === Phase 2 — Login & Console === - login.rs: restored to 0.2.5-known-good liner-based prompt - redbear-upower: removed tokio full/signal features → protection fault fix - redbear-power: excluded temporarily (being fixed in other session) - tlc version: updated to 0.3.0 === Phase 3 — GPU/3D Drivers (commit0898332f7a) === Intel i915: FULLY implemented — real ring buffer + MMIO command submission via GEM DMA → GGTT → i915 render ring, with hardware head-pointer polling (2M iterations, 50µs backoff). Zero stubs. VirtIO GPU/Virgl (VirtioTransport): 11 VIRTGPU ioctls (GETPARAM, GET_CAPS, RESOURCE_CREATE, RESOURCE_INFO, CONTEXT_INIT, EXECBUFFER, WAIT, TRANSFER_TO_HOST, TRANSFER_FROM_HOST, MAP, CREATE_BLOB) ported from Linux 7.1 virtgpu_ioctl.c and virtgpu_vq.c. - driver.rs: 8 virgl_* trait methods (default Unsupported) - scheme.rs: 11 ioctl constants + 8 wire structures + dispatch - virtio/transport.rs: PCI capability discovery, feature negotiation, control+cursor virtqueue setup, vring descriptor building - virtio/mod.rs: real implementations for all 8 virgl_* methods - intel/mod.rs: explicit virgl Unsupported stubs Other changes from active sessions: Cargo.toml version bumps, linux-kpi headers, libpciaccess recipe, mesa/recipe.toml, kf6 patches, expat, driver-manager, redbear-sessiond, redbear-compositor, cub, tlc, and many other local recipes.
153 lines
3.5 KiB
TOML
153 lines
3.5 KiB
TOML
[package]
|
|
name = "redbear-hwutils"
|
|
version = "0.3.0"
|
|
edition = "2024"
|
|
|
|
[[bin]]
|
|
name = "lspci"
|
|
path = "src/bin/lspci.rs"
|
|
|
|
[[bin]]
|
|
name = "lsusb"
|
|
path = "src/bin/lsusb.rs"
|
|
|
|
[[bin]]
|
|
name = "redbear-evtest"
|
|
path = "src/bin/evtest-rbos.rs"
|
|
|
|
[[bin]]
|
|
name = "redbear-input-inject"
|
|
path = "src/bin/input-inject-rbos.rs"
|
|
|
|
[[bin]]
|
|
name = "redbear-phase3-input-check"
|
|
path = "src/bin/redbear-phase3-input-check.rs"
|
|
|
|
[[bin]]
|
|
name = "redbear-phase4-wayland-check"
|
|
path = "src/bin/redbear-phase4-wayland-check.rs"
|
|
|
|
[[bin]]
|
|
name = "redbear-bluetooth-battery-check"
|
|
path = "src/bin/redbear-bluetooth-battery-check.rs"
|
|
|
|
[[bin]]
|
|
name = "redbear-phase5-network-check"
|
|
path = "src/bin/redbear-phase5-network-check.rs"
|
|
|
|
[[bin]]
|
|
name = "redbear-phase5-wifi-check"
|
|
path = "src/bin/redbear-phase5-wifi-check.rs"
|
|
|
|
[[bin]]
|
|
name = "redbear-phase5-wifi-capture"
|
|
path = "src/bin/redbear-phase5-wifi-capture.rs"
|
|
|
|
[[bin]]
|
|
name = "redbear-phase5-wifi-run"
|
|
path = "src/bin/redbear-phase5-wifi-run.rs"
|
|
|
|
[[bin]]
|
|
name = "redbear-phase5-wifi-analyze"
|
|
path = "src/bin/redbear-phase5-wifi-analyze.rs"
|
|
|
|
[[bin]]
|
|
name = "redbear-phase5-wifi-link-check"
|
|
path = "src/bin/redbear-phase5-wifi-link-check.rs"
|
|
|
|
[[bin]]
|
|
name = "redbear-phase6-kde-check"
|
|
path = "src/bin/redbear-phase6-kde-check.rs"
|
|
|
|
[[bin]]
|
|
name = "redbear-greeter-check"
|
|
path = "src/bin/redbear-greeter-check.rs"
|
|
|
|
[[bin]]
|
|
name = "redbear-drm-display-check"
|
|
path = "src/bin/redbear-drm-display-check.rs"
|
|
|
|
[[bin]]
|
|
name = "redbear-phase-iommu-check"
|
|
path = "src/bin/redbear-phase-iommu-check.rs"
|
|
|
|
[[bin]]
|
|
name = "redbear-phase-ps2-check"
|
|
path = "src/bin/redbear-phase-ps2-check.rs"
|
|
|
|
[[bin]]
|
|
name = "cmdline"
|
|
path = "src/bin/cmdline.rs"
|
|
|
|
[[bin]]
|
|
name = "redbear-phase-timer-check"
|
|
path = "src/bin/redbear-phase-timer-check.rs"
|
|
|
|
[[bin]]
|
|
name = "redbear-phase-dma-check"
|
|
path = "src/bin/redbear-phase-dma-check.rs"
|
|
|
|
[[bin]]
|
|
name = "redbear-phase-acpi-check"
|
|
path = "src/bin/redbear-phase-acpi-check.rs"
|
|
|
|
[[bin]]
|
|
name = "redbear-phase-pci-irq-check"
|
|
path = "src/bin/redbear-phase-pci-irq-check.rs"
|
|
|
|
[[bin]]
|
|
name = "redbear-phase1-evdev-check"
|
|
path = "src/bin/redbear-phase1-evdev-check.rs"
|
|
|
|
[[bin]]
|
|
name = "redbear-phase1-udev-check"
|
|
path = "src/bin/redbear-phase1-udev-check.rs"
|
|
|
|
[[bin]]
|
|
name = "redbear-usb-check"
|
|
path = "src/bin/redbear-usb-check.rs"
|
|
|
|
[[bin]]
|
|
name = "redbear-usb-storage-check"
|
|
path = "src/bin/redbear-usb-storage-check.rs"
|
|
|
|
[[bin]]
|
|
name = "redbear-phase1-firmware-check"
|
|
path = "src/bin/redbear-phase1-firmware-check.rs"
|
|
|
|
[[bin]]
|
|
name = "redbear-phase1-drm-check"
|
|
path = "src/bin/redbear-phase1-drm-check.rs"
|
|
|
|
[[bin]]
|
|
name = "redbear-phase2-wayland-check"
|
|
path = "src/bin/redbear-phase2-wayland-check.rs"
|
|
|
|
[[bin]]
|
|
name = "redbear-phase3-kwin-check"
|
|
path = "src/bin/redbear-phase3-kwin-check.rs"
|
|
|
|
[[bin]]
|
|
name = "redbear-phase4-kde-check"
|
|
path = "src/bin/redbear-phase4-kde-check.rs"
|
|
|
|
[[bin]]
|
|
name = "redbear-phase5-gpu-check"
|
|
path = "src/bin/redbear-phase5-gpu-check.rs"
|
|
|
|
[[bin]]
|
|
name = "redbear-boot-check"
|
|
path = "src/bin/redbear-boot-check.rs"
|
|
|
|
[dependencies]
|
|
redbear-login-protocol = { path = "../../redbear-login-protocol/source" }
|
|
serde = { version = "1", features = ["derive"] }
|
|
serde_json = "1"
|
|
orbclient = "0.3"
|
|
redox-driver-sys = { path = "../../../drivers/redox-driver-sys/source" }
|
|
libredox = { path = "../../../../../local/sources/libredox" }
|
|
syscall = { path = "../../../../../local/sources/syscall", package = "redox_syscall", features = ["std"] }
|
|
[patch.crates-io]
|
|
libredox = { path = "../../../../../local/sources/libredox" }
|
|
redox_syscall = { path = "../../../../../local/sources/syscall" }
|