Thread (4 messages) flat view 4 messages, 4 authors, 1999-10-14

Re: serial on lombard

From: Momchil Velikov <hidden>
Date: 1999-10-14 11:31:51

Michael Schmitz wrote:
quoted
alarm(0x2, 0x7ffff7b4, 0, 0x8, 0x7f7f7f7f) = 0
open("/dev/ttyS0", O_RDWR|O_NONBLOCK)   = 3
--- SIGALRM (Alarm clock) ---
alarm(0, 0x1, 0, 0x8, 0x7f7f7f7f)       = 0
rt_sigaction(0xe, 0x7ffff698, 0x7ffff728, 0x8) = 0
write(2, "minicom: cannot open /dev/ttyS0:"..., 59minicom: cannot open /dev/ttyS0: No such file or directory
) = 59
The port blocks on open, and you get a timeout.
But there is O_NONBLOCK, and according to POSIX, 
" ... if O_NONBLOCK flags is set or if CLOCAL has been set,
  the open() function shall return immediately without
  waiting for the connection."

Note that this is the/a way to set CLOCAL -- open the device with O_NONBLOCK
and then tcsetattr() or whatever.
The serial port won't open without carrier detected. minicom fails to set
the port characteristics properly (or the Mac serial driver doesn't honor
minicom's port settings), and gives a very confusing error message (open
/dev/ttyS0 timed out would have been more accurate).

Set ttyS0 to ignore DCD with stty clocal </dev/ttyS0, perhaps.
This should help, but the problem is in the driver.

Regards,
-velco

** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help