[PATCH] CPM_UART: Fix non-console transmit

Kalle Pokki kalle.pokki at iki.fi
Fri Oct 20 05:07:19 EST 2006


On 10/19/06, Boris Shteinbock <boris at fabiotec.com> wrote:
>
> After applying your patch,
> the transmission doesn't take place at all..
> just hanging in write...
> at least it is possible to exit the program.

That's strange. No matter how I test the driver it now works
perfectly for me with my patches. Did you apply them both? However, I
cannot see why the length of the transmission would cause any
difference.

What is you baud rate on SMC2? How about the TX buffer count and TX
FIFO size - have you changed them? I suspect that cpm_uart_tx_pump()
could disable your TX interrupt when you have all characters queued in
separate TX buffers. I'll test this theory tomorrow.

You might want to strace your program and post the results here. Also put

  #define DEBUG

in front of cpm_uart_core.c and cpm_uart_cpm2.c and recompile. You'll
get a lot of debugging messages after

  echo 8 > /proc/sys/kernel/printk

That should give us clues what goes wrong. The output of

  stty -F /dev/ttyCPM1 -a

would also help.



More information about the Linuxppc-embedded mailing list