kn03.h 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. /*
  2. * Hardware info about DECstation 5000/2x0 systems (otherwise known as
  3. * 3max+) and DECsystem 5900 systems (otherwise known as bigmax) which
  4. * differ mechanically but are otherwise identical (both are known as
  5. * KN03).
  6. *
  7. * This file is subject to the terms and conditions of the GNU General Public
  8. * License. See the file "COPYING" in the main directory of this archive
  9. * for more details.
  10. *
  11. * Copyright (C) 1995,1996 by Paul M. Antoine, some code and definitions
  12. * are by courtesy of Chris Fraser.
  13. * Copyright (C) 2000, 2002, 2003 Maciej W. Rozycki
  14. */
  15. #ifndef __ASM_MIPS_DEC_KN03_H
  16. #define __ASM_MIPS_DEC_KN03_H
  17. #include <asm/addrspace.h>
  18. #include <asm/dec/ecc.h>
  19. #include <asm/dec/ioasic_addrs.h>
  20. #define KN03_SLOT_BASE KSEG1ADDR(0x1f800000)
  21. /*
  22. * Some port addresses...
  23. */
  24. #define KN03_IOASIC_BASE (KN03_SLOT_BASE + IOASIC_IOCTL) /* I/O ASIC */
  25. #define KN03_RTC_BASE (KN03_SLOT_BASE + IOASIC_TOY) /* RTC */
  26. #define KN03_MCR_BASE (KN03_SLOT_BASE + IOASIC_MCR) /* MCR */
  27. /*
  28. * CPU interrupt bits.
  29. */
  30. #define KN03_CPU_INR_HALT 6 /* HALT button */
  31. #define KN03_CPU_INR_BUS 5 /* memory, I/O bus read/write errors */
  32. #define KN03_CPU_INR_RES_4 4 /* unused */
  33. #define KN03_CPU_INR_RTC 3 /* DS1287 RTC */
  34. #define KN03_CPU_INR_CASCADE 2 /* I/O ASIC cascade */
  35. /*
  36. * I/O ASIC interrupt bits. Star marks denote non-IRQ status bits.
  37. */
  38. #define KN03_IO_INR_3MAXP 15 /* (*) 3max+/bigmax ID */
  39. #define KN03_IO_INR_NVRAM 14 /* (*) NVRAM clear jumper */
  40. #define KN03_IO_INR_TC2 13 /* TURBOchannel slot #2 */
  41. #define KN03_IO_INR_TC1 12 /* TURBOchannel slot #1 */
  42. #define KN03_IO_INR_TC0 11 /* TURBOchannel slot #0 */
  43. #define KN03_IO_INR_NRMOD 10 /* (*) NRMOD manufacturing jumper */
  44. #define KN03_IO_INR_ASC 9 /* ASC (NCR53C94) SCSI */
  45. #define KN03_IO_INR_LANCE 8 /* LANCE (Am7990) Ethernet */
  46. #define KN03_IO_INR_SCC1 7 /* SCC (Z85C30) serial #1 */
  47. #define KN03_IO_INR_SCC0 6 /* SCC (Z85C30) serial #0 */
  48. #define KN03_IO_INR_RTC 5 /* DS1287 RTC */
  49. #define KN03_IO_INR_PSU 4 /* power supply unit warning */
  50. #define KN03_IO_INR_RES_3 3 /* unused */
  51. #define KN03_IO_INR_ASC_DATA 2 /* SCSI data ready (for PIO) */
  52. #define KN03_IO_INR_PBNC 1 /* ~HALT button debouncer */
  53. #define KN03_IO_INR_PBNO 0 /* HALT button debouncer */
  54. /*
  55. * Memory Control Register bits.
  56. */
  57. #define KN03_MCR_RES_16 (0xffff<<16) /* unused */
  58. #define KN03_MCR_DIAGCHK (1<<15) /* diagn/norml ECC reads */
  59. #define KN03_MCR_DIAGGEN (1<<14) /* diagn/norml ECC writes */
  60. #define KN03_MCR_CORRECT (1<<13) /* ECC correct/check */
  61. #define KN03_MCR_RES_11 (0x3<<12) /* unused */
  62. #define KN03_MCR_BNK32M (1<<10) /* 32M/8M stride */
  63. #define KN03_MCR_RES_7 (0x7<<7) /* unused */
  64. #define KN03_MCR_CHECK (0x7f<<0) /* diagnostic check bits */
  65. /*
  66. * I/O ASIC System Support Register bits.
  67. */
  68. #define KN03_IO_SSR_TXDIS1 (1<<14) /* SCC1 transmit disable */
  69. #define KN03_IO_SSR_TXDIS0 (1<<13) /* SCC0 transmit disable */
  70. #define KN03_IO_SSR_RES_12 (1<<12) /* unused */
  71. #define KN03_IO_SSR_LEDS (0xff<<0) /* ~diagnostic LEDs */
  72. #endif /* __ASM_MIPS_DEC_KN03_H */