mac_baboon.h 960 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. /*
  2. * Definitions for the "Baboon" custom IC on the PowerBook 190.
  3. */
  4. #define BABOON_BASE (0x50F1A000) /* same as IDE controller base */
  5. #ifndef __ASSEMBLY__
  6. struct baboon {
  7. char pad1[208]; /* generic IDE registers, not used here */
  8. short mb_control; /* Control register:
  9. * bit 5 : slot 2 power control
  10. * bit 6 : slot 1 power control
  11. */
  12. char pad2[2];
  13. short mb_status; /* (0xD4) media bay status register:
  14. *
  15. * bit 0: ????
  16. * bit 1: IDE interrupt active?
  17. * bit 2: bay status, 0 = full, 1 = empty
  18. * bit 3: ????
  19. */
  20. char pad3[2]; /* (0xD6) not used */
  21. short mb_ifr; /* (0xD8) media bay interrupt flags register:
  22. *
  23. * bit 0: ????
  24. * bit 1: IDE controller interrupt
  25. * bit 2: media bay status change interrupt
  26. */
  27. };
  28. extern int baboon_present;
  29. extern void baboon_register_interrupts(void);
  30. extern void baboon_irq_enable(int);
  31. extern void baboon_irq_disable(int);
  32. #endif /* __ASSEMBLY **/