users Digest, Vol 6, Issue 15

A Noor anoorcse at gmail.com
Thu Oct 25 12:45:57 CEST 2018


I want to run Genode-ARM on android system.

Thank you.

Regards,
Ayesha

On Thu, 25 Oct 2018 at 15:30, <users-request at lists.genode.org> wrote:

> Send users mailing list submissions to
>         users at lists.genode.org
>
> To subscribe or unsubscribe via the World Wide Web, visit
>         https://lists.genode.org/listinfo/users
> or, via email, send a message with subject or body 'help' to
>         users-request at lists.genode.org
>
> You can reach the person managing the list at
>         users-owner at lists.genode.org
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of users digest..."
>
>
> Today's Topics:
>
>    1. Re: Genode on Secure Tablet (Christian Helmuth)
>    2. Re: multiple devices, single driver (Alexander Boettcher)
>    3. Re: multiple devices, single driver (Joel Nider)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Wed, 24 Oct 2018 15:19:24 +0200
> From: Christian Helmuth <christian.helmuth at genode-labs.com>
> To: users at lists.genode.org
> Subject: Re: Genode on Secure Tablet
> Message-ID: <20181024131924.GC4718 at genode-labs.com>
> Content-Type: text/plain; charset=utf-8
>
> Hello Ayesha,
>
> On Wed, Oct 24, 2018 at 01:34:51PM +0530, A Noor wrote:
> > I have successfully emulated ARM-Genode in Bionic beaver. I need to run
> the
> > genode on the secure tablet now.
> > Can anyone pls help me out through this process. A small help also
> > accountable.
>
> congrats for mastering the first step to run Genode on your secure
> tablet. Now as you really like to use the hardware, it is the best
> time to tell us which hardware platform you're addressing. Otherwise
> I'm afraid nobody will emerge for helping you.
>
> Regards
> --
> Christian Helmuth
> Genode Labs
>
> https://www.genode-labs.com/ · https://genode.org/
> https://twitter.com/GenodeLabs · /ˈdʒiː.nəʊd/
>
> Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden
> Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth
>
>
>
> ------------------------------
>
> Message: 2
> Date: Thu, 25 Oct 2018 08:08:04 +0200
> From: Alexander Boettcher <alexander.boettcher at genode-labs.com>
> To: Genode users mailing list <users at lists.genode.org>, Joel Nider
>         <JOELN at il.ibm.com>
> Subject: Re: multiple devices, single driver
> Message-ID: <8e5c2053-d5b3-6942-083b-e53931ddd885 at genode-labs.com>
> Content-Type: text/plain; charset=utf-8
>
> Hello,
>
> On 23.10.18 14:50, Joel Nider wrote:
> > I have been looking at several drivers in Genode, and they all seem to
> > have static data - specifically a Heap object and Root object.  I am
> > wondering with this kind of setup, is it possible to manage more than
> one
> > device with a single driver?
>
> of course. As described in the Genode book [0] in chapter 3.2.3, the
> root object provides the implementation just of the interface. Whenever
> a client connects to a service (like a driver for nic, ahci, nvme, usb
> etc.) a session is established via this interface. The driver may
> associate (typically does so depending on your specified policy) one
> specific device it drives to this session - as done e.g. for drivers
> handling multiple devices, e.g. ahci, nvme, usb.
>
> A driver may provide also different services, e.g. our old usb driver
> provides Nic, Block, Input (so several root interfaces).
>
> Cheers,
>
> Alex.
>
> [0] https://www.genode.org/documentation/genode-foundations-18-05.pdf
>
> --
> Alexander Boettcher
> Genode Labs
>
> https://www.genode-labs.com - https://www.genode.org
>
> Genode Labs GmbH - Amtsgericht Dresden - HRB 28424 - Sitz Dresden
> Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth
>
>
>
> ------------------------------
>
> Message: 3
> Date: Thu, 25 Oct 2018 10:38:08 +0300
> From: "Joel Nider" <JOELN at il.ibm.com>
> To: Alexander Boettcher <alexander.boettcher at genode-labs.com>
> Cc: Genode users mailing list <users at lists.genode.org>
> Subject: Re: multiple devices, single driver
> Message-ID:
>         <
> OFE542A872.7CA6CBCD-ONC2258331.0026D25E-C2258331.0029F1A3 at notes.na.collabserv.com
> >
>
> Content-Type: text/plain; charset="US-ASCII"
>
> Hi Alex,
>
> > On 23.10.18 14:50, Joel Nider wrote:
> > > I have been looking at several drivers in Genode, and they all seem to
>
> > > have static data - specifically a Heap object and Root object.  I am
> > > wondering with this kind of setup, is it possible to manage more than
> one
> > > device with a single driver?
> >
> > of course. As described in the Genode book [0] in chapter 3.2.3, the
> > root object provides the implementation just of the interface. Whenever
> > a client connects to a service (like a driver for nic, ahci, nvme, usb
> > etc.) a session is established via this interface. The driver may
> > associate (typically does so depending on your specified policy) one
> > specific device it drives to this session - as done e.g. for drivers
> > handling multiple devices, e.g. ahci, nvme, usb.
>
> I will give you my situation as a specific example. I am writing a driver
> for a PCIe attached NIC (x86 platform). Let us say that I have 2 physical
> NICs in my machine with the same device ID and vendor ID. I have specified
> in my config file that I have a driver called "nic_drv", without
> specifying the PCIe address (copied from the example in
> repos/os/run/ping.run).
>
> When the driver starts, I can enumerate the PCIe devices through the
> Platform::Connection object that is instantiated from the 'env' object. I
> see all PCIe devices of class 'NET' (even other NICs that I don't want my
> driver to handle). So far so good. I can filter through the devices by
> requesting the capability (with Platform::Device_client) and I can read
> the device ID and vendor ID and pick the devices I want to handle.
>
> Now I have a list of several devices that I want my driver handle. If I
> understand you correctly, I should have only one Root object (and one Heap
> object). That implies I should also only call parent().announce() once.
> But then how do I instantiate my Nic::Session_component once per device?
> What is happening so far, is that some time after I call
> parent().announce(), my Nic::Session_component derived class gets
> instantiated, and the constructor is called. But I have no way of knowing
> which device it is meant to handle, since there is no mechanism for
> passing the device capability to Nic::Session_component. In addition, I
> only see this constructor being called once. I expected to see one
> constructor per PCIe device. This causes further problems such as not
> being able to map the mmio region since the size and base address are not
> known until I query the PCIe BAR, and there is no 'new' operator
> available, which means to me I'm doing something fundamentally wrong.
>
> So what is the correct way to build the driver such that I get an object
> per device (and the object knows the device)?
>
> Thanks,
> Joel
>
>
>
>
>
> ------------------------------
>
> Subject: Digest Footer
>
> _______________________________________________
> users mailing list
> users at lists.genode.org
> https://lists.genode.org/listinfo/users
>
> ------------------------------
>
> End of users Digest, Vol 6, Issue 15
> ************************************
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.genode.org/pipermail/users/attachments/20181025/76da8236/attachment.html>


More information about the users mailing list