MPC8xx: Using SCM/SCC and standard 16C550 Uarts together...
David Jander
david.jander at protonic.nl
Wed Jan 12 20:51:58 EST 2005
Hi all,
The situation is:
Our custom board needs to use SCM1 as console, and has an external quad uart
chip (16C554) connected to the external bus, mapped at 0xf8100000.
I am using the ppclinux_2_4_devel tree from Denx.
I ioremapped that address space, and it seems to work. Right now I don't have
the daughterboard with the quad-uarts working (as in hardware), so I can't
fully test that.
The problem is:
Apparently arch/ppc/8xx_io/uart.c doesn't take into account other serial
drivers that may initialize later, and uses a serial_state struct statically.
Shouldn't this be visible to the outside? Shouldn't there be a global
serial_state structure somewhere that lists all serial ports?
Right now, I get this:
-----------------------------------
...
CPM UART driver version 0.04
ttyS0 at 0x0280 is on SMC1 using BRG1
ttyS1 at 0x0200 is on SCC3 using BRG2
ttyS2 at 0x0300 is on SCC4 using BRG3
pty: 256 Unix98 ptys configured
Serial driver version 5.05c (2001-07-08) with MANY_PORTS SHARE_IRQ enabled
...
VFS: Mounted root (jffs2 filesystem).
Mounted devfs on /dev
Freeing unused kernel memory: 56k init
------------------------------------
And then nothing more. I assume, at that point init opens /dev/console (ttyS0)
and that device doesn't exist, since drivers/char/serial.c doesn't detect any
uart at the moment.
If it did, maybe I would get console stuff out of the first 16c554 port.
Has anybody else tried this?
What would be the right way to fix this?
Greetings,
--
David Jander
Protonic Holland.
More information about the Linuxppc-embedded
mailing list