This commit was manufactured by cvs2svn to create branch 'vserver'.
[linux-2.6.git] / include / asm-arm / arch-shark / ide.h
1 /*
2  * linux/include/asm-arm/arch-shark/ide.h
3  *
4  * by Alexander Schulz
5  *
6  * derived from:
7  * linux/include/asm-arm/arch-ebsa285/ide.h
8  * Copyright (c) 1998 Russell King
9  */
10
11 #include <asm/irq.h>
12
13 /*
14  * Set up a hw structure for a specified data port, control port and IRQ.
15  * This should follow whatever the default interface uses.
16  */
17 static inline void ide_init_hwif_ports(hw_regs_t *hw, unsigned long data_port,
18                                        unsigned long ctrl_port, int *irq)
19 {
20         unsigned long reg = data_port;
21         int i;
22
23         memset(hw, 0, sizeof(*hw));
24
25         for (i = IDE_DATA_OFFSET; i <= IDE_STATUS_OFFSET; i++) {
26                 hw->io_ports[i] = reg;
27                 reg += 1;
28         }
29         hw->io_ports[IDE_CONTROL_OFFSET] = ctrl_port;
30         if (irq)
31                 *irq = 0;
32 }
33
34 /*
35  * This registers the standard ports for this architecture with the IDE
36  * driver.
37  */
38 static __inline__ void
39 ide_init_default_hwifs(void)
40 {
41         hw_regs_t hw;
42
43         ide_init_hwif_ports(&hw, 0x1f0, 0x3f6, NULL);
44         hw.irq = 14;
45         ide_register_hw(&hw,NULL);
46 }
47