2005-04-17 06:20:36 +08:00
|
|
|
/*
|
2006-01-19 16:12:48 +08:00
|
|
|
* Virtex-II Pro & Virtex-4 FX common infrastructure
|
2005-04-17 06:20:36 +08:00
|
|
|
*
|
2006-01-19 16:12:48 +08:00
|
|
|
* Maintainer: Grant Likely <grant.likely@secretlab.ca>
|
2005-04-17 06:20:36 +08:00
|
|
|
*
|
2006-01-19 16:12:48 +08:00
|
|
|
* Copyright 2005 Secret Lab Technologies Ltd.
|
|
|
|
* Copyright 2005 General Dynamics Canada Ltd.
|
|
|
|
* Copyright 2005 Freescale Semiconductor Inc.
|
|
|
|
*
|
|
|
|
* This program is free software; you can redistribute it and/or modify it
|
|
|
|
* under the terms of the GNU General Public License as published by the
|
|
|
|
* Free Software Foundation; either version 2 of the License, or (at your
|
|
|
|
* option) any later version.
|
2005-04-17 06:20:36 +08:00
|
|
|
*/
|
|
|
|
|
|
|
|
#include <linux/init.h>
|
2006-01-19 16:12:48 +08:00
|
|
|
#include <linux/module.h>
|
|
|
|
#include <linux/device.h>
|
|
|
|
#include <linux/serial_8250.h>
|
|
|
|
#include <asm/ppc_sys.h>
|
2006-01-19 16:12:40 +08:00
|
|
|
#include <platforms/4xx/virtex.h>
|
2006-01-19 16:12:48 +08:00
|
|
|
#include <platforms/4xx/xparameters/xparameters.h>
|
|
|
|
|
|
|
|
#define XPAR_UART(num) { \
|
|
|
|
.mapbase = XPAR_UARTNS550_##num##_BASEADDR + 3, \
|
|
|
|
.irq = XPAR_INTC_0_UARTNS550_##num##_VEC_ID, \
|
|
|
|
.iotype = UPIO_MEM, \
|
|
|
|
.uartclk = XPAR_UARTNS550_##num##_CLOCK_FREQ_HZ, \
|
|
|
|
.flags = UPF_BOOT_AUTOCONF, \
|
|
|
|
.regshift = 2, \
|
|
|
|
}
|
2005-04-17 06:20:36 +08:00
|
|
|
|
2006-01-19 16:12:48 +08:00
|
|
|
struct plat_serial8250_port serial_platform_data[] = {
|
2005-04-17 06:20:36 +08:00
|
|
|
#ifdef XPAR_UARTNS550_0_BASEADDR
|
2006-01-19 16:12:48 +08:00
|
|
|
XPAR_UART(0),
|
|
|
|
#endif
|
2005-04-17 06:20:36 +08:00
|
|
|
#ifdef XPAR_UARTNS550_1_BASEADDR
|
2006-01-19 16:12:48 +08:00
|
|
|
XPAR_UART(1),
|
|
|
|
#endif
|
2005-04-17 06:20:36 +08:00
|
|
|
#ifdef XPAR_UARTNS550_2_BASEADDR
|
2006-01-19 16:12:48 +08:00
|
|
|
XPAR_UART(2),
|
|
|
|
#endif
|
2005-04-17 06:20:36 +08:00
|
|
|
#ifdef XPAR_UARTNS550_3_BASEADDR
|
2006-01-19 16:12:48 +08:00
|
|
|
XPAR_UART(3),
|
|
|
|
#endif
|
|
|
|
{ }, /* terminated by empty record */
|
|
|
|
};
|
|
|
|
|
|
|
|
struct platform_device ppc_sys_platform_devices[] = {
|
|
|
|
[VIRTEX_UART] = {
|
|
|
|
.name = "serial8250",
|
|
|
|
.id = 0,
|
|
|
|
.dev.platform_data = serial_platform_data,
|
2005-04-17 06:20:36 +08:00
|
|
|
},
|
|
|
|
};
|
2006-01-19 16:12:48 +08:00
|
|
|
|