PROTOCOL.INI Parameter Definitions of the 16-bit NDIS 2.01 MAC Device Drivers (HPFEND.DOS & HPFEND.OS2) for HP DeskDirect 10/100 LAN Adapter This document describes each PROTOCOL.INI parameter that may appear in the [HPFEND] section of PROTOCOL.INI file for each HP LAN cards this driver supports. See the accompanying file \NDIS2\PROTOCOL.INI for examples of [HPFEND] sections within a PROTOCOL.INI file. The only parameter that must be present is the DRIVERNAME. All parameters have default values. A parameter need not be present in PROTOCOL.INI if the default value is satisfactory. Unless stated, parameters are valid for all HP DeskDirect 10/100 LAN cards this driver supports. The HPFEND.DOS and HPFEND.OS2 drivers will search for all HP LAN cards it supports installed in the computer. For a typical client computer with only one card installed, only the DRIVERNAME parameter is needed in the single [HPFEND] section. For computers with multiple HP LAN cards installed, more complex PROTOCOL.INI sections are needed. If more than one HP LAN card of the different bus types (e.g. a PCI and a EISA) are installed in the same computer, use the ADAPTERTYPE keyword used to specify which HP LAN card is to be associated with each [HPFEND] section. Refer to the ADAPTERTYPE descrption below for more details. If more than one HP LAN card of the same bus type (e.g. two PCI cards) are installed on the same computer, the location of each card must be specified in each [HPFEND] section so the driver can associate the each card with the correct section. The parameter used to specify the location of a HP LAN card depends on the card's bus type: - for HP ISA LAN cards, use the IOADDRESS parameter - for HP EISA LAN cards, use the ADAPTERSLOT parameter - for HP PCI LAN cards, use the IOADDRESS parameter Refer to the IOADDRESS and ADAPTERSLOT descriptions below for more details. DRIVERNAME units:[n/a] range:[HPFEND$, HPFEND2$, HPFEND3$, HPFEND4$] default: mandatory Identifies the LAN card driver. Use a unique value from the range indicated for each HP LAN card installed in your computer. If there is more than one HP LAN card installed, use HPFEND$ for the first one, and HPFEND2$ for the second, etc. BUSMASTER units:[n/a] range:[yes, no] default:[yes] This parameter controls the enable/disable state of Bus Master mode for the HP DeskDirect 10/100 LAN PCI bus master adapters only. When BUSMASTER is YES, the driver will use the HP LAN card bus master data transfer mode. If the paramter is NO, then the driver will use the HP LAN card I/O-mapped or memory-mapped data transfer modes. The default is to enable Bus Master mode. For some older PCI machines, one must ensure that the desired PCI slot is bus master capable. If it is not, BUSMASTER should be set to NO. Optionally, the utility setup program HPVGSET can be used to disable bus master mode on the card. This parameter is not supported for drivers prior to version A.02.06. ADAPTERTYPE units:[n/a] range:[ISA or 0, EISA or 1, MCA or 2, PCI or 3] default:[search all types of HP DeskDirect 10/100 LAN cards] This parameter indicates which bus type the driver is to search for an HP DeskDirect 10/100 PCI LAN card. By default, the driver will search all busses for HP DeskDirect 10/100 LAN cards. If multiple cards are found and can't be associated with a unique [HPFEND] section within the PROTOCOL.INI file, the driver will exit with an error message. The meaning of each string is as follows: ADAPTERTYPE = 0 or ISA search for HP DeskDirect 10/100 ISA card only ADAPTERTYPE = 1 or EISA search for HP DeskDirect 10/100 EISA card only ADAPTERTYPE = 3 or PCI search for HP DeskDirect 10/100 PCI I/O space (i.e. 0x400 - 0xFF00) In a computer with multiple bus types (e.g. ISA and PCI) and only one HP LAN card, the ADAPTERTYPE parameter can be used to restrict the driver to search only the bus in which the HP card is installed. In a computer with multiple bus types (e.g. ISA and PCI) and different HP LAN cards, one in each bus (e.g. ISA and PCI), the ADAPTERTYPE parameter can be used to uniquely associate which [HPFEND] section with each card. Version A.02.06 drivers only support the numeric values (e.g. 0-3). Alphabetic names is supported in A.02.05 and versions after A.02.06. IOADDRESS units:[hexadecimal] For ISA = range:[0x100 - 0x3C0] step:[0x40] For EISA = range:[0xZC38, where z is 0x1 - 0xE] For PCI = range:[0x400 - 0xFF00] step:[0x100] default:[search all ISA/EISA I/O addresses or query PCI BIOS] This parameter specifies the base I/O address (i.e. the first address in HPVGSET I/O Address Range) configured on the HP ISA or PCI LAN card. If the card is not at that base I/O address, the driver will exit with an error message. If more than one HP ISA or PCI LAN cards of the same bus type are installed in the computer, this parameter must be present under each [HPFEND] section. This parameter is ignored for HP DeskDirect 10/100 EISA LAN cards. ADAPTERSLOT units:[decimal] For ISA = ignored For EISA = range:[1 - 14] For PCI = range:[0 - 31] default:[search all slots] This parameter specifies the slot number of HP EISA or PCI LAN card in an IBM PC-compatible computer. If the card is not in that slot, the driver will exit with an error message. If more than one HP EISA LAN card is installed in the computer, this parameter must be present under each [HPFEND] section. For the HP PCI LAN cards, this parameter will work only on the computers with PCI BIOS ver 2.1 or later. Use the IOADDRESS parameter, if the computer contains an earlier version of the PCI BIOS. This parameter is ignored for HP ISA LAN cards. This parameter is ignored for the HP DeskDirect 10/100 PCI LAN cards when using driver version A.02.06. It is supported in A.02.05 and versions after A.02.06. INTERRUPT units:[decimal] For ISA = range:[3, 4, 5, 6, 7, 9, 10, 11, 12, 15] For EISA = range:[3, 4, 5, 6, 7, 9, 10, 11, 12, 15] For PCI = ignored default:[read from card] This parameter specifies the interrupt channel (IRQ) to be used by the HP ISA or EISA LAN card. When present, it indicates which interrupt channel the driver should configure the card to generate interrupts. The driver will override the interrupt channel configured by HPVGSET until the computer is rebooted. This parameter is ignored for all HP PCI LAN cards. MEMORYMAPBASE units:[hexadecimal] range:[0xC800, 0xCC00, 0xD000, 0xD400, 0xD800, 0xDC00, 0xE000, 0xE400, 0xE800, 0xEC00] default:[read from the card for ISA and EISA cards or configured by the system BIOS for PCI cards] This parameter specifies the base address of an 8 Kbyte memory block the HP LAN card will use to perform memory-mapped data transfers. When present, it will override the memory map configuration stored on the card by HPVGSET and the driver will use memory-mapped data transfers after verifying the 8 Kbyte block is valid for use. If this memory-map test fails, the driver will use I/O-mapped data transfers instead. When using this parameter, ensure to specify an 8 Kbyte block that will not conflict with BIOS ROMs or other adapters' memory map blocks. With Microsoft operating systems, running the utility MSD is a good method for locating what memory areas are available. NOTE: If the computer has a expanded memory manager (e.g. EMM386.EXE) loaded, the 8 Kbyte block must be excluded. For example, if MEMORYMAPBASE is set to D000, the EMM386 line in CONFIG.SYS should be: DEVICE=EMM386.EXE X=D000-D1FF Refer to the file \TECHNOTE\MEMMAP.TXT on the HP Support Disk and to the user manual for the expanded memory mamager for more information on excluding memory areas. NOTE: If the computer is running Windows 3.0, the following line also needs to be present in the SYSTEM.INI file under the [386Enh] section: EMMExclude=D000-D1FF Please refer to Microsoft Windows User's Manual for detailed information about the use of 'EMMExclude' parameter. MAXHWTRANS units:[decimal] range:[6-40] default:[10] This parameter controls how the HP LAN card onboard memory is partitioned into a transmit queue and a receive ring buffer. The value specifies the number of full-sized transmit packets that can be simultaneously stored in the card's transmit queue. Each transmit packet consumes 1536 bytes. The remaining onboard memory is used as a receive ring buffer. The amount of onboard memory available for each HP LAN card is: HP J2573A ISA = 64 Kbytes HP J2577A EISA = 128 Kbytes HP J2585A PCI = 128 Kbytes HP J2585B PCI = 32 Kbytes For example, if a HP J2585A PCI card was configured with MAXHWTRANS=10, 15,360 bytes would be allocated to the transmit queue and 115,712 (131,072 - 15360) would be allocated for the receive ring buffer. This parameter is ignored starting with A.02.06 and later versions of the driver. MAXMULTICAST units:[decimal] range:[1-50] default:[5] If present, this controls the maximum number of multicast addresses that can be simultaneously stored by the driver. Each address consumes 16 bytes of computer memory. MAXSWTRANS units:[decimal] range:[1-10] default:[2] This parameter sets the maximum number of transmit packets that can be stored in the driver's software queue. Occasionally the HPFEND driver will put a transmit packet in a software queue before sending it to the HP LAN card's onboard transmit queue. If both the onboard transmit queue and the driver software queues are full, the driver will report it is out of transmit resources to any protocol attempting to transmit. Each software queue entry consumes 146 bytes of computer memory. This parameter is ignored starting with A.02.06 and later versions of the driver. MAXICNEST units:[decimal] range:[1-4] default:[1] This parameter controls the interrupt nesting depth of the driver. The value is the number of outstanding NDIS Indication Complete calls that the driver will allow. When the limit is reached the driver will cease processing receive indications until an outstanding Indication Complete has returned. Higher values will use greater amounts of stack space. USEBOOTROM units:[n/a] range:[yes, no] default:[no] This paramter controls the behavior of the driver at the load time. when the HP LAN card has a boot ROM installed. When USEBOOTROM is YES, the driver will defer card initialization until protocol binding time in order to avoid conflicting with the boot ROM downloading process. Also, the driver will not display the card's information when the driver loads. The default is to assume no boot ROM is installed. The driver will initalize the card and display the information about the card's configuration when the driver is loaded. This parameter is ignored in A.02.06 version of the driver. NETADDRESS units:[n/a] range:[n/a] default:[n/a] This parameter controls allows the overide of the Mac layer address. When NETADDRESS is used, the network card will actually use the specified address when transmitting or receiving on the LAN. Extreme care should be used if this option is enabled in that a network address conflict may result. The default is to use the manufacturer programmed address which is supposed to be unique on the LAN.