File: /usr/src/linux/include/asm-arm/ide.h

1     /*
2      *  linux/include/asm-arm/ide.h
3      *
4      *  Copyright (C) 1994-1996  Linus Torvalds & authors
5      */
6     
7     /*
8      *  This file contains the i386 architecture specific IDE code.
9      */
10     
11     #ifndef __ASMARM_IDE_H
12     #define __ASMARM_IDE_H
13     
14     #ifdef __KERNEL__
15     
16     #ifndef MAX_HWIFS
17     #define MAX_HWIFS	4
18     #endif
19     
20     #define ide__sti()	__sti()
21     
22     #include <asm/arch/ide.h>
23     
24     typedef union {
25     	unsigned all			: 8;	/* all of the bits together */
26     	struct {
27     		unsigned head		: 4;	/* always zeros here */
28     		unsigned unit		: 1;	/* drive select number, 0 or 1 */
29     		unsigned bit5		: 1;	/* always 1 */
30     		unsigned lba		: 1;	/* using LBA instead of CHS */
31     		unsigned bit7		: 1;	/* always 1 */
32     	} b;
33     	} select_t;
34     
35     #define ide_request_irq(irq,hand,flg,dev,id)	request_irq((irq),(hand),(flg),(dev),(id))
36     #define ide_free_irq(irq,dev_id)		free_irq((irq), (dev_id))
37     #define ide_check_region(from,extent)		check_region((from), (extent))
38     #define ide_request_region(from,extent,name)	request_region((from), (extent), (name))
39     #define ide_release_region(from,extent)		release_region((from), (extent))
40     
41     /*
42      * The following are not needed for the non-m68k ports
43      */
44     #define ide_ack_intr(hwif)		(1)
45     #define ide_fix_driveid(id)		do {} while (0)
46     #define ide_release_lock(lock)		do {} while (0)
47     #define ide_get_lock(lock, hdlr, data)	do {} while (0)
48     
49     /*
50      * We always use the new IDE port registering,
51      * so these are fixed here.
52      */
53     #define ide_default_io_base(i)		((ide_ioreg_t)0)
54     #define ide_default_irq(b)		(0)
55     
56     #endif /* __KERNEL__ */
57     
58     #endif /* __ASMARM_IDE_H */
59