piix4_pci.h 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
  1. /*
  2. * (C) Copyright 2001
  3. * Denis Peter, MPL AG Switzerland, d.peter@mpl.ch
  4. *
  5. * SPDX-License-Identifier: GPL-2.0+
  6. */
  7. #ifndef _PIIX4_PCI_H
  8. #define _PIIX4_PCI_H
  9. /***************************************************************************
  10. * Defines PIIX4 Config Registers
  11. ****************************************************************************/
  12. /* Function 0 ISA Bridge */
  13. #define PCI_CFG_PIIX4_IORT 0x4C /* 8 bit ISA Recovery Timer Reg (default 0x4D) */
  14. #define PCI_CFG_PIIX4_XBCS 0x4E /* 16 bit XBus Chip select reg (default 0x0003) */
  15. #define PCI_CFG_PIIX4_PIRQC 0x60 /* PCI IRQ Route Register 4 x 8bit (default )*/
  16. #define PCI_CFG_PIIX4_SERIRQ 0x64
  17. #define PCI_CFG_PIIX4_TOM 0x69
  18. #define PCI_CFG_PIIX4_MSTAT 0x6A
  19. #define PCI_CFG_PIIX4_MBDMA 0x76
  20. #define PCI_CFG_PIIX4_APICBS 0x80
  21. #define PCI_CFG_PIIX4_DLC 0x82
  22. #define PCI_CFG_PIIX4_PDMACFG 0x90
  23. #define PCI_CFG_PIIX4_DDMABS 0x92
  24. #define PCI_CFG_PIIX4_GENCFG 0xB0
  25. #define PCI_CFG_PIIX4_RTCCFG 0xCB
  26. /* IO Addresses */
  27. #define PIIX4_ISA_DMA1_CH0BA 0x00
  28. #define PIIX4_ISA_DMA1_CH0CA 0x01
  29. #define PIIX4_ISA_DMA1_CH1BA 0x02
  30. #define PIIX4_ISA_DMA1_CH1CA 0x03
  31. #define PIIX4_ISA_DMA1_CH2BA 0x04
  32. #define PIIX4_ISA_DMA1_CH2CA 0x05
  33. #define PIIX4_ISA_DMA1_CH3BA 0x06
  34. #define PIIX4_ISA_DMA1_CH3CA 0x07
  35. #define PIIX4_ISA_DMA1_CMDST 0x08
  36. #define PIIX4_ISA_DMA1_REQ 0x09
  37. #define PIIX4_ISA_DMA1_WSBM 0x0A
  38. #define PIIX4_ISA_DMA1_CH_MOD 0x0B
  39. #define PIIX4_ISA_DMA1_CLR_PT 0x0C
  40. #define PIIX4_ISA_DMA1_M_CLR 0x0D
  41. #define PIIX4_ISA_DMA1_CLR_M 0x0E
  42. #define PIIX4_ISA_DMA1_RWAMB 0x0F
  43. #define PIIX4_ISA_DMA2_CH0BA 0xC0
  44. #define PIIX4_ISA_DMA2_CH0CA 0xC1
  45. #define PIIX4_ISA_DMA2_CH1BA 0xC2
  46. #define PIIX4_ISA_DMA2_CH1CA 0xC3
  47. #define PIIX4_ISA_DMA2_CH2BA 0xC4
  48. #define PIIX4_ISA_DMA2_CH2CA 0xC5
  49. #define PIIX4_ISA_DMA2_CH3BA 0xC6
  50. #define PIIX4_ISA_DMA2_CH3CA 0xC7
  51. #define PIIX4_ISA_DMA2_CMDST 0xD0
  52. #define PIIX4_ISA_DMA2_REQ 0xD2
  53. #define PIIX4_ISA_DMA2_WSBM 0xD4
  54. #define PIIX4_ISA_DMA2_CH_MOD 0xD6
  55. #define PIIX4_ISA_DMA2_CLR_PT 0xD8
  56. #define PIIX4_ISA_DMA2_M_CLR 0xDA
  57. #define PIIX4_ISA_DMA2_CLR_M 0xDC
  58. #define PIIX4_ISA_DMA2_RWAMB 0xDE
  59. #define PIIX4_ISA_INT1_ICW1 0x20
  60. #define PIIX4_ISA_INT1_OCW2 0x20
  61. #define PIIX4_ISA_INT1_OCW3 0x20
  62. #define PIIX4_ISA_INT1_ICW2 0x21
  63. #define PIIX4_ISA_INT1_ICW3 0x21
  64. #define PIIX4_ISA_INT1_ICW4 0x21
  65. #define PIIX4_ISA_INT1_OCW1 0x21
  66. #define PIIX4_ISA_INT1_ELCR 0x4D0
  67. #define PIIX4_ISA_INT2_ICW1 0xA0
  68. #define PIIX4_ISA_INT2_OCW2 0xA0
  69. #define PIIX4_ISA_INT2_OCW3 0xA0
  70. #define PIIX4_ISA_INT2_ICW2 0xA1
  71. #define PIIX4_ISA_INT2_ICW3 0xA1
  72. #define PIIX4_ISA_INT2_ICW4 0xA1
  73. #define PIIX4_ISA_INT2_OCW1 0xA1
  74. #define PIIX4_ISA_INT2_IMR 0xA1 /* read only */
  75. #define PIIX4_ISA_INT2_ELCR 0x4D1
  76. #define PIIX4_ISA_TMR0_CNT_ST 0x40
  77. #define PIIX4_ISA_TMR1_CNT_ST 0x41
  78. #define PIIX4_ISA_TMR2_CNT_ST 0x42
  79. #define PIIX4_ISA_TMR_TCW 0x43
  80. #define PIIX4_ISA_RST_XBUS 0x60
  81. #define PIIX4_ISA_NMI_CNT_ST 0x61
  82. #define PIIX4_ISA_NMI_ENABLE 0x70
  83. #define PIIX4_ISA_RTC_INDEX 0x70
  84. #define PIIX4_ISA_RTC_DATA 0x71
  85. #define PIIX4_ISA_RTCEXT_IND 0x70
  86. #define PIIX4_ISA_RTCEXT_DATA 0x71
  87. #define PIIX4_ISA_DMA1_CH2LPG 0x81
  88. #define PIIX4_ISA_DMA1_CH3LPG 0x82
  89. #define PIIX4_ISA_DMA1_CH1LPG 0x83
  90. #define PIIX4_ISA_DMA1_CH0LPG 0x87
  91. #define PIIX4_ISA_DMA2_CH2LPG 0x89
  92. #define PIIX4_ISA_DMA2_CH3LPG 0x8A
  93. #define PIIX4_ISA_DMA2_CH1LPG 0x8B
  94. #define PIIX4_ISA_DMA2_LPGRFR 0x8F
  95. #define PIIX4_ISA_PORT_92 0x92
  96. #define PIIX4_ISA_APM_CONTRL 0xB2
  97. #define PIIX4_ISA_APM_STATUS 0xB3
  98. #define PIIX4_ISA_COCPU_ERROR 0xF0
  99. /* Function 1 IDE Controller */
  100. #define PCI_CFG_PIIX4_BMIBA 0x20
  101. #define PCI_CFG_PIIX4_IDETIM 0x40
  102. #define PCI_CFG_PIIX4_SIDETIM 0x44
  103. #define PCI_CFG_PIIX4_UDMACTL 0x48
  104. #define PCI_CFG_PIIX4_UDMATIM 0x4A
  105. /* Function 2 USB Controller */
  106. #define PCI_CFG_PIIX4_SBRNUM 0x60
  107. #define PCI_CFG_PIIX4_LEGSUP 0xC0
  108. /* Function 3 Power Management */
  109. #define PCI_CFG_PIIX4_PMBA 0x40
  110. #define PCI_CFG_PIIX4_CNTA 0x44
  111. #define PCI_CFG_PIIX4_CNTB 0x48
  112. #define PCI_CFG_PIIX4_GPICTL 0x4C
  113. #define PCI_CFG_PIIX4_DEVRESD 0x50
  114. #define PCI_CFG_PIIX4_DEVACTA 0x54
  115. #define PCI_CFG_PIIX4_DEVACTB 0x58
  116. #define PCI_CFG_PIIX4_DEVRESA 0x5C
  117. #define PCI_CFG_PIIX4_DEVRESB 0x60
  118. #define PCI_CFG_PIIX4_DEVRESC 0x64
  119. #define PCI_CFG_PIIX4_DEVRESE 0x68
  120. #define PCI_CFG_PIIX4_DEVRESF 0x6C
  121. #define PCI_CFG_PIIX4_DEVRESG 0x70
  122. #define PCI_CFG_PIIX4_DEVRESH 0x74
  123. #define PCI_CFG_PIIX4_DEVRESI 0x78
  124. #define PCI_CFG_PIIX4_PMMISC 0x80
  125. #define PCI_CFG_PIIX4_SMBBA 0x90
  126. #endif