Units
Class Hierarchy
Classes, Interfaces and Objects
Types
Enumerations
Variables
Constants
Functions and Procedures
Identifiers

Class TkdPCINonBridge

Unit

kdpcihdr

Declaration

type TkdPCINonBridge = class(TkdPCIConfig)

Description

Final resource class TkdPCINonBridge models configuration space of normal PCI device (PCI non-bridge). To the series of properties already inherited, this class adds a new one to access the corresponding registers of configuration space specific to non-bridge PCI devices. To observe the overall layout of that part of configuration space see TNonBridge subrecord of TPciCfg record. All concerned properties inherited are made published to accomplish the whole configuration space of normal PCI device.

Hierarchy

TkdPCIConfig > TkdResource

Methods

Overview

Protectedprocedure Notification (AComponent: TComponent; Operation: TOperation); override;
Protectedfunction PreRegisterResource: Boolean; override;

Description

Protectedprocedure Notification (AComponent: TComponent; Operation: TOperation); override;

Notification method is overridden to respond to notification that either one of the address ranges specified via HardwareRange0-HardwareRange5 series of properties or the interrupt specified via Interrupt property is about to be destroyed. It updates all of those properties so that they point to nothing.

Protectedfunction PreRegisterResource: Boolean; override;

PreRegisterResource method is overridden to check that all the address ranges specified via HardwareRange0-HardwareRange5 series of properties as well as the interrupt specified via Interrupt property correspond to hardware configuration.

Properties

Overview

Publishedproperty BaseAddr0: String;
Publishedproperty BaseAddr1: String;
Publishedproperty BaseAddr2: String;
Publishedproperty BaseAddr3: String;
Publishedproperty BaseAddr4: String;
Publishedproperty BaseAddr5: String;
Publishedproperty BIST;
Publishedproperty Bus;
Publishedproperty CacheLineSize;
Publishedproperty CapPtr: String;
Publishedproperty CardBusCIS: String;
Publishedproperty ClassCode;
Publishedproperty CommandReg;
Publishedproperty DeviceId;
Publishedproperty ExpansionROM: String;
Publishedproperty Func;
Publishedproperty HardwareRange0: TkdHWRange;
Publishedproperty HardwareRange1: TkdHWRange;
Publishedproperty HardwareRange2: TkdHWRange;
Publishedproperty HardwareRange3: TkdHWRange;
Publishedproperty HardwareRange4: TkdHWRange;
Publishedproperty HardwareRange5: TkdHWRange;
Publishedproperty HeaderType;
Publishedproperty Interrupt: TkdInterrupt;
Publishedproperty InterruptLine: String;
Publishedproperty InterruptPin: String;
Publishedproperty Latency;
Publishedproperty MaxLatency: String;
Publishedproperty MinGrant: String;
Publishedproperty ProgIf;
Publishedproperty Reg40: String;
Publishedproperty Reg44: String;
Publishedproperty Reg48: String;
Publishedproperty Reg4C: String;
Publishedproperty Reg50: String;
Publishedproperty Reg54: String;
Publishedproperty Reg58: String;
Publishedproperty Reg5C: String;
Publishedproperty Reg60: String;
Publishedproperty Reg64: String;
Publishedproperty Reg68: String;
Publishedproperty Reg6C: String;
Publishedproperty Reg70: String;
Publishedproperty Reg74: String;
Publishedproperty Reg78: String;
Publishedproperty Reg7C: String;
Publishedproperty Reg80: String;
Publishedproperty Reg84: String;
Publishedproperty Reg88: String;
Publishedproperty Reg8C: String;
Publishedproperty Reg90: String;
Publishedproperty Reg94: String;
Publishedproperty Reg98: String;
Publishedproperty Reg9C: String;
Publishedproperty RegA0: String;
Publishedproperty RegA4: String;
Publishedproperty RegA8: String;
Publishedproperty RegAC: String;
Publishedproperty RegB0: String;
Publishedproperty RegB4: String;
Publishedproperty RegB8: String;
Publishedproperty RegBC: String;
Publishedproperty RegC0: String;
Publishedproperty RegC4: String;
Publishedproperty RegC8: String;
Publishedproperty RegCC: String;
Publishedproperty RegD0: String;
Publishedproperty RegD4: String;
Publishedproperty RegD8: String;
Publishedproperty RegDC: String;
Publishedproperty RegE0: String;
Publishedproperty RegE4: String;
Publishedproperty RegE8: String;
Publishedproperty RegEC: String;
Publishedproperty RegF0: String;
Publishedproperty RegF4: String;
Publishedproperty RegF8: String;
Publishedproperty RegFC: String;
Publishedproperty RevisionId;
Publishedproperty Slot;
Publishedproperty StatusReg;
Publishedproperty SubClass;
Publishedproperty SubsystemDeviceID: String;
Publishedproperty SubsystemVendorID: String;
Publishedproperty VendorId;

