blob: 68934a25931f7a7928f5ec1a8133027a8bbbef43 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001/*
2 * linux/include/asm-alpha/ide.h
3 *
4 * Copyright (C) 1994-1996 Linus Torvalds & authors
5 */
6
7/*
8 * This file contains the alpha architecture specific IDE code.
9 */
10
11#ifndef __ASMalpha_IDE_H
12#define __ASMalpha_IDE_H
13
14#ifdef __KERNEL__
15
16#include <linux/config.h>
17
18#ifndef MAX_HWIFS
19#define MAX_HWIFS CONFIG_IDE_MAX_HWIFS
20#endif
21
22#define IDE_ARCH_OBSOLETE_DEFAULTS
23
24static inline int ide_default_irq(unsigned long base)
25{
26 switch (base) {
27 case 0x1f0: return 14;
28 case 0x170: return 15;
29 case 0x1e8: return 11;
30 case 0x168: return 10;
31 default:
32 return 0;
33 }
34}
35
36static inline unsigned long ide_default_io_base(int index)
37{
38 switch (index) {
39 case 0: return 0x1f0;
40 case 1: return 0x170;
41 case 2: return 0x1e8;
42 case 3: return 0x168;
43 default:
44 return 0;
45 }
46}
47
48#define IDE_ARCH_OBSOLETE_INIT
49#define ide_default_io_ctl(base) ((base) + 0x206) /* obsolete */
50
51#ifdef CONFIG_PCI
52#define ide_init_default_irq(base) (0)
53#else
54#define ide_init_default_irq(base) ide_default_irq(base)
55#endif
56
57#include <asm-generic/ide_iops.h>
58
59#endif /* __KERNEL__ */
60
61#endif /* __ASMalpha_IDE_H */