Public Types |
enum | SmallTags {
PlugAndPlayVersionNumber = 0x1,
LogicalDeviceID = 0x2,
CompatibleDeviceID = 0x3,
IRQFormat = 0x4,
DMAFormat = 0x5,
StartDependentFunctions = 0x6,
EndDependentFunctions = 0x7,
IOPortDescriptor = 0x8,
FixedLocationIOPortDescriptor = 0x9,
SmallVendorDefined = 0xE,
EndTag = 0xF
} |
enum | LargeTags {
MemoryRangeDescriptor = 0x1,
IdentifierStringANSI = 0x2,
IdentifierStringUNICODE = 0x3,
LargeVendorDefined = 0x4,
MemoryRange32Descriptor = 0x5,
FixedLocationMemoryRangeDescriptor = 0x6
} |
enum | DependentFunctionConfig { PreferredDependentConfiguration = 0x0,
AcceptableDependentConfiguration = 0x1,
SubOptimalDependentConfiguration = 0x2
} |
enum | { IRQFormatInfo_HighTrueEdgeSensitive = 0x1,
IRQFormatInfo_LowTrueEdgeSensitive = 0x2,
IRQFormatInfo_HighTrueLevelSensitive = 0x4,
IRQFormatInfo_LowTrueLevelSensitive = 0x8
} |
enum | { DMATransferType_8bitOnly = 0,
DMATransferType_8_and_16bit = 1,
DMATransferType_16bitOnly = 2
} |
enum | { DMASpeedSupported_Compat = 0,
DMASpeedSupported_TypeA = 1,
DMASpeedSupported_TypeB = 2,
DMASpeedSupported_TypeF = 3
} |
Public Member Functions |
void | checksum_ident () |
virtual void | config (Bitu val) |
virtual void | wakecsn (Bitu val) |
virtual void | select_logical_device (Bitu val) |
virtual void | on_pnp_key () |
virtual uint8_t | read (Bitu addr) |
virtual void | write (Bitu addr, Bitu val) |
virtual bool | alloc (size_t sz) |
void | write_begin_SMALLTAG (const ISAPnPDevice::SmallTags stag, unsigned char len) |
void | write_begin_LARGETAG (const ISAPnPDevice::LargeTags stag, unsigned int len) |
void | write_nstring (const char *str, const size_t l) |
void | write_byte (const unsigned char c) |
void | begin_write_res () |
void | end_write_res () |
void | write_END () |
void | write_ISAPnP_version (unsigned char major, unsigned char minor, unsigned char vendor) |
void | write_Identifier_String (const char *str) |
void | write_Logical_Device_ID (const char c1, const char c2, const char c3, const char c4, const char c5, const char c6, const char c7) |
void | write_Compatible_Device_ID (const char c1, const char c2, const char c3, const char c4, const char c5, const char c6, const char c7) |
void | write_Device_ID (const char c1, const char c2, const char c3, const char c4, const char c5, const char c6, const char c7) |
void | write_Dependent_Function_Start (const ISAPnPDevice::DependentFunctionConfig cfg, const bool force=false) |
void | write_IRQ_Format (const uint16_t IRQ_mask, const unsigned char IRQ_signal_type=0) |
void | write_DMA_Format (const uint8_t DMA_mask, const unsigned char transfer_type_preference, const bool is_bus_master, const bool byte_mode, const bool word_mode, const unsigned char speed_supported) |
void | write_IO_Port (const uint16_t min_port, const uint16_t max_port, const uint8_t count, const uint8_t alignment=1, const bool full16bitdecode=true) |
void | write_End_Dependent_Functions () |
Static Public Member Functions |
static uint16_t | irq2mask (const int IRQ) |
static uint16_t | irq2mask (const int a, const int b) |
static uint16_t | irq2mask (const int a, const int b, const int c) |
static uint16_t | irq2mask (const int a, const int b, const int c, const int d) |
static uint16_t | irq2mask (const int a, const int b, const int c, const int d, const int e) |
static uint16_t | dma2mask (const int DMA) |
static uint16_t | dma2mask (const int a, const int b) |
static uint16_t | dma2mask (const int a, const int b, const int c) |
static uint16_t | dma2mask (const int a, const int b, const int c, const int d) |
static uint16_t | dma2mask (const int a, const int b, const int c, const int d, const int e) |
Public Attributes |
unsigned char | CSN = 0 |
unsigned char | logical_device = 0 |
unsigned char | ident [9] |
unsigned char | ident_bp = 0 |
unsigned char | ident_2nd = 0 |
unsigned char | resource_ident = 0 |
unsigned char * | resource_data = NULL |
size_t | resource_data_len = 0 |
unsigned int | resource_data_pos = 0 |
size_t | alloc_write = 0 |
unsigned char * | alloc_res = NULL |
size_t | alloc_sz = 0 |
Definition at line 204 of file bios.h.