|
From: Paul M. <le...@us...> - 2006-08-01 02:54:46
|
Update of /cvsroot/linuxsh/linux/arch/sh/kernel/cpu/sh3 In directory sc8-pr-cvs6.sourceforge.net:/tmp/cvs-serv8195/arch/sh/kernel/cpu/sh3 Modified Files: Makefile Added Files: setup-sh7300.c setup-sh7705.c setup-sh7708.c setup-sh7709.c Log Message: Setup code for SH-3 CPU subtypes. --- NEW FILE: setup-sh7300.c --- /* * SH7300 Setup * * Copyright (C) 2006 Paul Mundt * * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive * for more details. */ #include <linux/platform_device.h> #include <linux/init.h> #include <linux/serial.h> #include <asm/sci.h> static struct plat_sci_port sci_platform_data[] = { { .mapbase = 0xa4430000, .flags = UPF_BOOT_AUTOCONF, .type = PORT_SCI, .irqs = { 80, 80, 80, 80 }, }, { .flags = 0, } }; static struct platform_device sci_device = { .name = "sh-sci", .id = -1, .dev = { .platform_data = sci_platform_data, }, }; static struct platform_device *sh7300_devices[] __initdata = { &sci_device, }; static int __init sh7300_devices_setup(void) { return platform_add_devices(sh7300_devices, ARRAY_SIZE(sh7300_devices)); } __initcall(sh7300_devices_setup); --- NEW FILE: setup-sh7705.c --- /* * SH7705 Setup * * Copyright (C) 2006 Paul Mundt * * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive * for more details. */ #include <linux/platform_device.h> #include <linux/init.h> #include <linux/serial.h> #include <asm/sci.h> static struct plat_sci_port sci_platform_data[] = { { .mapbase = 0xa4400000, .flags = UPF_BOOT_AUTOCONF, .type = PORT_SCIF, .irqs = { 52, 53, 55, 54 }, }, { .mapbase = 0xa4410000, .flags = UPF_BOOT_AUTOCONF, .type = PORT_SCIF, .irqs = { 56, 57, 59, 58 }, }, { .flags = 0, } }; static struct platform_device sci_device = { .name = "sh-sci", .id = -1, .dev = { .platform_data = sci_platform_data, }, }; static struct platform_device *sh7705_devices[] __initdata = { &sci_device, }; static int __init sh7705_devices_setup(void) { return platform_add_devices(sh7705_devices, ARRAY_SIZE(sh7705_devices)); } __initcall(sh7705_devices_setup); --- NEW FILE: setup-sh7708.c --- /* * SH7708 Setup * * Copyright (C) 2006 Paul Mundt * * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive * for more details. */ #include <linux/platform_device.h> #include <linux/init.h> #include <linux/serial.h> #include <asm/sci.h> static struct plat_sci_port sci_platform_data[] = { { .mapbase = 0xfffffe80, .flags = UPF_BOOT_AUTOCONF, .type = PORT_SCI, .irqs = { 23, 24, 25, 0 }, }, { .flags = 0, } }; static struct platform_device sci_device = { .name = "sh-sci", .id = -1, .dev = { .platform_data = sci_platform_data, }, }; static struct platform_device *sh7708_devices[] __initdata = { &sci_device, }; static int __init sh7708_devices_setup(void) { return platform_add_devices(sh7708_devices, ARRAY_SIZE(sh7708_devices)); } __initcall(sh7708_devices_setup); --- NEW FILE: setup-sh7709.c --- /* * SH7707/SH7709 Setup * * Copyright (C) 2006 Paul Mundt * * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive * for more details. */ #include <linux/platform_device.h> #include <linux/init.h> #include <linux/serial.h> #include <asm/sci.h> static struct plat_sci_port sci_platform_data[] = { { .mapbase = 0xfffffe80, .flags = UPF_BOOT_AUTOCONF, .type = PORT_SCI, .irqs = { 23, 24, 25, 0 }, }, { .mapbase = 0xa4000150, .flags = UPF_BOOT_AUTOCONF, .type = PORT_SCIF, .irqs = { 56, 57, 59, 58 }, }, { .mapbase = 0xa4000140, .flags = UPF_BOOT_AUTOCONF, .type = PORT_IRDA, .irqs = { 52, 53, 55, 54 }, }, { .flags = 0, } }; static struct platform_device sci_device = { .name = "sh-sci", .id = -1, .dev = { .platform_data = sci_platform_data, }, }; static struct platform_device *sh7709_devices[] __initdata = { &sci_device, }; static int __init sh7709_devices_setup(void) { return platform_add_devices(sh7709_devices, ARRAY_SIZE(sh7709_devices)); } __initcall(sh7709_devices_setup); Index: Makefile =================================================================== RCS file: /cvsroot/linuxsh/linux/arch/sh/kernel/cpu/sh3/Makefile,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- Makefile 10 Jun 2005 15:51:47 -0000 1.6 +++ Makefile 1 Aug 2006 02:54:42 -0000 1.7 @@ -4,6 +4,14 @@ obj-y := ex.o probe.o +# CPU subtype setup +obj-$(CONFIG_CPU_SUBTYPE_SH7705) += setup-sh7705.o +obj-$(CONFIG_CPU_SUBTYPE_SH7707) += setup-sh7709.o +obj-$(CONFIG_CPU_SUBTYPE_SH7708) += setup-sh7708.o +obj-$(CONFIG_CPU_SUBTYPE_SH7709) += setup-sh7709.o +obj-$(CONFIG_CPU_SUBTYPE_SH7300) += setup-sh7300.o + +# Primary on-chip clocks (common) clock-$(CONFIG_CPU_SH3) := clock-sh3.o clock-$(CONFIG_CPU_SUBTYPE_SH7300) := clock-sh7300.o clock-$(CONFIG_CPU_SUBTYPE_SH7705) := clock-sh7705.o |