1 /*
2  * mediabay.h: definitions for using the media bay
3  * on PowerBook 3400 and similar computers.
4  *
5  * Copyright (C) 1997 Paul Mackerras.
6  */
7 #ifndef _PPC_MEDIABAY_H
8 #define _PPC_MEDIABAY_H
9 
10 #ifdef __KERNEL__
11 
12 #define MB_FD		0	/* media bay contains floppy drive (automatic eject ?) */
13 #define MB_FD1		1	/* media bay contains floppy drive (manual eject ?) */
14 #define MB_SOUND	2	/* sound device ? */
15 #define MB_CD		3	/* media bay contains ATA drive such as CD or ZIP */
16 #define MB_PCI		5	/* media bay contains a PCI device */
17 #define MB_POWER	6	/* media bay contains a Power device (???) */
18 #define MB_NO		7	/* media bay contains nothing */
19 
20 /* Number of bays in the machine or 0 */
21 extern int media_bay_count;
22 
23 #ifdef CONFIG_BLK_DEV_IDE_PMAC
24 #include <linux/ide.h>
25 
26 int check_media_bay_by_base(unsigned long base, int what);
27 /* called by IDE PMAC host driver to register IDE controller for media bay */
28 int media_bay_set_ide_infos(struct device_node *which_bay, unsigned long base,
29 			    int irq, ide_hwif_t *hwif);
30 
31 int check_media_bay(struct device_node *which_bay, int what);
32 
33 #else
34 
35 static inline int check_media_bay(struct device_node *which_bay, int what)
36 {
37 	return -ENODEV;
38 }
39 
40 #endif
41 
42 #endif /* __KERNEL__ */
43 #endif /* _PPC_MEDIABAY_H */
44