RTEMS driver development questions

David Paterson dnpaterson at gmail.com
Wed Jul 3 08:53:29 UTC 2013

On 3 July 2013 08:19, Sebastian Huber <sebastian.huber at embedded-brains.de>
> this driver manager is maintained outside the RTEMS main sources.

Thanks Sebastian.  It looks like it has some nice features, so perhaps
it'll be incorporated into the main codebase eventually.  I'll go with the
basic driver model for now.

>> Secondly, I'm a bit unsure about handling of multiple devices (and
>> hot-pluggable devices).  It looks like the driver manager would call my
init1 &
>> init2 functions for each device it found with matching vendor & device
>> but how does this get handled in the basic (non-driver-manager)
approach?  Is
>> it up to my initialisation function to scan for my devices?  For
>> e.g. USB, devices, the situation looks even more confusing...
> Unfortunately the standard RTEMS system has no dynamic driver management
framework.  It only provides very simple static device drivers.

Ah, OK.  I presume we'd have to write our own attach / detach system to
handle this situation.  We'll look into that when we get to that part of
the development.  Luckily it's still some time away :-)

> See also:
> http://www.rtems.org/onlinedocs/doxygen/cpukit/html/group__ClassicIO.html
> You can also use the generic IMFS nodes for simple device drivers:
> The USB library and the new network stack for RTEMS uses the FreeBSD
device driver model.  I would use this API also for RTEMS in addition to
the simple static device drivers.
> http://www.freebsd.org/doc/en/books/arch-handbook/devicedrivers.html

Thanks Sebastian - some very useful links there. I should be able to make
plenty of progress now.


David P.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/users/attachments/20130703/fed08f24/attachment-0001.html>

More information about the users mailing list