Plug and Play and Bus Design for Graphics Adapters

The items in this section summarize requirements for Plug and Play and other resource- and bus-related capabilities. The specifications in this section are required for all PC 97 systems.

Note See also the requirement "Graphics operations must use relocatable registers only" earlier in the "Graphics Adapter Basic Features" section.

43. Plug and Play device identifier

Required


The device must have a unique device ID using the format required for its bus. A PCI device must comply with PCI 2.1 requirements and also provide a Subsystem ID and Subsystem Vendor ID, as defined in the "PCI" chapter in Part 3 of this guide.

44. Conflict resolution, VGA compatibility, and extended register

Required


Changing or adding a graphics adapter to the system must not require changing jumpers or switches on either the card or the system board. The system must have a method for automatically relocating the resources used by a graphics adapter on the system board in the case that a graphics adapter expansion card is added to the system. In the event of irreconcilable conflict with other devices on the system, the system must be able to disable one of the adapter in order to prevent the system from stalling.

The system must support the VGA graphics standard for application compatibility and for the Windows clean-boot error-recovery process. If a VGA BIOS exists on the graphics adapter, it must be able to configure its base address to C0000h and one (minimum) alternate address to prevent conflicts.

Extended resources are additional I/O ports, direct-access frame buffers, or data transfer areas on a graphics adapter that use more resources than does standard VGA. The Windows configuration manager must be able to map the resources to avoid conflicts with other system devices. At least one alternate configuration must be provided for each non – VGA display resource in the event of conflict during initial program load (IPL) boot.

The software drivers and VGA BIOS (if used) must be able to use alternate configuration register addresses. The system must be able to disable or relocate VGA resources from C0000h dynamically.

For additional related requirements for multiple monitor support, see the section "Multiple Adapter and Multiple Monitor Support for PC 97" earlier in this chapter.

45. PCI base address registers populated correctly for PCI graphics device

Required


The display driver for Windows 95 queries the actual device to find its register locations and so on. The PCI Base Address Registers must be populated correctly for this information to be correct in the registry.

The use of an IRQ for a video device is not recommended unless it is being physically used by the adapter — the Interrupt Pin Register (3Dh) should be zero (0). Do not request the IRQ for compatibility with the original VGA standard; request the IRQ only if it will be used on the adapter. If you want to allow this IRQ, a jumper or soft-setting utility could be used. If the BIOS configures an IRQ for the device, then Windows 95 will report this IRQ in the registry. Alternatively, the IRQ could be requested by using the INF for the device.

46. Linear packed pixel frame buffer, relocatable above 16 MB

Required


Note For DirectDraw, the graphic adapter's chip set must support linear access to the frame buffer by the host.

Windows 95 is optimized for a graphics adapter with a packed-pixel frame buffer at all supported resolutions. Memory-mapped packed-pixel frame buffers also provide a fast and simple interface between Windows 95 and the graphics adapter. The Windows 95 DIB engine provides a very fast display by writing directly to packed-pixel frame buffers, and this architecture requires that the hardware developer write only a small, simple device driver.

For optimized support with Windows 95, a linear packed-pixel frame buffer is required over a bank-switched frame buffer. Use 32-bit addresses to allow the linear frame buffer to be placed above the 16-MB ISA boundary, which enables a system to be populated with large amounts of RAM.

If memory or other resources conflict with the frame buffer being mapped into a linear address space, the page frame address can be used with minimal degradation of performance.

47. Option ROM supports Display Data Channel DDC 2.0, Level B

Required


This requirement applies for x86-based systems. The option ROM for the graphics adapter must meet current DDC host requirements documented in the Display Data Channel DDC 2.0 specification published by VESA. This standard defines the functions that support the data channel between the graphics adapter and a DDC-compliant monitor.

48. Do not use IRQ 2(9)

Required


Some VGA-compatible adapters support ISA IRQ 2 (PIC interrupt 9) as the hardware interrupt for vertical refresh. This interrupt, which can be used to synchronize updates to VGA registers during vertical refresh, exists mainly for compatibility with EGA-style adapters and is used by few modern graphics adapters. Windows 95 does not use it. Therefore, if IRQ 2(9) capability is included on your graphics adapter (unless you use it during the card initialization), it should power up inactive when power is turned on and should not actively drive the bus.

The adapter must also not claim IRQ 2(9) when enumerating device resources. The Windows resource arbitrator assigns devices to all other IRQs before using IRQ 2(9), so it will most likely remain unused. In this context, IRQ 2(9) refers to the IRQ signal logically mapped to IRQ 2 on the ISA bus (for historical reasons). From a hardware designer's point of view, however, IRQ 9 refers to pin 19 of the slave 8259 PIC.