This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: SERIAL NON-BLOCKING mode in HW independent layer?


"Trenton D. Adams" wrote:
> 
> I assume non-blocking mode for serial device drivers is entirely handled
> by the hardware independent layer right?  I'm not quite sure about this
> yet since it appears that cyg_io_read () and cyg_io_write () simply call
> the function I provided in the function structure.

Not the io/common layer which purely provides an encompassing API, but nor
is it the hardware - it's the bit in the middle, like the io/serial/ layer
that does it.

> However, there appears to be serial_XXX functions which do handle this.
> One of the serial tests uses cyg_io_read () and cyg_io_write () directly
> though.  I would think this would not allow non-blocking mode!
> 
> Where do I find information on what the proper way of accessing a serial
> device is?  eg. cyg_io_xxx () or serial_xxx ()?  I've seen some posts
> saying that serial_read () and serial_write () are used, but I want some
> actual docs on it.
> 
> The eCos reference manual doesn't appear to talk about how to actually
> access the serial devices other than through cyg_io_read () and
> cyg_io_write ().

That's the only official external API, and that's what you should use. When
you set non-blocking mode it makes cyg_io_read() and cyg_io_write() be
non-blocking when referring to those devices.

Jifl
-- 
Red Hat, Rustat House, Clifton Road, Cambridge, UK. Tel: +44 (1223) 271062
Maybe this world is another planet's Hell -Aldous Huxley || Opinions==mine


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]