This is the mail archive of the
ecos-discuss@sourceware.cygnus.com
mailing list for the eCos project.
Re: eCos Device Driver reorganization
>>>>> "Bart" == Bart Veer <bartv@redhat.com> writes:
Bart> One issue here: I am not quite sure why you want to put the
Bart> emulation code into a separate package. A common device package
Bart> can serve some or all of the following purposes:
Bart> 1) define the interface provided by the various implementations,
Bart> i.e. export a header file. This means a hardware-specific
Bart> device package need not export any header files (although it can
Bart> still do so in order to provide additional information). Having
Bart> a per-class header file like this should simplify application
Bart> and test case development.
Bart> 2) provide test cases which should be passed by all
Bart> implementations. Again hardware-specific packages may add
Bart> additional test cases.
Bart> 3) provide support code, e.g. buffer management, tty support for
Bart> serial lines, ... Some classes of device will not have any such
Bart> code.
Bart> 4) provide a default implementation, typically a software
Bart> emulation. This only makes sense for some devices, not all. It
Bart> is hard to provide a default implementation for an ethernet
Bart> interface, but a wallclock or watchdog can be emulated.
Anyone looking at the next CVS snapshot will see that I'm (as always!)
a good little boy and adopted the layout suggested by Bart :0)
The wallclock has been moved. Watchdog still has to be done (next
week, hopefully).
Jesper