[uClinux-dev] Serial Port Problem - After child exit.
Paul Romero
paulr at rcom-software.com
Tue Nov 6 17:22:45 EST 2007
Dear User Group:
I use version 2.4.27 of UC Linux with the 2.4.x
kernel. I have observed the following intermittent
problem which I believe is in the serial port driver.
(i.e. The buffers used by fwrite() and fputs() in
uClibc/libc/stdio/stdio.c don't appear
to have been clobbered.)
The problem occurs when the parent program
uses fputs() to stdout, shortly after the exit
of a child program it spawned.
The child program spawned by the parent
uses ttyS1 to communicate with a hardware device.
The parent program uses ttyS0 to communicate with
the user--console--via stdout.
When the child program exits, a spurious character
is written to ttyS0 some time after it has exited.
If the child writes a <CR> to ttyS0 and flushes
it, the spurious character is written to ttyS0
at that time immediately preceding the <CR>.
If the child write <CR> terminated data to ttyS0
at an earlier point in its execution, no spurious
character is output.
It is believed that one of the shift registers
in the UART associated with ttyS0, or buffers
feeding that shift register, are improperly
set when the child process exits.
Has anybody seen a similar problem ?
Best Regards,
Paul R.
--
Paul Romero
RCOM Communications Software
Phone/Fax: (510)339-2628
E-Mail: paulr at rcom-software.com
More information about the uClinux-dev
mailing list