mirror of
https://github.com/genodelabs/genode.git
synced 2025-04-08 03:45:24 +00:00
drivers_managed-pc: simplification
This patch removes the former use of ram_fs, fs_rom, and fs_report from the subsystem and uses a report_rom instead. The fs-based reporting was introduced to accommodate automatically instantiated usb_block drivers, which turned out to be impractical for the sculpt scenario.
This commit is contained in:
parent
95a2fc7167
commit
5d6f97cc1d
@ -7,10 +7,10 @@ _/src/vesa_drv
|
||||
_/src/intel_fb_drv
|
||||
_/src/boot_fb_drv
|
||||
_/src/ahci_drv
|
||||
_/src/fs_report
|
||||
_/src/fs_rom
|
||||
_/src/ram_fs
|
||||
_/src/report_rom
|
||||
_/src/input_filter
|
||||
_/src/init
|
||||
_/src/driver_manager
|
||||
_/src/rom_filter
|
||||
_/src/rom_reporter
|
||||
_/raw/drivers_managed-pc
|
||||
|
@ -34,56 +34,36 @@
|
||||
<service name="Input">
|
||||
<default-policy> <child name="input_filter"/> </default-policy> </service>
|
||||
|
||||
<service name="File_system">
|
||||
<default-policy> <child name="ram_fs" label="parent"/> </default-policy> </service>
|
||||
<start name="report_rom">
|
||||
<resource name="RAM" quantum="2M"/>
|
||||
<provides> <service name="Report"/> <service name="ROM"/> </provides>
|
||||
<config verbose="no">
|
||||
<policy label="platform_drv -> acpi" report="acpi_drv -> acpi"/>
|
||||
<policy label="driver_manager -> pci_devices" report="platform_drv -> pci"/>
|
||||
<policy label="usb_drv -> config" report="driver_manager -> usb_drv.config"/>
|
||||
<policy label="driver_manager -> usb_devices" report="usb_drv -> devices"/>
|
||||
<policy label="dynamic -> config" report="driver_manager -> init.config"/>
|
||||
<policy label="driver_manager -> ahci_ports" report="dynamic -> ahci_ports"/>
|
||||
<policy label="rom_reporter -> acpi" report="acpi_drv -> acpi"/>
|
||||
<policy label="rom_reporter -> pci_devices" report="platform_drv -> pci"/>
|
||||
<policy label="rom_reporter -> usb_devices" report="usb_drv -> devices"/>
|
||||
</config>
|
||||
</start>
|
||||
|
||||
<start name="ram_fs" priority="-1">
|
||||
<resource name="RAM" quantum="4M"/>
|
||||
<provides> <service name="File_system"/> </provides>
|
||||
<start name="rom_reporter">
|
||||
<resource name="RAM" quantum="1M"/>
|
||||
<config>
|
||||
<policy label="fs_rom -> " root="/"/>
|
||||
<policy label="fs_report -> " root="/" writeable="yes"/>
|
||||
<policy label="parent" root="/"/>
|
||||
<content>
|
||||
<inline name="acpi"/>
|
||||
<inline name="pci_devices"/>
|
||||
<inline name="usb_devices"/>
|
||||
<inline name="usb_active_config"/>
|
||||
<inline name="usb_drv.config"/>
|
||||
<dir name="dynamic">
|
||||
<inline name="ahci_ports"/>
|
||||
<inline name="config"/>
|
||||
<inline name="state"/>
|
||||
</dir>
|
||||
</content>
|
||||
<rom label="acpi"/>
|
||||
<rom label="pci_devices"/>
|
||||
<rom label="usb_devices"/>
|
||||
</config>
|
||||
<route>
|
||||
<service name="LOG"> <parent/> </service>
|
||||
<service name="PD"> <parent/> </service>
|
||||
<service name="CPU"> <parent/> </service>
|
||||
<service name="ROM"> <parent/> </service>
|
||||
</route>
|
||||
</start>
|
||||
|
||||
<start name="fs_report" priority="-1">
|
||||
<resource name="RAM" quantum="2M"/>
|
||||
<provides> <service name="Report"/> </provides>
|
||||
<config> <vfs> <fs/> </vfs> </config>
|
||||
<route>
|
||||
<service name="File_system"> <child name="ram_fs"/> </service>
|
||||
<service name="LOG"> <parent/> </service>
|
||||
<service name="PD"> <parent/> </service>
|
||||
<service name="CPU"> <parent/> </service>
|
||||
<service name="ROM"> <parent/> </service>
|
||||
</route>
|
||||
</start>
|
||||
|
||||
<start name="fs_rom" priority="-1">
|
||||
<resource name="RAM" quantum="1M"/>
|
||||
<provides> <service name="ROM"/> </provides>
|
||||
<config/>
|
||||
<route>
|
||||
<service name="File_system"> <child name="ram_fs"/> </service>
|
||||
<service name="ROM" label="acpi"> <child name="report_rom"/> </service>
|
||||
<service name="ROM" label="pci_devices"> <child name="report_rom"/> </service>
|
||||
<service name="ROM" label="usb_devices"> <child name="report_rom"/> </service>
|
||||
<service name="Report" label="acpi"> <parent label="acpi"/> </service>
|
||||
<service name="Report" label="pci_devices"> <parent label="pci_devices"/> </service>
|
||||
<service name="Report" label="usb_devices"> <parent label="usb_devices"/> </service>
|
||||
<service name="LOG"> <parent/> </service>
|
||||
<service name="PD"> <parent/> </service>
|
||||
<service name="CPU"> <parent/> </service>
|
||||
@ -94,7 +74,7 @@
|
||||
<start name="acpi_drv" caps="300" priority="-1">
|
||||
<resource name="RAM" quantum="2M"/>
|
||||
<route>
|
||||
<service name="Report" label="acpi"> <child name="fs_report" label="acpi"/> </service>
|
||||
<service name="Report" label="acpi"> <child name="report_rom"/> </service>
|
||||
<service name="IO_MEM"> <parent/> </service>
|
||||
<service name="LOG"> <parent/> </service>
|
||||
<service name="PD"> <parent/> </service>
|
||||
@ -112,9 +92,8 @@
|
||||
</provides>
|
||||
<route>
|
||||
<service name="ROM" label="system"> <parent label="system"/> </service>
|
||||
<service name="ROM" label="acpi"> <child name="fs_rom"/> </service>
|
||||
<service name="Report" label="pci">
|
||||
<child name="fs_report" label="pci_devices"/> </service>
|
||||
<service name="ROM" label="acpi"> <child name="report_rom"/> </service>
|
||||
<service name="Report" label="pci"> <child name="report_rom"/> </service>
|
||||
<service name="IRQ"> <parent/> </service>
|
||||
<service name="IO_MEM"> <parent/> </service>
|
||||
<service name="IO_PORT"> <parent/> </service>
|
||||
@ -146,15 +125,13 @@
|
||||
<resource name="RAM" quantum="16M"/>
|
||||
<provides> <service name="Input"/> <service name="Usb"/> </provides>
|
||||
<route>
|
||||
<service name="Platform"> <child name="platform_drv"/> </service>
|
||||
<service name="Platform"> <child name="platform_drv"/> </service>
|
||||
<service name="ROM" label="config">
|
||||
<child name="fs_rom" label="usb_drv.config"/> </service>
|
||||
<child name="report_rom"/> </service>
|
||||
<service name="ROM" label="capslock"> <parent label="capslock"/> </service>
|
||||
<service name="ROM" label="numlock"> <parent label="numlock"/> </service>
|
||||
<service name="Report" label="devices">
|
||||
<child name="fs_report" label="usb_devices"/> </service>
|
||||
<service name="Report" label="config">
|
||||
<child name="fs_report" label="usb_active_config"/> </service>
|
||||
<service name="Report" label="devices"> <child name="report_rom"/> </service>
|
||||
<service name="Report" label="config"> <parent label="usb_active_config"/> </service>
|
||||
<service name="ROM"> <parent/> </service>
|
||||
<service name="PD"> <parent/> </service>
|
||||
<service name="RM"> <parent/> </service>
|
||||
@ -211,20 +188,12 @@
|
||||
<start name="driver_manager" priority="-1">
|
||||
<resource name="RAM" quantum="1M"/>
|
||||
<route>
|
||||
<service name="Report" label="init.config">
|
||||
<child name="fs_report" label="dynamic -> config"/> </service>
|
||||
<service name="Report" label="usb_drv.config">
|
||||
<child name="fs_report" label="usb_drv.config"/> </service>
|
||||
<service name="Report" label="block_devices">
|
||||
<parent label="block_devices"/> </service>
|
||||
<service name="ROM" label="init_state">
|
||||
<child name="fs_rom" label="dynamic/state"/> </service>
|
||||
<service name="ROM" label="usb_devices"> <child name="fs_rom"/> </service>
|
||||
<service name="ROM" label="pci_devices"> <child name="fs_rom"/> </service>
|
||||
<service name="ROM" label="usb_active_config"> <child name="fs_rom"/> </service>
|
||||
<service name="ROM" label="ahci_ports">
|
||||
<child name="fs_rom" label="dynamic/ahci_ports"/> </service>
|
||||
<service name="ROM" label_prefix="dynamic/"> <child name="fs_rom"/> </service>
|
||||
<service name="Report" label="init.config"> <child name="report_rom"/> </service>
|
||||
<service name="Report" label="usb_drv.config"> <child name="report_rom"/> </service>
|
||||
<service name="Report" label="block_devices"> <parent label="block_devices"/> </service>
|
||||
<service name="ROM" label="usb_devices"> <child name="report_rom"/> </service>
|
||||
<service name="ROM" label="pci_devices"> <child name="report_rom"/> </service>
|
||||
<service name="ROM" label="ahci_ports"> <child name="report_rom"/> </service>
|
||||
<service name="LOG"> <parent/> </service>
|
||||
<service name="PD"> <parent/> </service>
|
||||
<service name="CPU"> <parent/> </service>
|
||||
@ -241,12 +210,10 @@
|
||||
</provides>
|
||||
<route>
|
||||
<service name="Platform"> <child name="platform_drv"/> </service>
|
||||
<service name="Report" label="state">
|
||||
<child name="fs_report" label="dynamic/state"/> </service>
|
||||
<service name="Report"> <child name="fs_report"/> </service>
|
||||
<service name="Report" label="ahci_ports"> <child name="report_rom"/> </service>
|
||||
<service name="Report"> <parent/> </service>
|
||||
<service name="Usb"> <child name="usb_drv"/> </service>
|
||||
<service name="ROM" label="config">
|
||||
<child name="fs_rom" label="dynamic/config"/> </service>
|
||||
<service name="ROM" label="config"> <child name="report_rom"/> </service>
|
||||
<service name="LOG"> <parent/> </service>
|
||||
<service name="PD"> <parent/> </service>
|
||||
<service name="RM"> <parent/> </service>
|
||||
|
@ -51,8 +51,9 @@ install_config {
|
||||
<service name="ROM" label="config"> <parent label="drivers.config"/> </service>
|
||||
<service name="ROM" label="capslock"> <child name="dynamic_rom"/> </service>
|
||||
<service name="ROM" label="numlock"> <child name="dynamic_rom"/> </service>
|
||||
<service name="Timer"> <child name="timer"/> </service>
|
||||
<service name="Report" label="block_devices"> <child name="report_rom"/> </service>
|
||||
<service name="ROM" label="system"> <child name="dynamic_rom"/> </service>
|
||||
<service name="Timer"> <child name="timer"/> </service>
|
||||
<service name="Report"> <child name="report_rom"/> </service>
|
||||
<any-service> <parent/> </any-service>
|
||||
</route>
|
||||
<provides>
|
||||
@ -78,6 +79,14 @@ install_config {
|
||||
<inline> <numlock enabled="yes"/> </inline>
|
||||
<sleep milliseconds="1000" />
|
||||
</rom>
|
||||
<rom name="system">
|
||||
<inline> <system state=""/> </inline>
|
||||
<sleep milliseconds="10000" />
|
||||
</rom>
|
||||
<rom name="numlock_remap">
|
||||
<inline> <system state=""/> </inline>
|
||||
<sleep milliseconds="10000" />
|
||||
</rom>
|
||||
</config>
|
||||
</start>
|
||||
|
||||
|
@ -251,7 +251,6 @@ struct Driver_manager::Main : Block_devices_generator
|
||||
Env &_env;
|
||||
|
||||
Attached_rom_dataspace _platform { _env, "platform_info" };
|
||||
Attached_rom_dataspace _init_state { _env, "init_state" };
|
||||
Attached_rom_dataspace _usb_devices { _env, "usb_devices" };
|
||||
Attached_rom_dataspace _pci_devices { _env, "pci_devices" };
|
||||
Attached_rom_dataspace _ahci_ports { _env, "ahci_ports" };
|
||||
|
Loading…
x
Reference in New Issue
Block a user