Description

Publishedproperty BaseAddr0: String;

BaseAddr0 property is an accessor for Base_Address0 register of the configuration space. It is specified as a hexadecimal string.

Publishedproperty BaseAddr1: String;

BaseAddr1 property is an accessor for Base_Address1 register of the configuration space. It is specified as a hexadecimal string.

Publishedproperty BaseAddr2: String;

BaseAddr2 property is an accessor for Base_Address2 register of the configuration space. It is specified as a hexadecimal string.

Publishedproperty BaseAddr3: String;

BaseAddr3 property is an accessor for Base_Address3 register of the configuration space. It is specified as a hexadecimal string.

Publishedproperty BaseAddr4: String;

BaseAddr4 property is an accessor for Base_Address4 register of the configuration space. It is specified as a hexadecimal string.

Publishedproperty BaseAddr5: String;

BaseAddr5 property is an accessor for Base_Address5 register of the configuration space. It is specified as a hexadecimal string.

Publishedproperty BIST;

BIST property is now made published and is an accessor for BIST register of the configuration space. See for syntax: BIST.

Publishedproperty Bus;

Bus property is now made published and specifies the logically vectorized bus number (0-255) the PCI device (the configuration space) is located on. See for syntax: Bus.

Publishedproperty CacheLineSize;

CacheLineSize property is now made published and is an accessor for cacheline_size register of the configuration space. See for syntax: CacheLineSize.

Publishedproperty CapPtr: String;

CapPtr property is an accessor for cap_ptr register of the configuration space. It is specified as a hexadecimal string.

Publishedproperty CardBusCIS: String;

CardBusCIS property is an accessor for CardBus_CIS register of the configuration space. It is specified as a hexadecimal string.

Publishedproperty ClassCode;

ClassCode property is now made published and is an accessor for classcode register of the configuration space. See for syntax: ClassCode.

Publishedproperty CommandReg;

CommandReg property is now made published and is an accessor for command_reg register of the configuration space. See for syntax: CommandReg.

Publishedproperty DeviceId;

DeviceId property is now made published and specifies the device identifier of the PCI device. See for syntax: DeviceId.

Publishedproperty ExpansionROM: String;

ExpansionROM property is an accessor for expansion_ROM register of the configuration space. It is specified as a hexadecimal string.

Publishedproperty Func;

Func property is now made published and specifies the logically vectorized function number (0-7) the PCI device (the configuration space) is located on. See for syntax: Func.

Publishedproperty HardwareRange0: TkdHWRange;

HardwareRange0 property specifies the address range that corresponds to, and models, the first memory or port region of the PCI hardware device. This is an indirect accessor for base_address0 register of the configuration space.

Publishedproperty HardwareRange1: TkdHWRange;

HardwareRange1 property specifies the address range that corresponds to, and models, the second memory or port region of the PCI hardware device. This is an indirect accessor for base_address1 register of the configuration space.

Publishedproperty HardwareRange2: TkdHWRange;

HardwareRange2 property specifies the address range that corresponds to, and models, the third memory or port region of the PCI hardware device. This is an indirect accessor for base_address2 register of the configuration space.

Publishedproperty HardwareRange3: TkdHWRange;

HardwareRange3 property specifies the address range that corresponds to, and models, the fourth memory or port region of the PCI hardware device. This is an indirect accessor for base_address3 register of the configuration space.

Publishedproperty HardwareRange4: TkdHWRange;

HardwareRange4 property specifies the address range that corresponds to, and models, the fifth memory or port region of the PCI hardware device. This is an indirect accessor for base_address4 register of the configuration space.

Publishedproperty HardwareRange5: TkdHWRange;

HardwareRange5 property specifies the address range that corresponds to, and models, the sixth memory or port region of the PCI hardware device. This is an indirect accessor for base_address5 register of the configuration space.

Publishedproperty HeaderType;

HeaderType property is now made published and is an accessor for header_type register of the configuration space. See for syntax: HeaderType.

Publishedproperty Interrupt: TkdInterrupt;

Interrupt property specifies the interrupt that corresponds to, and models, the interrupt of the PCI hardware device. This is an indirect accessor for interrupt_line register of the configuration space.

Publishedproperty InterruptLine: String;

InterruptLine property is an accessor for interrupt_line register of the configuration space. It is specified as a hexadecimal string.

Publishedproperty InterruptPin: String;

InterruptPin property is an accessor for interrupt_pin register of the configuration space. It is specified as a hexadecimal string.

Publishedproperty Latency;

Latency property is now made published and is an accessor for latency register of the configuration space. See for syntax: Latency.

Publishedproperty MaxLatency: String;

