[ECOS] problem with termios: tcgetattr

Franck MAMALET FT-R&D DIH/OCF franck.mamalet@rd.francetelecom.fr
Mon Jun 11 08:10:00 GMT 2001


Hi,
I'm trying to port a Linux program,  on eCos and I have some trouble
with termios function:  tcgetattr.
This program is opening a serial driver with open('/dev/ser2",.....)
which seems to be OK.
To configure the terminal, it calls   tcgetattr(fd, &t),
but generates an error "tcgetattr wrong argument"
I had a look to functions called by tcgetattr :
tcgetattr (fildes=3, termios_p=0x4f738) at //e/ecos/REDHAT~1/eCos/packages/io/serial/current/src/common/termios.c:160
    calls
        ret = fp->f_ops->fo_getinfo(
fp, CYG_IO_GET_CONFIG_TERMIOS, termios_p,  len);
    which for a device is mapped to
        dev_fo_getinfo (fp=0x4d3e8,
key=1024, buf=0x4f738, len=40)
     and this function calls (devfs.cxx l452)
         err = cyg_io_get_config(
(cyg_io_handle_t)fp->f_data, key, buf, &ll );
     then this function calls   
(iosys.c l257)
        t->handlers->get_config(handle,
key, buf, len);
    which is mapped for a serial device to
        serial_get_config (handle=0x3f12c,
key=1024, xbuf=0x4f6fc, len=0x4f738)
It seems that the problem is about the "key", because serial_get_config
only tests CYG_IO_GET_CONFIG_SERIAL_xxx which differ from CYG_IO_GET_CONFIG_TERMIOS,
and so generates an error.
Could anyone help me in this regard.
Thanks in advance.
Regards
Franck.
PS: my configuration is eCos 1.3.1 on an EDB7212 platform.
 
 
 
 
 
 
-- 
& france telecom 
Mamalet Franck
FTR&D DIH/OCF
Tél  : 04 76 76 45 71   Fax : 04 76 90 34 43
franck.mamalet@rd.francetelecom.fr
 



More information about the Ecos-discuss mailing list