diff options
Diffstat (limited to 'arch/sh/boards/renesas/hs7751rvoip/setup.c')
-rw-r--r-- | arch/sh/boards/renesas/hs7751rvoip/setup.c | 96 |
1 files changed, 44 insertions, 52 deletions
diff --git a/arch/sh/boards/renesas/hs7751rvoip/setup.c b/arch/sh/boards/renesas/hs7751rvoip/setup.c index a2cbcc5d530f..0414c15c3458 100644 --- a/arch/sh/boards/renesas/hs7751rvoip/setup.c +++ b/arch/sh/boards/renesas/hs7751rvoip/setup.c | |||
@@ -1,15 +1,12 @@ | |||
1 | /* | 1 | /* |
2 | * linux/arch/sh/kernel/setup_hs7751rvoip.c | 2 | * Renesas Technology Sales HS7751RVoIP Support. |
3 | * | 3 | * |
4 | * Copyright (C) 2000 Kazumoto Kojima | 4 | * Copyright (C) 2000 Kazumoto Kojima |
5 | * | 5 | * |
6 | * Renesas Technology Sales HS7751RVoIP Support. | ||
7 | * | ||
8 | * Modified for HS7751RVoIP by | 6 | * Modified for HS7751RVoIP by |
9 | * Atom Create Engineering Co., Ltd. 2002. | 7 | * Atom Create Engineering Co., Ltd. 2002. |
10 | * Lineo uSolutions, Inc. 2003. | 8 | * Lineo uSolutions, Inc. 2003. |
11 | */ | 9 | */ |
12 | |||
13 | #include <linux/init.h> | 10 | #include <linux/init.h> |
14 | #include <linux/irq.h> | 11 | #include <linux/irq.h> |
15 | #include <linux/mm.h> | 12 | #include <linux/mm.h> |
@@ -23,8 +20,6 @@ | |||
23 | #include <asm/rtc.h> | 20 | #include <asm/rtc.h> |
24 | #include <asm/irq.h> | 21 | #include <asm/irq.h> |
25 | 22 | ||
26 | unsigned int debug_counter; | ||
27 | |||
28 | static void __init hs7751rvoip_init_irq(void) | 23 | static void __init hs7751rvoip_init_irq(void) |
29 | { | 24 | { |
30 | #if defined(CONFIG_HS7751RVOIP_CODEC) | 25 | #if defined(CONFIG_HS7751RVOIP_CODEC) |
@@ -35,56 +30,11 @@ static void __init hs7751rvoip_init_irq(void) | |||
35 | init_hs7751rvoip_IRQ(); | 30 | init_hs7751rvoip_IRQ(); |
36 | } | 31 | } |
37 | 32 | ||
38 | struct sh_machine_vector mv_hs7751rvoip __initmv = { | ||
39 | .mv_nr_irqs = 72, | ||
40 | |||
41 | .mv_inb = hs7751rvoip_inb, | ||
42 | .mv_inw = hs7751rvoip_inw, | ||
43 | .mv_inl = hs7751rvoip_inl, | ||
44 | .mv_outb = hs7751rvoip_outb, | ||
45 | .mv_outw = hs7751rvoip_outw, | ||
46 | .mv_outl = hs7751rvoip_outl, | ||
47 | |||
48 | .mv_inb_p = hs7751rvoip_inb_p, | ||
49 | .mv_inw_p = hs7751rvoip_inw, | ||
50 | .mv_inl_p = hs7751rvoip_inl, | ||
51 | .mv_outb_p = hs7751rvoip_outb_p, | ||
52 | .mv_outw_p = hs7751rvoip_outw, | ||
53 | .mv_outl_p = hs7751rvoip_outl, | ||
54 | |||
55 | .mv_insb = hs7751rvoip_insb, | ||
56 | .mv_insw = hs7751rvoip_insw, | ||
57 | .mv_insl = hs7751rvoip_insl, | ||
58 | .mv_outsb = hs7751rvoip_outsb, | ||
59 | .mv_outsw = hs7751rvoip_outsw, | ||
60 | .mv_outsl = hs7751rvoip_outsl, | ||
61 | |||
62 | .mv_init_irq = hs7751rvoip_init_irq, | ||
63 | .mv_ioport_map = hs7751rvoip_ioport_map, | ||
64 | }; | ||
65 | ALIAS_MV(hs7751rvoip) | ||
66 | |||
67 | const char *get_system_type(void) | ||
68 | { | ||
69 | return "HS7751RVoIP"; | ||
70 | } | ||
71 | |||
72 | static void hs7751rvoip_power_off(void) | 33 | static void hs7751rvoip_power_off(void) |
73 | { | 34 | { |
74 | ctrl_outw(ctrl_inw(PA_OUTPORTR) & 0xffdf, PA_OUTPORTR); | 35 | ctrl_outw(ctrl_inw(PA_OUTPORTR) & 0xffdf, PA_OUTPORTR); |
75 | } | 36 | } |
76 | 37 | ||
77 | /* | ||
78 | * Initialize the board | ||
79 | */ | ||
80 | void __init platform_setup(void) | ||
81 | { | ||
82 | printk(KERN_INFO "Renesas Technology Sales HS7751RVoIP-2 support.\n"); | ||
83 | ctrl_outb(0xf0, PA_OUTPORTR); | ||
84 | pm_power_off = hs7751rvoip_power_off; | ||
85 | debug_counter = 0; | ||
86 | } | ||
87 | |||
88 | void *area5_io8_base; | 38 | void *area5_io8_base; |
89 | void *area6_io8_base; | 39 | void *area6_io8_base; |
90 | void *area5_io16_base; | 40 | void *area5_io16_base; |
@@ -127,4 +77,46 @@ static int __init hs7751rvoip_cf_init(void) | |||
127 | return 0; | 77 | return 0; |
128 | } | 78 | } |
129 | 79 | ||
130 | __initcall(hs7751rvoip_cf_init); | 80 | /* |
81 | * Initialize the board | ||
82 | */ | ||
83 | static void __init hs7751rvoip_setup(char **cmdline_p) | ||
84 | { | ||
85 | device_initcall(hs7751rvoip_cf_init); | ||
86 | |||
87 | ctrl_outb(0xf0, PA_OUTPORTR); | ||
88 | pm_power_off = hs7751rvoip_power_off; | ||
89 | |||
90 | printk(KERN_INFO "Renesas Technology Sales HS7751RVoIP-2 support.\n"); | ||
91 | } | ||
92 | |||
93 | struct sh_machine_vector mv_hs7751rvoip __initmv = { | ||
94 | .mv_name = "HS7751RVoIP", | ||
95 | .mv_setup = hs7751rvoip_setup, | ||
96 | .mv_nr_irqs = 72, | ||
97 | |||
98 | .mv_inb = hs7751rvoip_inb, | ||
99 | .mv_inw = hs7751rvoip_inw, | ||
100 | .mv_inl = hs7751rvoip_inl, | ||
101 | .mv_outb = hs7751rvoip_outb, | ||
102 | .mv_outw = hs7751rvoip_outw, | ||
103 | .mv_outl = hs7751rvoip_outl, | ||
104 | |||
105 | .mv_inb_p = hs7751rvoip_inb_p, | ||
106 | .mv_inw_p = hs7751rvoip_inw, | ||
107 | .mv_inl_p = hs7751rvoip_inl, | ||
108 | .mv_outb_p = hs7751rvoip_outb_p, | ||
109 | .mv_outw_p = hs7751rvoip_outw, | ||
110 | .mv_outl_p = hs7751rvoip_outl, | ||
111 | |||
112 | .mv_insb = hs7751rvoip_insb, | ||
113 | .mv_insw = hs7751rvoip_insw, | ||
114 | .mv_insl = hs7751rvoip_insl, | ||
115 | .mv_outsb = hs7751rvoip_outsb, | ||
116 | .mv_outsw = hs7751rvoip_outsw, | ||
117 | .mv_outsl = hs7751rvoip_outsl, | ||
118 | |||
119 | .mv_init_irq = hs7751rvoip_init_irq, | ||
120 | .mv_ioport_map = hs7751rvoip_ioport_map, | ||
121 | }; | ||
122 | ALIAS_MV(hs7751rvoip) | ||