1/* 2 * This file is subject to the terms and conditions of the GNU General Public 3 * License. See the file "COPYING" in the main directory of this archive 4 * for more details. 5 * 6 * Copyright (C) 2007 Ralf Baechle (ralf@linux-mips.org) 7 */ 8#include <linux/init.h> 9#include <linux/serial_8250.h> 10 11#define PORT(base, int) \ 12{ \ 13 .iobase = base, \ 14 .irq = int, \ 15 .uartclk = 1843200, \ 16 .iotype = UPIO_PORT, \ 17 .flags = UPF_BOOT_AUTOCONF | UPF_SKIP_TEST, \ 18 .regshift = 0, \ 19} 20 21static struct plat_serial8250_port uart8250_data[] = { 22 PORT(0x3F8, 4), 23 PORT(0x2F8, 3), 24 PORT(0x3E8, 4), 25 PORT(0x2E8, 3), 26 { }, 27}; 28 29static struct platform_device uart8250_device = { 30 .name = "serial8250", 31 .id = PLAT8250_DEV_PLATFORM, 32 .dev = { 33 .platform_data = uart8250_data, 34 }, 35}; 36 37static int __init uart8250_init(void) 38{ 39 return platform_device_register(&uart8250_device); 40} 41 42module_init(uart8250_init); 43 44MODULE_AUTHOR("Ralf Baechle <ralf@linux-mips.org>"); 45MODULE_LICENSE("GPL"); 46MODULE_DESCRIPTION("Generic 8250 UART probe driver"); 47