On Tue, Mar 11, 2014 at 8:52 PM, Sartakov A. Vasily <sartakov@...104...> wrote:
Ok, let I check again, because nothing happened and I still stuck in QEMU
Try using the "q35" machine in qemu which emulates ICH9 intel chipset, it has fixed some ACPI interrupts in the past. Though back then we used Fiasco.OC which only had interrupts working properly on a real machine. https://github.com/Ksys-labs/genode/commit/e32b1f87859db61b5cb4a510056051689...
All of this route all interfaced from core to acpi, and ACPI provides PCI and IRQ: <start name="acpi"> <resource name="RAM" quantum="12M"/> <binary name="acpi_drv"/> <provides> <service name="PCI"/> <service name="IRQ" /> </provides> <route> <any-service> <parent/> <any-child /> </any-service> </route> </start>
Time should use IRQ session from ACPI, and all other (LOG, RM) from core:
<start name="timer"> <resource name="RAM" quantum="1M"/> <provides><service name="Timer"/></provides> <route> <service name="IRQ"><child name="acpi" /></service> <any-service> <parent /> <any-child /></any-service> </route> </start>
AHCI uses all sessions from core instead of IRQ which provided by ACPI:
<start name="ahci"> <binary name="ahci" /> <resource name="RAM" quantum="10M" /> <provides><service name="Block" /></provides> <route> <service name="IRQ"><child name="acpi" /></service> <any-service> <parent /> <any-child /></any-service> </route> </start>
The same thing about nic_drv:
<start name="nic_drv"> <resource name="RAM" quantum="3M"/> <provides><service name="Nic"/></provides> <route> <service name="IRQ"><child name="acpi" /></service> <any-service> <parent /> <any-child /></any-service> </route> </start>
BTW, if I remove AHCI - everything works fine.
You just revealed a superfluous route. There is indeed no point in having the route for PCI specified for the ACPI driver because the ACPI driver will never open a PCI session. Internally, the ACPI driver spawns an instance of the PCI driver as a child process, but this is of no concern for the init configuration.
You can safely remove the "PCI" route. Just make sure that the IRQ session of the ACPI driver is routed to core's IRQ session. The second rule (for '<any-service>') takes care of that because '<parent />' appears before '<any-child />.
We will remove the superfluous route from the README (and the places where this configuration snippet was copied). Thanks for the notice!
Cheers Norman
-- Dr.-Ing. Norman Feske Genode Labs
http://www.genode-labs.com · http://genode.org
Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth
Learn Graph Databases - Download FREE O'Reilly Book "Graph Databases" is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/13534_NeoTech _______________________________________________ Genode-main mailing list Genode-main@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/genode-main
-- Sartakov A. Vasily sartakov@...104...
Learn Graph Databases - Download FREE O'Reilly Book "Graph Databases" is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/13534_NeoTech _______________________________________________ Genode-main mailing list Genode-main@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/genode-main