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