1/* 2 * linux/include/asm-arm/ide.h 3 * 4 * Copyright (C) 1994-1996 Linus Torvalds & authors 5 */ 6 7/* s390 does not have IDE */ 8 9#ifndef __ASMS390_IDE_H 10#define __ASMS390_IDE_H 11 12#ifdef __KERNEL__ 13 14#ifndef MAX_HWIFS 15#define MAX_HWIFS 0 16#endif 17 18#define ide__sti() do {} while (0) 19 20typedef union { 21 unsigned all : 8; /* all of the bits together */ 22 struct { 23 unsigned head : 4; /* always zeros here */ 24 unsigned unit : 1; /* drive select number, 0 or 1 */ 25 unsigned bit5 : 1; /* always 1 */ 26 unsigned lba : 1; /* using LBA instead of CHS */ 27 unsigned bit7 : 1; /* always 1 */ 28 } b; 29} select_t; 30 31typedef union { 32 unsigned all : 8; /* all of the bits together */ 33 struct { 34 unsigned bit0 : 1; 35 unsigned nIEN : 1; /* device INTRQ to host */ 36 unsigned SRST : 1; /* host soft reset bit */ 37 unsigned bit3 : 1; /* ATA-2 thingy */ 38 unsigned reserved456 : 3; 39 unsigned HOB : 1; /* 48-bit address ordering */ 40 } b; 41} control_t; 42 43#define ide_request_irq(irq,hand,flg,dev,id) do {} while (0) 44#define ide_free_irq(irq,dev_id) do {} while (0) 45#define ide_check_region(from,extent) do {} while (0) 46#define ide_request_region(from,extent,name) do {} while (0) 47#define ide_release_region(from,extent) do {} while (0) 48 49/* 50 * The following are not needed for the non-m68k ports 51 */ 52#define ide_ack_intr(hwif) (1) 53#define ide_fix_driveid(id) do {} while (0) 54#define ide_release_lock(lock) do {} while (0) 55#define ide_get_lock(lock, hdlr, data) do {} while (0) 56 57/* 58 * We always use the new IDE port registering, 59 * so these are fixed here. 60 */ 61#define ide_default_io_base(i) ((ide_ioreg_t)0) 62#define ide_default_irq(b) (0) 63 64#endif /* __KERNEL__ */ 65 66#endif /* __ASMARM_IDE_H */ 67