1 /*
2  * linux/arch/sh/kernel/mach_shmse.c
3  *
4  * Copyright (C) 2003 Takashi Kusuda <kusuda-takashi@hitachi-ul.co.jp>
5  * Based largely on mach_se.c
6  *
7  * Machine vector for SH-Mobile SolutionEngine
8  */
9 
10 #include <linux/config.h>
11 #include <linux/init.h>
12 
13 #include <asm/machvec.h>
14 #include <asm/rtc.h>
15 #include <asm/machvec_init.h>
16 
17 #include <asm/io_shmse.h>
18 
19 void heartbeat_se(void);
20 void setup_shmse(void);
21 void init_shmse_IRQ(void);
22 
23 /*
24  * The Machine Vector
25  */
26 
27 struct sh_machine_vector mv_shmse __initmv = {
28 	mv_name:		"SH-Mobile SE",
29 
30 	mv_nr_irqs:		109,
31 
32 	mv_inb:			shmse_inb,
33 	mv_inw:			shmse_inw,
34 	mv_inl:			shmse_inl,
35 	mv_outb:		shmse_outb,
36 	mv_outw:		shmse_outw,
37 	mv_outl:		shmse_outl,
38 
39 	mv_inb_p:		shmse_inb_p,
40 	mv_inw_p:		shmse_inw,
41 	mv_inl_p:		shmse_inl,
42 	mv_outb_p:		shmse_outb_p,
43 	mv_outw_p:		shmse_outw,
44 	mv_outl_p:		shmse_outl,
45 
46 	mv_insb:		shmse_insb,
47 	mv_insw:		shmse_insw,
48 	mv_insl:		shmse_insl,
49 	mv_outsb:		shmse_outsb,
50 	mv_outsw:		shmse_outsw,
51 	mv_outsl:		shmse_outsl,
52 
53 	mv_readb:		shmse_readb,
54 	mv_readw:		shmse_readw,
55 	mv_readl:		shmse_readl,
56 	mv_writeb:		shmse_writeb,
57 	mv_writew:		shmse_writew,
58 	mv_writel:		shmse_writel,
59 
60 	mv_ioremap:		generic_ioremap,
61 	mv_iounmap:		generic_iounmap,
62 
63 	mv_init_arch:		setup_shmse,
64 	mv_init_irq:		init_shmse_IRQ,
65 #ifdef CONFIG_HEARTBEAT
66 	mv_heartbeat:		heartbeat_se,
67 #endif
68 
69 	mv_hw_shmse:		1,
70 };
71 ALIAS_MV(shmse)
72