MaxLatency property is an accessor for max_latency register of the configuration space. It is specified as a hexadecimal string.

Publishedproperty MinGrant: String;

MinGrant property is an accessor for min_grant register of the configuration space. It is specified as a hexadecimal string.

Publishedproperty ProgIf;

ProgIf property is now made published and is an accessor for progIF register of the configuration space. See for syntax: ProgIf.

Publishedproperty Reg40: String;

Reg40 property is an accessor for the 1st dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty Reg44: String;

Reg44 property is an accessor for the 2nd dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty Reg48: String;

Reg48 property is an accessor for the 3rd dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty Reg4C: String;

Reg4C property is an accessor for the 4th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty Reg50: String;

Reg50 property is an accessor for the 5th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty Reg54: String;

Reg54 property is an accessor for the 6th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty Reg58: String;

Reg58 property is an accessor for the 7th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty Reg5C: String;

Reg5C property is an accessor for the 8th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty Reg60: String;

Reg60 property is an accessor for the 9th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty Reg64: String;

Reg64 property is an accessor for the 10th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty Reg68: String;

Reg68 property is an accessor for the 11th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty Reg6C: String;

Reg6C property is an accessor for the 12th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty Reg70: String;

Reg70 property is an accessor for the 13th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty Reg74: String;

Reg74 property is an accessor for the 14th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty Reg78: String;

Reg78 property is an accessor for the 15th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty Reg7C: String;

Reg7C property is an accessor for the 16th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty Reg80: String;

Reg80 property is an accessor for the 17th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty Reg84: String;

Reg84 property is an accessor for the 18th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty Reg88: String;

Reg88 property is an accessor for the 19th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty Reg8C: String;

Reg8C property is an accessor for the 20th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty Reg90: String;

Reg90 property is an accessor for the 21th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty Reg94: String;

Reg94 property is an accessor for the 22th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty Reg98: String;

Reg98 property is an accessor for the 23th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty Reg9C: String;

Reg9C property is an accessor for the 24th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty RegA0: String;

RegA0 property is an accessor for the 25th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty RegA4: String;

RegA4 property is an accessor for the 26th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty RegA8: String;

RegA8 property is an accessor for the 27th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty RegAC: String;

RegAC property is an accessor for the 28th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty RegB0: String;

RegB0 property is an accessor for the 29th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty RegB4: String;

RegB4 property is an accessor for the 30th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty RegB8: String;

RegB8 property is an accessor for the 31th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty RegBC: String;

RegBC property is an accessor for the 32th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty RegC0: String;

RegC0 property is an accessor for the 33th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty RegC4: String;

RegC4 property is an accessor for the 34th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty RegC8: String;

RegC8 property is an accessor for the 35th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty RegCC: String;

RegCC property is an accessor for the 36th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty RegD0: String;

RegD0 property is an accessor for the 37th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty RegD4: String;

RegD4 property is an accessor for the 38th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty RegD8: String;

RegD8 property is an accessor for the 39th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty RegDC: String;

RegDC property is an accessor for the 40th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty RegE0: String;

RegE0 property is an accessor for the 41th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty RegE4: String;

RegE4 property is an accessor for the 42th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty RegE8: String;

RegE8 property is an accessor for the 43th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty RegEC: String;

RegEC property is an accessor for the 44th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty RegF0: String;

RegF0 property is an accessor for the 45th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty RegF4: String;

RegF4 property is an accessor for the 46th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty RegF8: String;

RegF8 property is an accessor for the 47th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty RegFC: String;

RegFC property is an accessor for the 48th dword register of the configuration space that belongs to device_specific series of registers. It is specified as a hexadecimal string.

Publishedproperty RevisionId;

RevisionId property is now made published and is an accessor for revisionID register of the configuration space. See for syntax: RevisionId.

Publishedproperty Slot;

Slot property is now made published and specifies the logically vectorized slot number (0-31) the PCI device (the configuration space) is located on. See for syntax: Slot.

Publishedproperty StatusReg;

StatusReg property is now made published and is an accessor for status_reg register of the configuration space. See for syntax: StatusReg.

Publishedproperty SubClass;

SubClass property is now made published and is an accessor for subclass register of the configuration space. See for syntax: SubClass.

Publishedproperty SubsystemDeviceID: String;

SubsystemDeviceID property is an accessor for subsystem_deviceID register of the configuration space. It is specified as a hexadecimal string.

Publishedproperty SubsystemVendorID: String;

SubsystemVendorID property is an accessor for subsystem_vendorID register of the configuration space. It is specified as a hexadecimal string.

Publishedproperty VendorId;

VendorId property is now made published and specifies the vendor identifier of the PCI device. See for syntax: VendorId.