diff options
Diffstat (limited to 'arch/arc/plat-arcfpga/platform.c')
-rw-r--r-- | arch/arc/plat-arcfpga/platform.c | 61 |
1 files changed, 9 insertions, 52 deletions
diff --git a/arch/arc/plat-arcfpga/platform.c b/arch/arc/plat-arcfpga/platform.c index 1038949a99a1..afc88254acc1 100644 --- a/arch/arc/plat-arcfpga/platform.c +++ b/arch/arc/plat-arcfpga/platform.c | |||
@@ -8,37 +8,9 @@ | |||
8 | * published by the Free Software Foundation. | 8 | * published by the Free Software Foundation. |
9 | */ | 9 | */ |
10 | 10 | ||
11 | #include <linux/types.h> | ||
12 | #include <linux/init.h> | 11 | #include <linux/init.h> |
13 | #include <linux/device.h> | ||
14 | #include <linux/platform_device.h> | ||
15 | #include <linux/io.h> | ||
16 | #include <linux/console.h> | ||
17 | #include <linux/of_platform.h> | ||
18 | #include <asm/setup.h> | ||
19 | #include <asm/clk.h> | ||
20 | #include <asm/mach_desc.h> | 12 | #include <asm/mach_desc.h> |
21 | #include <plat/memmap.h> | ||
22 | #include <plat/smp.h> | 13 | #include <plat/smp.h> |
23 | #include <plat/irq.h> | ||
24 | |||
25 | static void __init plat_fpga_early_init(void) | ||
26 | { | ||
27 | pr_info("[plat-arcfpga]: registering early dev resources\n"); | ||
28 | |||
29 | #ifdef CONFIG_ISS_SMP_EXTN | ||
30 | iss_model_init_early_smp(); | ||
31 | #endif | ||
32 | } | ||
33 | |||
34 | static void __init plat_fpga_populate_dev(void) | ||
35 | { | ||
36 | /* | ||
37 | * Traverses flattened DeviceTree - registering platform devices | ||
38 | * (if any) complete with their resources | ||
39 | */ | ||
40 | of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); | ||
41 | } | ||
42 | 14 | ||
43 | /*----------------------- Machine Descriptions ------------------------------ | 15 | /*----------------------- Machine Descriptions ------------------------------ |
44 | * | 16 | * |
@@ -48,41 +20,26 @@ static void __init plat_fpga_populate_dev(void) | |||
48 | * callback set, by matching the DT compatible name. | 20 | * callback set, by matching the DT compatible name. |
49 | */ | 21 | */ |
50 | 22 | ||
51 | static const char *aa4_compat[] __initconst = { | 23 | static const char *legacy_fpga_compat[] __initconst = { |
52 | "snps,arc-angel4", | 24 | "snps,arc-angel4", |
53 | NULL, | ||
54 | }; | ||
55 | |||
56 | MACHINE_START(ANGEL4, "angel4") | ||
57 | .dt_compat = aa4_compat, | ||
58 | .init_early = plat_fpga_early_init, | ||
59 | .init_machine = plat_fpga_populate_dev, | ||
60 | #ifdef CONFIG_ISS_SMP_EXTN | ||
61 | .init_smp = iss_model_init_smp, | ||
62 | #endif | ||
63 | MACHINE_END | ||
64 | |||
65 | static const char *ml509_compat[] __initconst = { | ||
66 | "snps,arc-ml509", | 25 | "snps,arc-ml509", |
67 | NULL, | 26 | NULL, |
68 | }; | 27 | }; |
69 | 28 | ||
70 | MACHINE_START(ML509, "ml509") | 29 | MACHINE_START(LEGACY_FPGA, "legacy_fpga") |
71 | .dt_compat = ml509_compat, | 30 | .dt_compat = legacy_fpga_compat, |
72 | .init_early = plat_fpga_early_init, | 31 | #ifdef CONFIG_ISS_SMP_EXTN |
73 | .init_machine = plat_fpga_populate_dev, | 32 | .init_early = iss_model_init_early_smp, |
74 | #ifdef CONFIG_SMP | ||
75 | .init_smp = iss_model_init_smp, | 33 | .init_smp = iss_model_init_smp, |
76 | #endif | 34 | #endif |
77 | MACHINE_END | 35 | MACHINE_END |
78 | 36 | ||
79 | static const char *nsimosci_compat[] __initconst = { | 37 | static const char *simulation_compat[] __initconst = { |
38 | "snps,nsim", | ||
80 | "snps,nsimosci", | 39 | "snps,nsimosci", |
81 | NULL, | 40 | NULL, |
82 | }; | 41 | }; |
83 | 42 | ||
84 | MACHINE_START(NSIMOSCI, "nsimosci") | 43 | MACHINE_START(SIMULATION, "simulation") |
85 | .dt_compat = nsimosci_compat, | 44 | .dt_compat = simulation_compat, |
86 | .init_early = NULL, | ||
87 | .init_machine = plat_fpga_populate_dev, | ||
88 | MACHINE_END | 45 | MACHINE_END |