fix: wire driver-manager service ordering
This commit is contained in:
@@ -6,6 +6,7 @@
|
||||
redbear-quirks = {}
|
||||
pciids = {}
|
||||
fatd = {}
|
||||
driver-manager = {}
|
||||
|
||||
# Firmware fallback chain configs
|
||||
[[files]]
|
||||
@@ -346,15 +347,6 @@ chain = ["i915/adlp_dmc_ver2_14.bin", "i915/adlp_dmc_ver2_12.bin"]
|
||||
[[files]]
|
||||
path = "/lib/drivers.d/30-graphics.toml"
|
||||
data = """
|
||||
[[driver]]
|
||||
name = "vesad"
|
||||
description = "VESA BIOS display driver"
|
||||
priority = 60
|
||||
command = ["/usr/lib/drivers/vesad"]
|
||||
|
||||
[[driver.match]]
|
||||
class = 0x03
|
||||
|
||||
[[driver]]
|
||||
name = "redox-drm"
|
||||
description = "DRM/KMS display driver (AMD + Intel)"
|
||||
@@ -511,14 +503,15 @@ chain = ["i915/adlp_dmc_ver2_14.bin", "i915/adlp_dmc_ver2_12.bin"]
|
||||
path = "/etc/init.d/00_driver-manager.service"
|
||||
data = """
|
||||
[unit]
|
||||
description = "PCI driver spawner"
|
||||
description = "Red Bear driver manager"
|
||||
requires_weak = [
|
||||
"00_base.target",
|
||||
]
|
||||
|
||||
[service]
|
||||
cmd = "pcid-spawner"
|
||||
type = "oneshot"
|
||||
cmd = "/usr/bin/driver-manager"
|
||||
args = ["--hotplug"]
|
||||
type = "oneshot_async"
|
||||
"""
|
||||
|
||||
# Firmware fallback chain configs
|
||||
@@ -590,7 +583,7 @@ data = """
|
||||
description = "Evdev input daemon"
|
||||
requires_weak = [
|
||||
"12_boot-late.target",
|
||||
"00_pcid-spawner.service",
|
||||
"00_driver-manager.service",
|
||||
]
|
||||
|
||||
[service]
|
||||
|
||||
@@ -37,6 +37,9 @@ dbus = {}
|
||||
redbear-firmware = {}
|
||||
firmware-loader = {}
|
||||
|
||||
# Intel Wi-Fi bounded driver path
|
||||
redbear-iwlwifi = {}
|
||||
|
||||
# NUMA topology discovery (userspace daemon)
|
||||
numad = {}
|
||||
|
||||
@@ -174,6 +177,50 @@ path = "/usr/lib/fonts"
|
||||
data = "/usr/share/fonts"
|
||||
symlink = true
|
||||
|
||||
[[files]]
|
||||
path = "/lib/drivers.d/30-graphics.toml"
|
||||
data = """
|
||||
[[driver]]
|
||||
name = "redox-drm"
|
||||
description = "DRM/KMS display driver (AMD + Intel + VirtIO)"
|
||||
priority = 60
|
||||
command = ["/usr/bin/redox-drm"]
|
||||
depends_on = ["pci", "firmware", "iommu"]
|
||||
|
||||
[[driver.match]]
|
||||
class = 0x03
|
||||
"""
|
||||
|
||||
[[files]]
|
||||
path = "/lib/drivers.d/60-wifi.toml"
|
||||
data = """
|
||||
[[driver]]
|
||||
name = "redbear-iwlwifi"
|
||||
description = "Intel Wi-Fi driver"
|
||||
priority = 45
|
||||
command = ["/usr/lib/drivers/redbear-iwlwifi", "--full-init"]
|
||||
depends_on = ["pci", "firmware"]
|
||||
|
||||
[[driver.match]]
|
||||
vendor = 0x8086
|
||||
class = 0x02
|
||||
subclass = 0x80
|
||||
"""
|
||||
|
||||
[[files]]
|
||||
path = "/etc/init.d/00_firmware-loader.service"
|
||||
data = """
|
||||
[unit]
|
||||
description = "Firmware loading scheme"
|
||||
requires_weak = [
|
||||
"00_base.target",
|
||||
]
|
||||
|
||||
[service]
|
||||
cmd = "/usr/bin/firmware-loader"
|
||||
type = { scheme = "firmware" }
|
||||
"""
|
||||
|
||||
[[files]]
|
||||
path = "/etc/init.d/05_boot-essential.target"
|
||||
data = """
|
||||
@@ -190,8 +237,7 @@ data = """
|
||||
[unit]
|
||||
description = "IOMMU DMA remapping daemon"
|
||||
requires_weak = [
|
||||
"12_boot-late.target",
|
||||
"00_pcid-spawner.service",
|
||||
"00_base.target",
|
||||
]
|
||||
|
||||
[service]
|
||||
@@ -373,7 +419,7 @@ data = """
|
||||
[unit]
|
||||
description = "Red Bear greeter service"
|
||||
requires_weak = [
|
||||
"00_pcid-spawner.service",
|
||||
"00_driver-manager.service",
|
||||
"12_dbus.service",
|
||||
"13_redbear-sessiond.service",
|
||||
"13_seatd.service",
|
||||
|
||||
@@ -66,7 +66,7 @@ data = """
|
||||
[unit]
|
||||
description = "Red Bear greeter service (experimental — Phase 3 user session bring-up)"
|
||||
requires_weak = [
|
||||
"00_pcid-spawner.service",
|
||||
"00_driver-manager.service",
|
||||
"12_dbus.service",
|
||||
"13_redbear-sessiond.service",
|
||||
"13_seatd.service",
|
||||
|
||||
@@ -43,9 +43,13 @@ type = "oneshot_async"
|
||||
path = "/etc/init.d/00_pcid-spawner.service"
|
||||
data = """
|
||||
[unit]
|
||||
description = "PCI driver spawner"
|
||||
description = "PCI driver spawner compatibility alias"
|
||||
requires_weak = [
|
||||
"00_driver-manager.service",
|
||||
]
|
||||
|
||||
[service]
|
||||
cmd = "pcid-spawner"
|
||||
cmd = "echo"
|
||||
args = ["pcid-spawner compatibility alias: driver-manager owns PCI driver spawning"]
|
||||
type = "oneshot"
|
||||
"""
|
||||
|
||||
@@ -27,8 +27,9 @@ redbear-release = {}
|
||||
redbear-hwutils = {}
|
||||
redbear-quirks = {}
|
||||
|
||||
# Device driver infrastructure (pcid-spawner is built by the base recipe;
|
||||
# driver-manager requires driver config migration and is not yet ready)
|
||||
# Device driver infrastructure: driver-manager is started by
|
||||
# redbear-device-services.toml, with 00_pcid-spawner.service retained only as a
|
||||
# compatibility dependency alias for older service units.
|
||||
ehcid = {}
|
||||
ohcid = {}
|
||||
uhcid = {}
|
||||
@@ -118,7 +119,7 @@ data = """
|
||||
[unit]
|
||||
description = "Network stack (non-blocking on live-mini)"
|
||||
requires_weak = [
|
||||
"00_pcid-spawner.service",
|
||||
"00_driver-manager.service",
|
||||
]
|
||||
|
||||
[service]
|
||||
@@ -318,7 +319,7 @@ data = """
|
||||
description = "udev compatibility shim"
|
||||
requires_weak = [
|
||||
"12_boot-late.target",
|
||||
"00_pcid-spawner.service",
|
||||
"00_driver-manager.service",
|
||||
]
|
||||
|
||||
[service]
|
||||
@@ -333,7 +334,7 @@ data = """
|
||||
description = "Evdev input daemon"
|
||||
requires_weak = [
|
||||
"12_boot-late.target",
|
||||
"00_pcid-spawner.service",
|
||||
"00_driver-manager.service",
|
||||
]
|
||||
|
||||
[service]
|
||||
@@ -348,7 +349,7 @@ data = """
|
||||
description = "Wi-Fi control daemon"
|
||||
requires_weak = [
|
||||
"12_boot-late.target",
|
||||
"00_pcid-spawner.service",
|
||||
"00_driver-manager.service",
|
||||
]
|
||||
|
||||
[service]
|
||||
@@ -404,7 +405,7 @@ data = """
|
||||
description = "IOMMU DMA remapping daemon"
|
||||
requires_weak = [
|
||||
"12_boot-late.target",
|
||||
"00_pcid-spawner.service",
|
||||
"00_driver-manager.service",
|
||||
]
|
||||
|
||||
[service]
|
||||
@@ -484,6 +485,14 @@ data = """
|
||||
# redbear-live-mini: no display driver matched; class 0x03 devices are skipped
|
||||
"""
|
||||
|
||||
[[files]]
|
||||
path = "/lib/drivers.d/30-graphics.toml"
|
||||
data = """
|
||||
# redbear-mini is text-only; keep driver-manager from attempting GPU binding in
|
||||
# this profile. redbear-full replaces this fragment with the DRM/KMS binding.
|
||||
driver = []
|
||||
"""
|
||||
|
||||
# INIT_SKIP removed — all daemons are now enabled for boot.
|
||||
# Individual hardware daemons that fail in QEMU will exit cleanly
|
||||
# rather than blocking boot via the oneshot_async service type.
|
||||
|
||||
Reference in New Issue
Block a user