1*e5723e0eSPaul Mundt /* 2*e5723e0eSPaul Mundt * SH7710 Setup 3*e5723e0eSPaul Mundt * 4*e5723e0eSPaul Mundt * Copyright (C) 2006 Paul Mundt 5*e5723e0eSPaul Mundt * 6*e5723e0eSPaul Mundt * This file is subject to the terms and conditions of the GNU General Public 7*e5723e0eSPaul Mundt * License. See the file "COPYING" in the main directory of this archive 8*e5723e0eSPaul Mundt * for more details. 9*e5723e0eSPaul Mundt */ 10*e5723e0eSPaul Mundt #include <linux/platform_device.h> 11*e5723e0eSPaul Mundt #include <linux/init.h> 12*e5723e0eSPaul Mundt #include <linux/serial.h> 13*e5723e0eSPaul Mundt #include <asm/sci.h> 14*e5723e0eSPaul Mundt 15*e5723e0eSPaul Mundt static struct plat_sci_port sci_platform_data[] = { 16*e5723e0eSPaul Mundt { 17*e5723e0eSPaul Mundt .mapbase = 0xa4400000, 18*e5723e0eSPaul Mundt .flags = UPF_BOOT_AUTOCONF, 19*e5723e0eSPaul Mundt .type = PORT_SCIF, 20*e5723e0eSPaul Mundt .irqs = { 52, 53, 55, 54 }, 21*e5723e0eSPaul Mundt }, { 22*e5723e0eSPaul Mundt .flags = 0, 23*e5723e0eSPaul Mundt } 24*e5723e0eSPaul Mundt }; 25*e5723e0eSPaul Mundt 26*e5723e0eSPaul Mundt static struct platform_device sci_device = { 27*e5723e0eSPaul Mundt .name = "sh-sci", 28*e5723e0eSPaul Mundt .id = -1, 29*e5723e0eSPaul Mundt .dev = { 30*e5723e0eSPaul Mundt .platform_data = sci_platform_data, 31*e5723e0eSPaul Mundt }, 32*e5723e0eSPaul Mundt }; 33*e5723e0eSPaul Mundt 34*e5723e0eSPaul Mundt static struct platform_device *sh7710_devices[] __initdata = { 35*e5723e0eSPaul Mundt &sci_device, 36*e5723e0eSPaul Mundt }; 37*e5723e0eSPaul Mundt 38*e5723e0eSPaul Mundt static int __init sh7710_devices_setup(void) 39*e5723e0eSPaul Mundt { 40*e5723e0eSPaul Mundt return platform_add_devices(sh7710_devices, 41*e5723e0eSPaul Mundt ARRAY_SIZE(sh7710_devices)); 42*e5723e0eSPaul Mundt } 43*e5723e0eSPaul Mundt __initcall(sh7710_devices_setup); 44