Hello Zachary,
On 18.03.24 21:22, Zachary Zollers wrote:
Hello Genodians,
The last few days, I have been focused on creating my first Linux VM using Seoul. I am happy to report I was largely successful, but have a few questions after completing the exercise. The answers I get from this list have been very helpful in getting through the initial learning curve, so thank you in advance for your responses.
[1] While referencing the example Seoul runscripts in the genode-world repository, I did not see an obvious way to facilitate direct PCI passthrough to a VM. Is this supported by the current version of Seoul? If not, is it supported by the VirtualBox port?
This is not implemented at the time being, neither in Seoul nor VirtualBox.
[2] Is there a good way to support a situation where only one client needs to display and capture input. For example, in my VM scenario, I only care about the visual output of the VM. I was able to accomplish the desired graphical result by configuring a single nitpicker domain that had the entire screen area and no labels. The only issue here is that the single client does not immediately get input focus (I had to click to be able to type in the VM). Am I on the right track here, or is there a better way?
It is possible to set the initial focus of Nitpicker through, for example, a focus ROM. An example can be found under[1].
[3] What purpose does the platform driver (os/src/drivers/platform) serve? It appears that device discovery is done by either the ACPI driver or pci_decode (possibly others). Is it responsible for delegating access? I assume access to these is granted through an IO_MEM and/or IO_PORT session, but these seem to be provided by core (not the platform driver). Any clarification here would be helpful.
For the purpose of the platform driver, please refer to section 4.1.1 of the Genode Foundations book [2].
[1] https://github.com/genodelabs/genode-world/blob/e1a0d1c9e3136b929ff6bf85b50c...
[2] https://genode.org/documentation/genode-foundations/23.05/components/Device_...
Regards,
Sebastian