298 lines
11 KiB
C#
298 lines
11 KiB
C#
|
namespace Microsoft.Singularity.Drivers
|
||
|
{
|
||
|
public sealed class Atux
|
||
|
{
|
||
|
//
|
||
|
// Offsets from page 146.
|
||
|
//
|
||
|
struct Offset
|
||
|
{
|
||
|
// ATU Vendor ID Register - ATUVID [p.150]
|
||
|
const int ATUVID = 0x000;
|
||
|
|
||
|
// ATU Device ID Register - ATUDID [p.150]
|
||
|
const int ATUDID = 0x002;
|
||
|
|
||
|
// ATU Command Register - ATUCMD [p.151]
|
||
|
const int ATUCMD = 0x004;
|
||
|
|
||
|
// ATU Status Register - ATUSR [p.152]
|
||
|
const int ATUSR = 0x006;
|
||
|
|
||
|
// ATU Revision ID Register - ATURID [p.154]
|
||
|
const int ATURID = 0x008;
|
||
|
|
||
|
// ATU Class Code Register - ATUCCR [p.154]
|
||
|
const int ATUCCR = 0x009;
|
||
|
|
||
|
// ATU Cacheline Size Register - ATUCLSR [p.155]
|
||
|
const int ATUCLSR = 0x00C;
|
||
|
|
||
|
// ATU Latency Timer Register - ATULT [p.155]
|
||
|
const int ATULT = 0x00D;
|
||
|
|
||
|
// ATU Header Type Register - ATUHTR [p.156]
|
||
|
const int ATUHTR = 0x00E;
|
||
|
|
||
|
// ATU BIST Register - ATUBISTR [p.157]
|
||
|
const int ATUBISTR = 0x00F;
|
||
|
|
||
|
// Inbound ATU Base Address Register 0 - IABAR0 [p.158]
|
||
|
const int IABAR0 = 0x010;
|
||
|
|
||
|
// Inbound ATU Upper Base Address Register 0 - IAUBAR0 [p.159]
|
||
|
const int IAUBAR0 = 0x014;
|
||
|
|
||
|
// Inbound ATU Base Address Register 1 - IABAR1 [p.160]
|
||
|
const int IABAR1 = 0x018;
|
||
|
|
||
|
// Inbound ATU Upper Base Address Register 1 - IAUBAR1 [p.161]
|
||
|
const int IAUBAR1 = 0x01C;
|
||
|
|
||
|
// Inbound ATU Base Address Register 2 - IABAR2 [p.162]
|
||
|
const int IABAR2 = 0x020;
|
||
|
|
||
|
// Inbound ATU Upper Base Address Register 2 - IAUBAR2 [p.163]
|
||
|
const int IAUBAR2 = 0x024;
|
||
|
|
||
|
// ATU Subsystem Vendor ID Register - ASVIR [p.164]
|
||
|
const int ASVIR = 0x02C;
|
||
|
|
||
|
// ATU Subsystem ID Register - ASIR [p.164]
|
||
|
const int ASIR = 0x02E;
|
||
|
|
||
|
// Expansion ROM Base Address Register - ERBAR [p.165]
|
||
|
const int ERBAR = 0x030;
|
||
|
|
||
|
// ATU Capabilities Pointer Register - ATU_Cap_Ptr [p.166]
|
||
|
const int ATU_Cap_Ptr = 0x034;
|
||
|
|
||
|
// ATU Interrupt Line Register - ATUILR [p.169]
|
||
|
const int ATUILR = 0x03C;
|
||
|
|
||
|
// ATU Interrupt Pin Register - ATUIPR [p.170]
|
||
|
const int ATUIPR = 0x03D;
|
||
|
|
||
|
// ATU Minimum Grant Register - ATUMGNT [p.170]
|
||
|
const int ATUMGNT = 0x03E;
|
||
|
|
||
|
// ATU Maximum Latency Register - ATUMLAT [p.171]
|
||
|
const int ATUMLAT = 0x03F;
|
||
|
|
||
|
// Inbound ATU Limit Register 0 - IALR0 [p.172]
|
||
|
const int IALR0 = 0x040;
|
||
|
|
||
|
// Inbound ATU Translate Value Register 0 - IATVR0 [p.173]
|
||
|
const int IATVR0 = 0x044;
|
||
|
|
||
|
// Inbound ATU Upper Translate Value Register 0 - IAUTVR0 [p.173]
|
||
|
const int IAUTVR0 = 0x048;
|
||
|
|
||
|
// Inbound ATU Limit Register 1 - IALR1 [p.174]
|
||
|
const int IALR1 = 0x04C;
|
||
|
|
||
|
// Inbound ATU Translate Value Register 1 - IATVR1 [p.175]
|
||
|
const int IATVR1 = 0x050;
|
||
|
|
||
|
// Inbound ATU Upper Translate Value Register 1 - IAUTVR1 [p.175]
|
||
|
const int IAUTVR1 = 0x054;
|
||
|
|
||
|
// Inbound ATU Limit Register 2 - IALR2 [p.176]
|
||
|
const int IALR2 = 0x058;
|
||
|
|
||
|
// Inbound ATU Translate Value Register 2 - IATVR2 [p.177]
|
||
|
const int IATVR2 = 0x05C;
|
||
|
|
||
|
// Inbound ATU Upper Translate Value Register 2 - IAUTVR2 [p.177]
|
||
|
const int IAUTVR2 = 0x060;
|
||
|
|
||
|
// Expansion ROM Limit Register - ERLR [p.178]
|
||
|
const int ERLR = 0x064;
|
||
|
|
||
|
// Expansion ROM Translate Value Register - ERTVR [p.179]
|
||
|
const int ERTVR = 0x068;
|
||
|
|
||
|
// Expansion ROM Upper Translate Value Register - ERUTVR [p.179]
|
||
|
const int ERUTVR = 0x06C;
|
||
|
|
||
|
// ATU Configuration Register - ATUCR [p.180]
|
||
|
const int ATUCR = 0x070;
|
||
|
|
||
|
// PCI Configuration and Status Register - PCSR [p.181]
|
||
|
const int PCSR = 0x074;
|
||
|
|
||
|
// ATU Interrupt Status Register - ATUISR [p.184]
|
||
|
const int ATUISR = 0x078;
|
||
|
|
||
|
// ATU Interrupt Mask Register - ATUIMR [p.186]
|
||
|
const int ATUIMR = 0x07C;
|
||
|
|
||
|
// VPD Capability Identifier Register - VPD_Cap_ID [p.188]
|
||
|
const int VPD_Cap_ID = 0x090;
|
||
|
|
||
|
// VPD Next Item Pointer Register - VPD_Next_Item_Ptr [p.188]
|
||
|
const int VPD_Next_Item_Ptr = 0x091;
|
||
|
|
||
|
// VPD Address Register - VPDAR [p.189]
|
||
|
const int VPDAR = 0x092;
|
||
|
|
||
|
// VPD Data Register - VPDDR [p.189]
|
||
|
const int VPDDR = 0x094;
|
||
|
|
||
|
// PM Capability Identifier Register - PM_Cap_ID [p.190]
|
||
|
const int PM_Cap_ID = 0x098;
|
||
|
|
||
|
// PM Next Item Pointer Register - PM_Next_Item_Ptr [p.190]
|
||
|
const int PM_Next_Item_Ptr = 0x099;
|
||
|
|
||
|
// ATU Power Management Capabilities Register - APMCR [p.191]
|
||
|
const int APMCR = 0x09A;
|
||
|
|
||
|
// ATU Power Management Control/Status Register - APMCSR [p.192]
|
||
|
const int APMCSR = 0x09C;
|
||
|
|
||
|
// MSI Capability Identifier Register - Cap_ID [p.452]a
|
||
|
const int Cap_ID = 0x0A0;
|
||
|
|
||
|
// MSI Next Item Pointer Register - MSI_Next_Ptr [p.453]
|
||
|
const int MSI_Next_Ptr = 0x0A1;
|
||
|
|
||
|
// Message Control Register - Message_Control [p.454]
|
||
|
const int Message_Control = 0x0A2;
|
||
|
|
||
|
// Message Address Register - Message_Address [p.455]
|
||
|
const int Message_Address = 0x0A4;
|
||
|
|
||
|
// Message Upper Address Register - Message_Upper_Address [p.456]
|
||
|
const int Message_Upper_Address = 0x0A8;
|
||
|
|
||
|
// Message Data Register - Message_Data [p.457]
|
||
|
const int Message_Data = 0x0AC;
|
||
|
|
||
|
// MSI-X Capability Identifier Register - MSI_X_Cap_ID [p.458]
|
||
|
const int MSI_X_Cap_ID = 0x0B0;
|
||
|
|
||
|
// MSI-X Next Item Pointer Register - MSI_X_Next_Item_Ptr [p.459]
|
||
|
const int MSI_X_Next_Item_Ptr = 0x0B1;
|
||
|
|
||
|
// MSI-X Message Control Register - MSI_X_MCR [p.460]
|
||
|
const int MSI_X_MCR = 0x0B2;
|
||
|
|
||
|
// MSI-X Table Offset Register - MSI_X_Table_Offset [p.461]
|
||
|
const int MSI_X_Table_Offset = 0x0B4;
|
||
|
|
||
|
// MSI-X Pending Bit Array Offset Register - MSI_X_PBA_Offset [p.462]
|
||
|
const int MSI_X_PBA_Offset = 0x0B8;
|
||
|
|
||
|
// ATU Scratch Pad Register - ATUSPR [p.193]
|
||
|
const int ATUSPR = 0x0CC;
|
||
|
|
||
|
// PCI-X Capability Identifier Register - PCI_X_Cap_ID [p.193]
|
||
|
const int PCI_X_Cap_ID = 0x0D0;
|
||
|
|
||
|
// PCI-X Next Item Pointer Register - PCI_X_Next_Item_Ptr [p.194]
|
||
|
const int PCI_X_Next_Item_Ptr = 0x0D1;
|
||
|
|
||
|
// PCI-X Command Register - PCIXCMD [p.194]
|
||
|
const int PCIXCMD = 0x0D2;
|
||
|
|
||
|
// PCI-X Status Register - PCIXSR [p.196]
|
||
|
const int PCIXSR = 0x0D4;
|
||
|
|
||
|
// ECC Control and Status Register - ECCCSR [p.198]
|
||
|
const int ECCCSR = 0x0D8;
|
||
|
|
||
|
// ECC First Address Register - ECCFAR [p.201]
|
||
|
const int ECCFAR = 0x0DC;
|
||
|
|
||
|
// ECC Second Address Register - ECCSAR [p.202]
|
||
|
const int ECCSAR = 0x0E0;
|
||
|
|
||
|
// ECC Attribute Register - ECCAR [p.203]
|
||
|
const int ECCAR = 0x0E4;
|
||
|
|
||
|
// CompactPCI Hot-Swap Capability ID Register - HS_CAPID [p.203]
|
||
|
const int HS_CAPID = 0x0E8;
|
||
|
|
||
|
// Offset EDh: Next Item Pointer - HS_NXTP [p.204]
|
||
|
const int HS_NXTP = 0x0E9;
|
||
|
|
||
|
// Hot-Swap Control/Status Register - HS_CNTRL [p.205]
|
||
|
const int HS_CNTRL = 0x0EA;
|
||
|
|
||
|
// Inbound ATU Base Address Register 3 - IABAR3 [p.207]
|
||
|
const int IABAR3 = 0x200;
|
||
|
|
||
|
// Inbound ATU Upper Base Address Register 3 - IAUBAR3 [p.208]
|
||
|
const int IAUBAR3 = 0x204;
|
||
|
|
||
|
// Inbound ATU Limit Register 3 - IALR3 [p.209]
|
||
|
const int IALR3 = 0x208;
|
||
|
|
||
|
// Inbound ATU Translate Value Register 3 - IATVR3 [p.210]
|
||
|
const int IATVR3 = 0x20C;
|
||
|
|
||
|
// Inbound ATU Upper Translate Value Register 3 - IAUTVR3 [p.210]
|
||
|
const int IAUTVR3 = 0x210;
|
||
|
|
||
|
// Outbound I/O Base Address Register - OIOBAR [p.211]
|
||
|
const int OIOBAR = 0x300;
|
||
|
|
||
|
// Outbound I/O Window Translate Value Register - OIOWTVR [p.212]
|
||
|
const int OIOWTVR = 0x304;
|
||
|
|
||
|
// Outbound Upper Memory Window Base Address Register 0 - OUMBAR0 [p.213]
|
||
|
const int OUMBAR0 = 0x308;
|
||
|
|
||
|
// Outbound Upper 32-bit Memory Window Translate Value Register 0 - OUMWTVR0 [p.214]
|
||
|
const int OUMWTVR0 = 0x30C;
|
||
|
|
||
|
// Outbound Upper Memory Window Base Address Register 1 - OUMBAR1 [p.215]
|
||
|
const int OUMBAR1 = 0x310;
|
||
|
|
||
|
// Outbound Upper 32-bit Memory Window Translate Value Register 1 - OUMWTVR1 [p.216]
|
||
|
const int OUMWTVR1 = 0x314;
|
||
|
|
||
|
// Outbound Upper Memory Window Base Address Register 2 - OUMBAR2 [p.217]
|
||
|
const int OUMBAR2 = 0x318;
|
||
|
|
||
|
// Outbound Upper 32-bit Memory Window Translate Value Register 2 - OUMWTVR2 [p.218]
|
||
|
const int OUMWTVR2 = 0x31C;
|
||
|
|
||
|
// Outbound Upper Memory Window Base Address Register 3 - OUMBAR3 [p.219]
|
||
|
const int OUMBAR3 = 0x320;
|
||
|
|
||
|
// Outbound Upper 32-bit Memory Window Translate Value Register 3 - OUMWTVR3 [p.220]
|
||
|
const int OUMWTVR3 = 0x324;
|
||
|
|
||
|
// Outbound Configuration Cycle Address Register - OCCAR [p.221]
|
||
|
const int OCCAR = 0x330;
|
||
|
|
||
|
// Outbound Configuration Cycle Data Register - OCCDR [p.222]
|
||
|
const int OCCDR = 0x334;
|
||
|
|
||
|
// Outbound Configuration Cycle Function Number - OCCFN [p.222]
|
||
|
const int OCCFN = 0x338;
|
||
|
|
||
|
// PCI Interface Error Control and Status Register - PIECSR [p.223]
|
||
|
const int PIECSR = 0x380;
|
||
|
|
||
|
// PCI Interface Error Address Register - PCIEAR [p.224]
|
||
|
const int PCIEAR = 0x384;
|
||
|
|
||
|
// PCI Interface Error Upper Address Register - PCIEUAR [p.225]
|
||
|
const int PCIEUAR = 0x388;
|
||
|
|
||
|
// PCI Interface Error Context Address Register - PCIECAR [p.226]
|
||
|
const int PCIECAR = 0x38C;
|
||
|
|
||
|
// Internal Arbiter Control Register - IACR [p.227]
|
||
|
const int IACR = 0x394;
|
||
|
|
||
|
// Multi-Transaction Timer - MTT [p.228]
|
||
|
const int MTT = 0x398;
|
||
|
|
||
|
}
|
||
|
}
|
||
|
}
|