diff options
author | Jonathan Herman <hermanjl@cs.unc.edu> | 2013-01-22 10:38:37 -0500 |
---|---|---|
committer | Jonathan Herman <hermanjl@cs.unc.edu> | 2013-01-22 10:38:37 -0500 |
commit | fcc9d2e5a6c89d22b8b773a64fb4ad21ac318446 (patch) | |
tree | a57612d1888735a2ec7972891b68c1ac5ec8faea /arch/arm/mach-spear3xx/spear320_evb.c | |
parent | 8dea78da5cee153b8af9c07a2745f6c55057fe12 (diff) |
Diffstat (limited to 'arch/arm/mach-spear3xx/spear320_evb.c')
-rw-r--r-- | arch/arm/mach-spear3xx/spear320_evb.c | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/arch/arm/mach-spear3xx/spear320_evb.c b/arch/arm/mach-spear3xx/spear320_evb.c new file mode 100644 index 00000000000..a12b353940d --- /dev/null +++ b/arch/arm/mach-spear3xx/spear320_evb.c | |||
@@ -0,0 +1,76 @@ | |||
1 | /* | ||
2 | * arch/arm/mach-spear3xx/spear320_evb.c | ||
3 | * | ||
4 | * SPEAr320 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/hardware.h> | ||
18 | |||
19 | /* padmux devices to enable */ | ||
20 | static struct pmx_dev *pmx_devs[] = { | ||
21 | /* spear3xx specific devices */ | ||
22 | &spear3xx_pmx_i2c, | ||
23 | &spear3xx_pmx_ssp, | ||
24 | &spear3xx_pmx_mii, | ||
25 | &spear3xx_pmx_uart0, | ||
26 | |||
27 | /* spear320 specific devices */ | ||
28 | &spear320_pmx_fsmc, | ||
29 | &spear320_pmx_sdhci, | ||
30 | &spear320_pmx_i2s, | ||
31 | &spear320_pmx_uart1, | ||
32 | &spear320_pmx_uart2, | ||
33 | &spear320_pmx_can, | ||
34 | &spear320_pmx_pwm0, | ||
35 | &spear320_pmx_pwm1, | ||
36 | &spear320_pmx_pwm2, | ||
37 | &spear320_pmx_mii1, | ||
38 | }; | ||
39 | |||
40 | static struct amba_device *amba_devs[] __initdata = { | ||
41 | /* spear3xx specific devices */ | ||
42 | &spear3xx_gpio_device, | ||
43 | &spear3xx_uart_device, | ||
44 | |||
45 | /* spear320 specific devices */ | ||
46 | }; | ||
47 | |||
48 | static struct platform_device *plat_devs[] __initdata = { | ||
49 | /* spear3xx specific devices */ | ||
50 | |||
51 | /* spear320 specific devices */ | ||
52 | }; | ||
53 | |||
54 | static void __init spear320_evb_init(void) | ||
55 | { | ||
56 | unsigned int i; | ||
57 | |||
58 | /* call spear320 machine init function */ | ||
59 | spear320_init(&spear320_auto_net_mii_mode, pmx_devs, | ||
60 | ARRAY_SIZE(pmx_devs)); | ||
61 | |||
62 | /* Add Platform Devices */ | ||
63 | platform_add_devices(plat_devs, ARRAY_SIZE(plat_devs)); | ||
64 | |||
65 | /* Add Amba Devices */ | ||
66 | for (i = 0; i < ARRAY_SIZE(amba_devs); i++) | ||
67 | amba_device_register(amba_devs[i], &iomem_resource); | ||
68 | } | ||
69 | |||
70 | MACHINE_START(SPEAR320, "ST-SPEAR320-EVB") | ||
71 | .boot_params = 0x00000100, | ||
72 | .map_io = spear3xx_map_io, | ||
73 | .init_irq = spear3xx_init_irq, | ||
74 | .timer = &spear3xx_timer, | ||
75 | .init_machine = spear320_evb_init, | ||
76 | MACHINE_END | ||