1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24#undef DEBUG
25#include <asm/time.h>
26#include <asm/prom.h>
27#include <asm/machdep.h>
28#include <asm/mpc52xx.h>
29
30
31
32
33static void __init mpc5200_simple_setup_arch(void)
34{
35 if (ppc_md.progress)
36 ppc_md.progress("mpc5200_simple_setup_arch()", 0);
37
38
39 mpc52xx_map_common_devices();
40
41
42 mpc5200_setup_xlb_arbiter();
43
44 mpc52xx_setup_pci();
45}
46
47
48static const char *board[] __initdata = {
49 "anonymous,a3m071",
50 "anonymous,a4m072",
51 "anon,charon",
52 "ifm,o2d",
53 "intercontrol,digsy-mtc",
54 "manroland,mucmc52",
55 "manroland,uc101",
56 "phytec,pcm030",
57 "phytec,pcm032",
58 "promess,motionpro",
59 "schindler,cm5200",
60 "tqc,tqm5200",
61 NULL
62};
63
64
65
66
67static int __init mpc5200_simple_probe(void)
68{
69 return of_device_compatible_match(of_root, board);
70}
71
72define_machine(mpc5200_simple_platform) {
73 .name = "mpc5200-simple-platform",
74 .probe = mpc5200_simple_probe,
75 .setup_arch = mpc5200_simple_setup_arch,
76 .init = mpc52xx_declare_of_platform_devices,
77 .init_IRQ = mpc52xx_init_irq,
78 .get_irq = mpc52xx_get_irq,
79 .restart = mpc52xx_restart,
80 .calibrate_decr = generic_calibrate_decr,
81};
82