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