Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | #ifndef _ASM_M32R_IDE_H |
2 | #define _ASM_M32R_IDE_H | |
3 | ||
4 | /* $Id$ */ | |
5 | ||
6 | /* | |
7 | * linux/include/asm-m32r/ide.h | |
8 | * | |
9 | * Copyright (C) 1994-1996 Linus Torvalds & authors | |
10 | */ | |
11 | ||
12 | /* | |
13 | * This file contains the i386 architecture specific IDE code. | |
14 | */ | |
15 | ||
16 | #ifdef __KERNEL__ | |
17 | ||
1da177e4 LT |
18 | |
19 | #ifndef MAX_HWIFS | |
20 | # ifdef CONFIG_BLK_DEV_IDEPCI | |
21 | #define MAX_HWIFS 10 | |
22 | # else | |
23 | #define MAX_HWIFS 2 | |
24 | # endif | |
25 | #endif | |
26 | ||
ad09d583 HT |
27 | #include <asm/m32r.h> |
28 | ||
1da177e4 LT |
29 | |
30 | #define IDE_ARCH_OBSOLETE_DEFAULTS | |
31 | ||
32 | static __inline__ int ide_default_irq(unsigned long base) | |
33 | { | |
34 | switch (base) { | |
d93f7de8 HT |
35 | #if defined(CONFIG_PLAT_M32700UT) || defined(CONFIG_PLAT_MAPPI2) \ |
36 | || defined(CONFIG_PLAT_OPSPUT) | |
ad09d583 HT |
37 | case 0x1f0: return PLD_IRQ_CFIREQ; |
38 | default: | |
39 | return 0; | |
40 | #elif defined(CONFIG_PLAT_MAPPI3) | |
1da177e4 | 41 | case 0x1f0: return PLD_IRQ_CFIREQ; |
ad09d583 | 42 | case 0x170: return PLD_IRQ_IDEIREQ; |
1da177e4 LT |
43 | default: |
44 | return 0; | |
45 | #else | |
46 | case 0x1f0: return 14; | |
47 | case 0x170: return 15; | |
48 | case 0x1e8: return 11; | |
49 | case 0x168: return 10; | |
50 | case 0x1e0: return 8; | |
51 | case 0x160: return 12; | |
52 | default: | |
53 | return 0; | |
54 | #endif | |
55 | } | |
56 | } | |
57 | ||
58 | static __inline__ unsigned long ide_default_io_base(int index) | |
59 | { | |
60 | switch (index) { | |
61 | case 0: return 0x1f0; | |
62 | case 1: return 0x170; | |
63 | case 2: return 0x1e8; | |
64 | case 3: return 0x168; | |
65 | case 4: return 0x1e0; | |
66 | case 5: return 0x160; | |
67 | default: | |
68 | return 0; | |
69 | } | |
70 | } | |
71 | ||
72 | #define IDE_ARCH_OBSOLETE_INIT | |
73 | #define ide_default_io_ctl(base) ((base) + 0x206) /* obsolete */ | |
74 | ||
75 | #ifdef CONFIG_BLK_DEV_IDEPCI | |
76 | #define ide_init_default_irq(base) (0) | |
77 | #else | |
78 | #define ide_init_default_irq(base) ide_default_irq(base) | |
79 | #endif | |
80 | ||
81 | #include <asm-generic/ide_iops.h> | |
82 | ||
83 | #endif /* __KERNEL__ */ | |
84 | ||
85 | #endif /* _ASM_M32R_IDE_H */ |