HOWTO: Add PCMCIA Support to a Windows NT Device DriverLast reviewed: February 17, 1998Article ID: Q170084 |
The information in this article applies to:
SUMMARYPCMCIA support under Windows NT is in the form of basic PC Card enabling. PCMCIA features like dynamic configuration and hot-plugging are currently unsupported. Basically, a developer writes an ISA device driver and insures that the PC Card is configured correctly (either via the CIS tuple information or the registry overrides described below). The ISA driver checks the registry to see if the card is configured and gets the resources from the resource list created by PCMCIA.SYS. For an explanation of how to mask specific IRQ's to PCMCIA devices, please see the following article in the Microsoft Knowledge Base:
ARTICLE-ID: Q168303 TITLE : Masking IRQ's for PCMCIA DevicesQ168303 also includes detailed information about the InterruptMask value of the PCMCIA registry key that controls IRQ masking.
MORE INFORMATIONFor PCMCIA.SYS to recognize the card, there must first be an entry in the PCMCIA database. This database is stored in the Windows NT registry. In the following discussion, note that HKLM indicates HKEY_LOCAL_MACHINE and CCS indicates CurrentControlSet. WARNING: Modifying the registry can cause the system to become unstable and may cause the system to become unusable (requiring a reinstallation). Do not modify the registry unless you understand the implications of any changes you are making.
Add PC Card Information to the PCMCIA Database
HKLM\SYSTEM\CCS\Services\Pcmcia\DataBase\XYZ Corp\XYZ device Value Name Data Type Description ------------------------- --------- ------------------------------- CcrBase REG_DWORD Configuration register base PortWidth16 REG_DWORD 1=16 bit accesses to I/O space Driver REG_SZ Driver name CardMemorySize REG_DWORD [0] Card memory length CardMemorySize_1 REG_DWORD [1] Card memory length AttributeMemorySize REG_DWORD [0] Attribute memory length AttributeMemorySize_1 REG_DWORD [1] Attribute memory lengthPossible override values for: HKLM\SYSTEM\CCS\Services\Xyz1\Parameters Value Name Data Type Description ------------------------- --------- ------------------------------- Pcmcia REG_DWORD 1=enable this configuration InterruptNumber REG_DWORD Interrupt value IoBaseAddress REG_DWORD [0] I/O port base address IoLength REG_DWORD [0] I/O port length IoBaseAddress_1 REG_DWORD [1] I/O port base address IoLength_1 REG_DWORD [1] I/O port length MemoryMappedBaseAddress REG_DWORD [0] Host base memory MemoryMappedSize REG_DWORD [0] Host base memory length PCCARDMemoryWindowOffset REG_DWORD [0] Card base (host base offset) Address_16 REG_DWORD 1=16-bit memory access MemoryMappedBaseAddress_1 REG_DWORD [1] Host base memory MemoryMappedSize_1 REG_DWORD [1] Host base memory length PCCARDMemoryWindowOffset_1 REG_DWORD [1] Card base (host base offset) Address1_16 REG_DWORD 1=16-bit memory access MemoryMappedBaseAddress_2 REG_DWORD [2] Host base memory MemoryMappedSize_2 REG_DWORD [2] Host base memory length PCCARDMemoryWindowOffset_2 REG_DWORD [2] Card base (host base offset) Address2_16 REG_DWORD 1=16-bit memory access MemoryMappedBaseAddress_3 REG_DWORD [3] Host base memory MemoryMappedSize_3 REG_DWORD [3] Host base memory length PCCARDMemoryWindowOffset_3 REG_DWORD [3] Card base (host base offset) Address3_16 REG_DWORD 1=16-bit memory access PCCARDAttributeMemoryAddress REG_DWORD [0] Attribute memory PCCARDAttributeMemorySize REG_DWORD [0] Attribute memory length PCCARDAttributeMemoryOffset REG_DWORD [0] Attribute memory offset AttributeMemory_16 REG_DWORD 1=16-bit memory accessPCCARDAttributeMemoryAddress_1 REG_DWORD [1] Attribute memory PCCARDAttributeMemorySize_1 REG_DWORD [1] Attribute memory lengthPCCARDAttributeMemoryOffset_1 REG_DWORD [1] Attribute memory offset AttributeMemory1_16 REG_DWORD 1=16-bit memory access ModemFunction REG_DWORD 1=multifunction modem device PCCARDReadyInterrupt REG_DWORD * Not implemented * Keywords : NTDDKKMode Version : WINNT:3.51,4.0; Platform : NT WINDOWS Issue type : kbhowto |
================================================================================
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |