Hi,
There seems to be Raspberry Pi support in the Genode base-hw kernel. To what extent is this (non)functional? Can someone estimate how much effort it would take to make the NIC work?
Alternatively, can someone recommend a similarly priced/specced board that has 20+ GPIO pins and on which Genode supports the NIC?
Thanks, -Slim
Hi Jeroen,
There seems to be Raspberry Pi support in the Genode base-hw kernel. To what extent is this (non)functional? Can someone estimate how much effort it would take to make the NIC work?
the Raspberry Pi support of base-hw comprises UART, HDMI output, USB HID support, and networking. I also started working on an SD-card driver, but that one remained unfinished as of now:
https://github.com/nfeske/genode/commits/rpi_usb
In short, it is actually quite useful. My kids are regularly playing games using Genode running on the Raspberry Pi. ;-)
Cheers Norman
Two things I would be very much interested in (after SD card support) are GPIO and camera support. Any progress on those?
On Mon, Jan 26, 2015 at 7:51 PM, Norman Feske <norman.feske@...1...> wrote:
Hi Jeroen,
There seems to be Raspberry Pi support in the Genode base-hw kernel. To what extent is this (non)functional? Can someone estimate how much effort it would take to make the NIC work?
the Raspberry Pi support of base-hw comprises UART, HDMI output, USB HID support, and networking. I also started working on an SD-card driver, but that one remained unfinished as of now:
https://github.com/nfeske/genode/commits/rpi_usb
In short, it is actually quite useful. My kids are regularly playing games using Genode running on the Raspberry Pi. ;-)
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
Dive into the World of Parallel Programming. The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net/ _______________________________________________ genode-main mailing list genode-main@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/genode-main
Hi Ben,
Two things I would be very much interested in (after SD card support) are GPIO and camera support. Any progress on those?
don't wait for it, go for it!
In your prior postings, you stated that you have no experience with developing device drivers. Well, creating a GPIO driver for the Raspberry Pi would be the *perfect* way to change that:
* You apparently have an application in mind, which provides you with the right incentive.
* The device is relatively simple. So you won't get overwhelmed.
* There is a huge body of public information about this particular topic (using GPIOs on the Raspberry Pi) available.
* Others like Jeroen may appreciate your work.
* Within Genode's source tree, there exist GPIO drivers for other platforms that you may take as reference.
All it takes is the willingness to learn and to get your hands dirty with programming.
Regards Norman
Thanks. Can you help me get started? On Jan 27, 2015 2:53 AM, "Norman Feske" <norman.feske@...1...> wrote:
Hi Ben,
Two things I would be very much interested in (after SD card support) are GPIO and camera support. Any progress on those?
don't wait for it, go for it!
In your prior postings, you stated that you have no experience with developing device drivers. Well, creating a GPIO driver for the Raspberry Pi would be the *perfect* way to change that:
You apparently have an application in mind, which provides you with the right incentive.
The device is relatively simple. So you won't get overwhelmed.
There is a huge body of public information about this particular topic (using GPIOs on the Raspberry Pi) available.
Others like Jeroen may appreciate your work.
Within Genode's source tree, there exist GPIO drivers for other platforms that you may take as reference.
All it takes is the willingness to learn and to get your hands dirty with programming.
Regards 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
Dive into the World of Parallel Programming. The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net/ _______________________________________________ genode-main mailing list genode-main@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/genode-main
Funny you should say this. I've been building a GPIO driver for the Raspberry Pi, as well as a generic dummy GPIO driver that plays back input events from a list. (So it is possible to write and test programs that require GPIO access without physical GPIO hardware present.)
I'm travelling for the next 7-10 days but will clean and contribute the code after that.
On Tue, Jan 27, 2015 at 4:55 AM, Norman Feske <norman.feske@...1...> wrote:
Hi Ben,
Two things I would be very much interested in (after SD card support) are GPIO and camera support. Any progress on those?
don't wait for it, go for it!
In your prior postings, you stated that you have no experience with developing device drivers. Well, creating a GPIO driver for the Raspberry Pi would be the *perfect* way to change that:
You apparently have an application in mind, which provides you with the right incentive.
The device is relatively simple. So you won't get overwhelmed.
There is a huge body of public information about this particular topic (using GPIOs on the Raspberry Pi) available.
Others like Jeroen may appreciate your work.
Within Genode's source tree, there exist GPIO drivers for other platforms that you may take as reference.
All it takes is the willingness to learn and to get your hands dirty with programming.
Regards 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
Dive into the World of Parallel Programming. The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net/ _______________________________________________ genode-main mailing list genode-main@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/genode-main
Thanks a lot! On Jan 27, 2015 11:41 AM, "Jeroen "Slim" van Gelderen" <askslim@...9...> wrote:
Funny you should say this. I've been building a GPIO driver for the Raspberry Pi, as well as a generic dummy GPIO driver that plays back input events from a list. (So it is possible to write and test programs that require GPIO access without physical GPIO hardware present.)
I'm travelling for the next 7-10 days but will clean and contribute the code after that.
On Tue, Jan 27, 2015 at 4:55 AM, Norman Feske < norman.feske@...1...> wrote:
Hi Ben,
Two things I would be very much interested in (after SD card support) are GPIO and camera support. Any progress on those?
don't wait for it, go for it!
In your prior postings, you stated that you have no experience with developing device drivers. Well, creating a GPIO driver for the Raspberry Pi would be the *perfect* way to change that:
You apparently have an application in mind, which provides you with the right incentive.
The device is relatively simple. So you won't get overwhelmed.
There is a huge body of public information about this particular topic (using GPIOs on the Raspberry Pi) available.
Others like Jeroen may appreciate your work.
Within Genode's source tree, there exist GPIO drivers for other platforms that you may take as reference.
All it takes is the willingness to learn and to get your hands dirty with programming.
Regards 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
Dive into the World of Parallel Programming. The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net/ _______________________________________________ genode-main mailing list genode-main@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/genode-main
-- Jeroen "Slim" van Gelderen
Dive into the World of Parallel Programming. The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net/ _______________________________________________ genode-main mailing list genode-main@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/genode-main
By the way, Norman, what would be a good project for me to get started on while I'm waiting for the people who understand the AHCI and part_blk drivers?
On Tue, Jan 27, 2015 at 11:12 PM, Nobody III <hungryninja101@...9...> wrote:
Thanks a lot! On Jan 27, 2015 11:41 AM, "Jeroen "Slim" van Gelderen" <askslim@...9...> wrote:
Funny you should say this. I've been building a GPIO driver for the Raspberry Pi, as well as a generic dummy GPIO driver that plays back input events from a list. (So it is possible to write and test programs that require GPIO access without physical GPIO hardware present.)
I'm travelling for the next 7-10 days but will clean and contribute the code after that.
On Tue, Jan 27, 2015 at 4:55 AM, Norman Feske < norman.feske@...1...> wrote:
Hi Ben,
Two things I would be very much interested in (after SD card support) are GPIO and camera support. Any progress on those?
don't wait for it, go for it!
In your prior postings, you stated that you have no experience with developing device drivers. Well, creating a GPIO driver for the Raspberry Pi would be the *perfect* way to change that:
You apparently have an application in mind, which provides you with the right incentive.
The device is relatively simple. So you won't get overwhelmed.
There is a huge body of public information about this particular topic (using GPIOs on the Raspberry Pi) available.
Others like Jeroen may appreciate your work.
Within Genode's source tree, there exist GPIO drivers for other platforms that you may take as reference.
All it takes is the willingness to learn and to get your hands dirty with programming.
Regards 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
Dive into the World of Parallel Programming. The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net/ _______________________________________________ genode-main mailing list genode-main@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/genode-main
-- Jeroen "Slim" van Gelderen
Dive into the World of Parallel Programming. The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net/ _______________________________________________ genode-main mailing list genode-main@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/genode-main
Hi Ben,
By the way, Norman, what would be a good project for me to get started on while I'm waiting for the people who understand the AHCI and part_blk drivers?
[off-topic] Please let me raise your awareness about mailing-list etiquette. Short top postings are generally not considered as polite. Keep in mind that each email you send to the list arrives at the inboxes of all subscribers. Hence, please be considerate not to abuse the mailing list as an instant messaging tool.
Regarding your question, I have following recommendations:
* If you are interested in using Genode on the Raspberry Pi, go this way. It is fun. Use it as a chance to learn about device drivers. Even if Jeroen has developed a GPIO driver already, I would still recommend you to start poking around with GPIO pins - just for the sake of learning.
Download and study the reference manuals for the SoC and board of the Raspberry Pi.
Try to understand how GPIO programming works. There are excellent resources available to get started. For example:
https://github.com/dwelch67/raspberrypi
The examples start with simple things like a blinking LED. Apply the gained knowledge to write a Genode program that accesses the GPIO registers using an IO_MEM session. Look at the existing drivers to see how it is done.
* For the work that you initially wanted to pursue, the lack of a proper file system and block driver is not a show stopper. You mentioned your interest to port libraries and applications. You can do that just fine without a persistent file system. Just look at the large body of software that we already ported (e.g., Qt5 with the Arora web browser, the entire tool chain, the GNU tools, etc.). For porting, we normally place files in a TAR archive mounted into the VFS of the ported application. Additionally, there is a RAM file system available if the application needs to write files.
If you are genuinely interested in contributing to Genode, the best way would be to document and publish your steps, e.g., in the form of a blog or a Wiki. This would possibly enable future newcomers to get started more easily.
Regards Norman