mediabay.h 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. /*
  3. * mediabay.h: definitions for using the media bay
  4. * on PowerBook 3400 and similar computers.
  5. *
  6. * Copyright (C) 1997 Paul Mackerras.
  7. */
  8. #ifndef _PPC_MEDIABAY_H
  9. #define _PPC_MEDIABAY_H
  10. #ifdef __KERNEL__
  11. #define MB_FD 0 /* media bay contains floppy drive (automatic eject ?) */
  12. #define MB_FD1 1 /* media bay contains floppy drive (manual eject ?) */
  13. #define MB_SOUND 2 /* sound device ? */
  14. #define MB_CD 3 /* media bay contains ATA drive such as CD or ZIP */
  15. #define MB_PCI 5 /* media bay contains a PCI device */
  16. #define MB_POWER 6 /* media bay contains a Power device (???) */
  17. #define MB_NO 7 /* media bay contains nothing */
  18. struct macio_dev;
  19. #ifdef CONFIG_PMAC_MEDIABAY
  20. /* Check the content type of the bay, returns MB_NO if the bay is still
  21. * transitionning
  22. */
  23. extern int check_media_bay(struct macio_dev *bay);
  24. /* The ATA driver uses the calls below to temporarily hold on the
  25. * media bay callbacks while initializing the interface
  26. */
  27. extern void lock_media_bay(struct macio_dev *bay);
  28. extern void unlock_media_bay(struct macio_dev *bay);
  29. #else
  30. static inline int check_media_bay(struct macio_dev *bay)
  31. {
  32. return MB_NO;
  33. }
  34. static inline void lock_media_bay(struct macio_dev *bay) { }
  35. static inline void unlock_media_bay(struct macio_dev *bay) { }
  36. #endif
  37. #endif /* __KERNEL__ */
  38. #endif /* _PPC_MEDIABAY_H */