Hi,

on my target (MPC8270, 2.4.25) SCC1, SCC2 and SCC3 will work fine as ttyS0 .. 
ttyS2 with console at ttyS0.

It works with this code in arch/ppc/8260_io/uart.c
#define CONFIG_SERIAL_CONSOLE_PORT      0

#define SCC_NUM_BASE    0       /* SCC base tty "number" */
#define SCC_IDX_BASE            0       /* table index */
static struct serial_state rs_table[] = {
        /* UART CLK   PORT          IRQ      FLAGS  NUM   */
        { 0,     0, PROFF_SCC1, SIU_INT_SCC1,   0, SCC_NUM_BASE},          /* 
SCC1 ttyS0 */
        { 0,     0, PROFF_SCC2, SIU_INT_SCC2,   0, SCC_NUM_BASE + 1},    /* 
SCC2 ttyS1 */
        { 0,     0, PROFF_SCC3, SIU_INT_SCC3,   0, SCC_NUM_BASE +2},     /* 
SCC3 ttyS2 */


Now i need the two SMC's.
I changed the source to:
#define CONFIG_SERIAL_CONSOLE_PORT      2
#define SCC_NUM_BASE    2       /* SCC base tty "number" */
#define SCC_IDX_BASE    2       /* table index */
static struct serial_state rs_table[] = {
        /* UART CLK   PORT          IRQ      FLAGS  NUM   */
        { 0,     0, PROFF_SMC1, SIU_INT_SMC1,   0, 0},    /* SMC1 ttyS0 */
        { 0,     0, PROFF_SMC2, SIU_INT_SMC2,   0, 1},    /* SMC2 ttyS1 */      
        { 0,     0, PROFF_SCC1, SIU_INT_SCC1,   0, SCC_NUM_BASE},    /* SCC1 
ttyS2 */
        { 0,     0, PROFF_SCC2, SIU_INT_SCC2,   0, SCC_NUM_BASE + 1},    /* 
SCC2 ttyS3 */
        { 0,     0, PROFF_SCC3, SIU_INT_SCC3,   0, SCC_NUM_BASE + 2},    /* 
SCC3 ttyS4 */
and passed the bootloader the correct console=ttyS2.

During booting kernel hangs on initializing ttyS2 forever.

What could be wrong ? I only changed the io port configuration in the init 
function.

Thanks in advance
Marco





---------
Marco Schramel

Reply via email to