• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/linux/linux-2.6/arch/arm/mach-spear3xx/
1/*
2 * arch/arm/mach-spear3xx/spear300_evb.c
3 *
4 * SPEAr300 evaluation board source file
5 *
6 * Copyright (C) 2009 ST Microelectronics
7 * Viresh Kumar<viresh.kumar@st.com>
8 *
9 * This file is licensed under the terms of the GNU General Public
10 * License version 2. This program is licensed "as is" without any
11 * warranty of any kind, whether express or implied.
12 */
13
14#include <asm/mach/arch.h>
15#include <asm/mach-types.h>
16#include <mach/generic.h>
17#include <mach/spear.h>
18
19/* padmux devices to enable */
20static struct pmx_dev *pmx_devs[] = {
21	/* spear3xx specific devices */
22	&pmx_i2c,
23	&pmx_ssp_cs,
24	&pmx_ssp,
25	&pmx_mii,
26	&pmx_uart0,
27
28	/* spear300 specific devices */
29	&pmx_fsmc_2_chips,
30	&pmx_clcd,
31	&pmx_telecom_sdio_4bit,
32	&pmx_gpio1,
33};
34
35static struct amba_device *amba_devs[] __initdata = {
36	/* spear3xx specific devices */
37	&gpio_device,
38	&uart_device,
39
40	/* spear300 specific devices */
41	&gpio1_device,
42};
43
44static struct platform_device *plat_devs[] __initdata = {
45	/* spear3xx specific devices */
46
47	/* spear300 specific devices */
48};
49
50static void __init spear300_evb_init(void)
51{
52	unsigned int i;
53
54	/* call spear300 machine init function */
55	spear300_init();
56
57	/* padmux initialization */
58	pmx_driver.mode = &photo_frame_mode;
59	pmx_driver.devs = pmx_devs;
60	pmx_driver.devs_count = ARRAY_SIZE(pmx_devs);
61	spear300_pmx_init();
62
63	/* Add Platform Devices */
64	platform_add_devices(plat_devs, ARRAY_SIZE(plat_devs));
65
66	/* Add Amba Devices */
67	for (i = 0; i < ARRAY_SIZE(amba_devs); i++)
68		amba_device_register(amba_devs[i], &iomem_resource);
69}
70
71MACHINE_START(SPEAR300, "ST-SPEAR300-EVB")
72	.boot_params	=	0x00000100,
73	.map_io		=	spear3xx_map_io,
74	.init_irq	=	spear3xx_init_irq,
75	.timer		=	&spear_sys_timer,
76	.init_machine	=	spear300_evb_init,
77MACHINE_END
78