[ECOS] Device driver open & close
Frank Pagliughi
fpagliughi@mindspring.com
Wed Aug 27 05:22:00 GMT 2008
Frank Pagliughi wrote:
>
>
> Andrew Lunn wrote:
>> On Mon, Aug 25, 2008 at 07:31:09PM -0400, Frank Pagliughi wrote:
>>
>>> Hey All,
>>>
>>> Is there a mechanism by which a device driver can be notified when
>>> the application opens or closes the device. For example, I have an
>>> LCD in my system, and I would like to turn it on when the
>>> application opens the device and turn it off when it gets closed.
>>> Then turn it back on again if it gets re-opened, etc.
>>>
>>
>> open() should result in the lookup function being called on the
>> device.
>>
> This gets called for each open?
>> Close is a problem, since there is no device close function.
>>
>> You might be better using cyg_io_set_config() mechanism to turn it on
>> and off.
>>
> This is unfortunate. For another example, the system will have the
> ability to power down the compact flash drive(s). Which order should
> the power down happen?
> flush() the buffers, then cyg_io_set_config() to power down the
> drive, *then* close() ? I assume you can't use the handle to
> set_config after the close(). Right?
>
Oh, sorry, the disk drive is a bad example, and a whole different
problem, I suppose. Maybe a drive can power up/down when its filesystem
is mounted/unmounted?
I'm just doing the OS port & device drivers for a board that has to
really conserve power and thus turn devices off and on a lot. Someone
else will write the application, so I'm trying to make the interface as
simple and familiar as possible (therefore standard I/O api). It seems
that the eCos device API assumes that devices will be initialized then
stay on forever. So, any ideas are appreciated.
Thanks,
Frank
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss
More information about the Ecos-discuss
mailing list