Can't get serial SMC1 and SMC2 working together

Björn Östby Bjorn.Ostby at
Tue Apr 4 23:34:45 EST 2006

>>I'm using a TQM823L board, ELDK and Linux 2.4.25 (from denx). My 
>>problem is that i can't use both SMC1 and SMC2 at the same time when I 
>>disable the console (console=null).
>Serial port interactions can result from incorrect mapping of the baud
>rate generators (BRGs) to the ports. I'm looking at source from 2.4.19,
>and this may have changed, but the serial driver init function (rs_8xx_init)
>calls m8xx_cpm_setbrg() with 'baud_idx' as the argument that selects which
>BRG. 'baud_idx' is set in serial_console_setup(). If you don't configure
>a console, 'baud_idx' may not be initialized.
>In any event, make sure that the BRGs are mapped to the ports as 
>required for your specific board.
>Ken Poole
>MRV Communications, INC.

I had the same problem with a custom 823 based card a few weeks ago. Turned 
out smc1 and smc2 indeed became wired to the same BRG when console=.... 
was passed as argument. My solution was a fast bypass hack in uart.c and 
no console= argument_

long __init console_8xx_init(long kmem_start, long kmem_end)
  /* register_console(&sercons); */
  sercons.setup(&sercons, NULL);
  return kmem_start;

A very static and ugly solution since time was of big essence, but that 
could possibly help you.

Björn Östby

Linuxppc-embedded mailing list
Linuxppc-embedded at

More information about the Linuxppc-embedded mailing list