mirror of https://github.com/lianthony/NT4.0
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
149 lines
4.0 KiB
149 lines
4.0 KiB
/*++ BUILD Version: 0005 // Increment this if a change has global effects
|
|
|
|
Copyright (c) 1990 Microsoft Corporation
|
|
|
|
Module Name:
|
|
|
|
dtidef.h
|
|
|
|
Abstract:
|
|
|
|
This module is the header file that describes hardware addresses
|
|
for the Jazz system.
|
|
|
|
Author:
|
|
|
|
David N. Cutler (davec) 26-Nov-1990
|
|
|
|
Revision History:
|
|
|
|
--*/
|
|
|
|
#ifndef _DTIDEF_
|
|
#define _DTIDEF_
|
|
|
|
#include "uniflex.h"
|
|
#include "apoc.h"
|
|
#include "platform.h"
|
|
|
|
//
|
|
// Define the data structure returned by a private vector firmware function
|
|
// that contains a set of system parameters.
|
|
//
|
|
|
|
typedef struct PLATFORM_SPECIFIC_EXTENSION {
|
|
UCHAR PciInterruptToIsaIrq[12];
|
|
ULONG PciVideoExpansionRomAddress;
|
|
PVOID AdvancedSetupInfo;
|
|
} PLATFORM_SPECIFIC_EXTENSION;
|
|
|
|
typedef struct TREB13SETUPINFO {
|
|
ULONG Reserved1:16;
|
|
ULONG Drive0Type:4;
|
|
ULONG Drive1Type:4;
|
|
ULONG PciInterruptToIsaIrq0:4;
|
|
ULONG PciInterruptToIsaIrq8:4;
|
|
ULONG PciInterruptToIsaIrq1:4;
|
|
ULONG PciInterruptToIsaIrq9:4;
|
|
ULONG PciInterruptToIsaIrq2:4;
|
|
ULONG PciInterruptToIsaIrq10:4;
|
|
ULONG PciInterruptToIsaIrq3:4;
|
|
ULONG PciInterruptToIsaIrq11:4;
|
|
ULONG Lpt1Irq:8;
|
|
ULONG Lpt2Irq:8;
|
|
ULONG Lpt3Irq:8;
|
|
ULONG SerialMousePort:8;
|
|
ULONG EnableAmd1:1;
|
|
ULONG EnableAmd2:1;
|
|
ULONG EnableX86Emulator:1;
|
|
ULONG Reserved2:5;
|
|
ULONG LoadEmbeddedScsiDrivers:1;
|
|
ULONG Reserved3:7;
|
|
ULONG LoadSoftScsiDrivers:1;
|
|
ULONG LoadFlashScsiDrivers:1;
|
|
ULONG Reserved4:6;
|
|
ULONG EnableDelays:1;
|
|
ULONG Reserved5:7;
|
|
ULONG ResetDelay:8;
|
|
ULONG DetectDelay:8;
|
|
ULONG EnableIdeDriver:1;
|
|
ULONG Reserved6:7;
|
|
} TREB13SETUPINFO;
|
|
|
|
typedef struct TREB20SETUPINFO {
|
|
ULONG Isa0Drive0Type:4;
|
|
ULONG Isa0Drive1Type:4;
|
|
ULONG Isa1Drive0Type:4;
|
|
ULONG Isa1Drive1Type:4;
|
|
ULONG SerialMousePort:8;
|
|
ULONG Isa0Lpt1Irq:8;
|
|
ULONG Isa0Lpt2Irq:8;
|
|
ULONG Isa0Lpt3Irq:8;
|
|
ULONG Isa1Lpt1Irq:8;
|
|
ULONG Isa1Lpt2Irq:8;
|
|
ULONG Isa1Lpt3Irq:8;
|
|
ULONG EnableNcr:1;
|
|
ULONG EnableX86Emulator:1;
|
|
ULONG LoadEmbeddedScsiDrivers:1;
|
|
ULONG LoadSoftScsiDrivers:1;
|
|
ULONG LoadFlashScsiDrivers:1;
|
|
ULONG EnableDelays:1;
|
|
ULONG EnableIdeDriver:1;
|
|
ULONG Reserved1:1;
|
|
ULONG ResetDelay:8;
|
|
ULONG DetectDelay:8;
|
|
ULONG PciInterruptToIsaIrq0:4;
|
|
ULONG PciInterruptToIsaIrq1:4;
|
|
ULONG PciInterruptToIsaIrq2:4;
|
|
ULONG PciInterruptToIsaIrq3:4;
|
|
ULONG PciInterruptToIsaIrq4:4;
|
|
ULONG PciInterruptToIsaIrq5:4;
|
|
ULONG PciInterruptToIsaIrq6:4;
|
|
ULONG PciInterruptToIsaIrq7:4;
|
|
ULONG PciInterruptToIsaIrq8:4;
|
|
ULONG PciInterruptToIsaIrq9:4;
|
|
ULONG NcrTermLow:1;
|
|
ULONG NcrTermHigh:1;
|
|
ULONG Reserved2:6;
|
|
} TREB20SETUPINFO;
|
|
|
|
//
|
|
// Define the data structure used to describe all bus translations.
|
|
//
|
|
|
|
typedef struct PLATFORM_RANGE_LIST {
|
|
INTERFACE_TYPE InterfaceType;
|
|
ULONG BusNumber;
|
|
ADDRESS_SPACE_TYPE AddressType;
|
|
ULONG SystemAddressSpace;
|
|
LONGLONG SystemBase;
|
|
LONGLONG Base;
|
|
LONGLONG Limit;
|
|
} PLATFORM_RANGE_LIST, *PPLATFORM_RANGE_LIST;
|
|
|
|
//
|
|
// Define clock constants and clock levels.
|
|
//
|
|
|
|
#define UNIFLEX_CLOCK_LEVEL UNIFLEX_EISA_VECTORS+0 // Interval clock level is on ISA IRQ 0
|
|
#define UNIFLEX_ISA_DEVICE_LEVEL 5 // ISA bus interrupt level
|
|
#define UNIFLEX_EISA_DEVICE_LEVEL 5 // EISA bus interrupt level
|
|
#define UNIFLEX_PCI_DEVICE_LEVEL 5 // PCI bus interrupt level
|
|
#define UNIFLEX_CLOCK2_LEVEL UNIFLEX_CLOCK_LEVEL
|
|
|
|
//
|
|
// Define EISA device interrupt vectors.
|
|
//
|
|
|
|
#define UNIFLEX_ISA_VECTORS 48
|
|
#define UNIFLEX_MAXIMUM_ISA_VECTOR (15 + UNIFLEX_ISA_VECTORS)
|
|
#define UNIFLEX_EISA_VECTORS 48
|
|
#define UNIFLEX_MAXIMUM_EISA_VECTOR (15 + UNIFLEX_EISA_VECTORS)
|
|
#define UNIFLEX_ISA1_VECTORS 64
|
|
#define UNIFLEX_MAXIMUM_ISA1_VECTOR (15 + UNIFLEX_ISA1_VECTORS)
|
|
#define UNIFLEX_EISA1_VECTORS 64
|
|
#define UNIFLEX_MAXIMUM_EISA1_VECTOR (15 + UNIFLEX_EISA1_VECTORS)
|
|
#define UNIFLEX_PCI_VECTORS 100
|
|
#define UNIFLEX_MAXIMUM_PCI_VECTOR (15 + UNIFLEX_PCI_VECTORS)
|
|
|
|
#endif // _DTIDEF_
|