Hello everyone,
I am a Computer Science student in the US, and I am interested in the USB device work in Genode. I have experience with linux kernel USB device drivers, and am interested in the challenge of widening that knowledge with a separate and unique environment.
I have spent some time trying to familiarise myself with the Genode code base and reading sections of the book, so I comfortable with how the OS operates at a high level. However, I am uncertain with the most appropriate direction in tackling the problem. Any help with this would be greatly appreciated.
Thank you, in advance, for anyone willing to help guide me in a correct direction. I look forward to contributing to this project in any way that I am able!
Thanks again,
Tyler Jones
Hello Tyler,
On 03/02/2017 01:20 AM, Tyler Jones wrote:
Hello everyone,
I am a Computer Science student in the US, and I am interested in the USB device work in Genode. I have experience with linux kernel USB device drivers, and am interested in the challenge of widening that knowledge with a separate and unique environment.
I have spent some time trying to familiarise myself with the Genode code base and reading sections of the book, so I comfortable with how the OS operates at a high level. However, I am uncertain with the most appropriate direction in tackling the problem. Any help with this would be greatly appreciated.
Basically, we imagine something like our 'usb_block' component (repos/os/src/drivers/usb_block there is also a run script for testing under repos/os/run/usb_block), just for isochronous devices (e.g, external sound card or camera).
Our port of Linux's USB driver (repos/dde_linux) manages the USB host controller(s) and offers an USB session (repos/os/include/usb_session), which currently supports IRQ and BULK endpoints. Therefore, the session interface would have to be extended to support isochronous requests, the necessary support must be added to the USB driver's session implementation, and a isochronous driver - lets say for an USB sound card should be implemented or ported that communicates with the USB host driver and offers a Genode audio session.
Regards,
Sebastian