Adding 16c752 to MPC5200
Mateo Anderson
mateo_anderson at hotmail.com
Thu Nov 16 07:14:47 EST 2006
Hi
I am trying to add additional UART controller (TL16C752B) to MPC5200B
(even though it has six of them, but PSCs are used for different functions)
using kernel 2.6.18-rc5. I am (still) using arch/ppc.
The board is very simillar to Lite5200B, so I defined a structure in
arch/ppc/platforms/lite5200.c as:
static struct plat_serial8250_port additional_serial_ports[] = {
[0] = {
/* UART 6 */
.uartclk = 115200*16,
.iotype = UPIO_MEM,
.mapbase = 0x30000000,
.irq = MPC52xx_IRQ0,
.flags = UPF_BOOT_AUTOCONF,
},
[1] = {
...
and
static struct platform_device additional_serial_device = {
.name = "serial16c752",
.id = -1,
.num_resources = 2,
.dev.platform_data = &additional_serial_ports,
};
at the end of the function platform_init I added:
platform_device_register(&additional_serial_device);
However the kernel does not work.
If I comment out a call to platform_device_register, the kernel boots
fine. If I use in a working kernel tool devmem2, I can see the values
of the registers in the UART controller.
What am I doing wrong?
BR,
Mateo
_________________________________________________________________
FREE pop-up blocking with the new MSN Toolbar - get it now!
http://toolbar.msn.click-url.com/go/onm00200415ave/direct/01/
More information about the Linuxppc-embedded
mailing list