[+******************************************************************+] [ DAVICOM Semiconductor Inc. ] [ DM9 Series PCI Ethernet Adapter ] [ SROM Format Programming Guide ] [ ] [ (C) Copyright 1997-2000 DAVICOM Semiconductor Inc. ] [ All Rights Reserved. ] [-******************************************************************-] Files Description : =================== \PGSROM\PGSROM.EXE DM9102(A) SROM Programming Program \PGSROM\SROM401.DAT DM9102(A) SROM Format v4.01 Data File \PGSROM\SROM.DAT DM9102(A) SROM Format v3.00 Data File \PGSROM\ADDR.MAX DM9102(A) Maximum Node ID File \PGSROM\ADDR.LOG DM9102(A) Programmed Node ID Log File \PGSROM\SROM.LOG DM9102(A) Programmed SROM Data Log File \PGSROM\DUMP.DAT DM9102(A) Dump/Load SROM Data File \PGSROM\PGSROM.TXT This File. PGSROM Command Line Parameters : ================================ Syntax : PGSROM [/n] [/sx] [/b] [/m] [/i] [/d] [/l] [/txxxxxxxxxxxx] [/vxxx] [/pxx] [/h] /n : Program SROM without WARNING Message /sx : Select the xth adapter to program the EEPROM (s1..s4) /b : Re-input Starting Node ID and re-create SROM data file /m : Re-input SROM v4.01/v3.00 Maximum Node ID to ADDR.MAX file /i : NO Check Increament Node ID by 1 from ADDR.LOG file /d : Dump the SROM data to DUMP.DAT file /l : Load the SROM data from DUMP.DAT file /txxxxxxxxxxxx : Check Trust Card Node ID (xxxxxxxxxxxx) (The Trust Node ID must be 12 characters of 0..F) /vxxx : Program the SROM data of the SROM format vx.xx (v300 or v401) /pxx : Select the adapter type to program the EEPROM (p1..p6, ps1..ps2) p1 : 10/100M Ethernet Adapter (DM9102 or DM9102A) p2 : HomeRun/10/100M Ethernet Adapter (DM9102A+DM9801) p3 : LongRun/10/100M Ethernet Adapter (DM9102A+DM9802) p4 : 1M HomeRun Adapter (DM9801) p5 : 1M LongRun Adapter (DM9802) p6 : 10M Ethernet Adapter (DM9009) (ONLY for SROM Format v4.01) ps1 : Standard External MII PHY Adapter (Specific 01h) ps2 : 10M Half Based Switching Adapter (Specific 02h) /h : Display Help Message (NOTICE: Between Two Parameters MUST be the SPACE character !!) Return code : 0 : Normal Quit Code 1 : Abort Quit Code 2 : No Card Error Code 3 : Broadcast Node ID Error Code (FF FF FF FF FF FF) 4 : Beyond Max. Node ID Error Code 5 : Write SROM Error Code 6 : Null Node ID Error Code (00 00 00 00 00 00) 7 : Trust Node ID Error Code 8 : Can't read EEPROM Error Code 9 : Can't open DUMP.DAT File Error Code P.S.: The following command of the Batch File can be used to get the Return Code : (MUST check ERRORLEVEL from the Maximum Number to the Minimum Number, if the Return Code Number >= RETURN_CODE_NUMBER, goto COMMAND label.) IF ERRORLEVEL RETURN_CODE_NUMBER GOTO COMMAND DM9102(A) SROM Format v4.01 Data Description (SROM401.DAT) : ============================================================ (Modify the value of the following fields to change SROM data, Remove semicolon (;) at the header of line to select function, Added semicolon (;) at the header of line to deselect function) ;********************************************************* ; DM9102(A) SROM Format v4.01 Data File (SROM401.DAT) ; for 10/100M Ethernet Adapter (DM9102 or DM9102A) ;********************************************************* ;************************************************************** ; Modify the value of the following fields to change SROM data ;************************************************************** ;PCI/Sub Vendor/Device ID and Node Address ;========================================= SubVendorID = 02 91 ;Sub_Vendor ID = 0291h SubDeviceID = 82 12 ;Sub_Device ID = 8212h PCIVendorID = 12 82 ;PCI Vendor ID = 1282h PCIDeviceID = 91 02 ;PCI Device ID = 9102h NodeAddress = 00 00 00 00 00 03 ;Specific Adapter Type (00..FF) ;(00 means this is not a specific adapter) ;========================================= SpecAdpType = 00 ;MAC Revision ID (Only used for specific purpose) ;================================================ MACRevID = 00 ;No specific MAC Revision ID (00..FF) ;External PHY Address ;==================== ExtPHYAddr = 01 ;External PHY Address (01..1F) ;Free Threshold Size of Rx FIFO Near Overflow ;for Tx Flow Control (with 32 bytes unit) ;============================================ RxOFThreshold = 00 ;Rx FIFO Free Threshold Size (00..3F) ;Home Networking Noise Level ;=========================== NoiseLevel = 09 ;Home Networking Noise Level (00..FF) ;**************************************************************** ; Remove semicolon (;) at the header of line to select function ; Added semicolon (;) at the header of line to deselect function ;**************************************************************** ;Auto Load Control ;(If enable Auto-load function, must H/W reset PC to take effect) ;================================================================ ;AutoLoadID ;Enable Auto-load PCI Vendor/Device ID AutoLoadPM ;Enable Auto-load Power Management ;(Select one from the following four options) ;============================================ WOLActPulseHigh ;Used WOL# Pulse High Active Mode (1010h) ;WOLActPulseLow ;Used WOL# Pulse Low Active Mode (1011h) ;WOLActLevelHigh ;Used WOL# Level High Active Mode (1110h) ;WOLActLevelLow ;Used WOL# Level Low Active Mode (1111h) ;New Capability Enable (NCE) ;=========================== PMCapability ;Enable Power Management Function ;Power Management Function (PMC) ;(Be meaningful when enable AutoLoadPM) ;====================================== ;PMEClock ;Generate PME# need PCI Clock PMEAuxPower ;PME# need Auxiliary Power ;PMESpecInit ;PME# need specific initialization PMED0 ;Enable to support D0 power state PMED1 ;Enable to support D1 power state PMED2 ;Enable to support D2 power state PMED3Hot ;Enable to support D3(hot) power state PMED3Cold ;Enable to support D3(cold) power state ;Power Management Function (PMF) ;(Be meaningful when enable AutoLoadPM) ;====================================== PMEMagicPkt ;Enable check magic packet PMELinkChg ;Enable check link status change ;PMEPinOut ;Disable PME# pin signal output ;WOLPinOut ;Disable WOL# pin signal output ;(Select one from the following two options) ;=========================================== PMEActPulseLow ;Used PME# Pulse Low Active Mode ;PMEActLevelLow ;Used PME# Level Low Active Mode ;RPL BootROM Boot Mode ;(Select one from the following four options) ;============================================ ;NoRPLROM ;Disable RPL BootROM ;RPLINT18 ;RPL boot from INT 18h RPLINT19 ;RPL boot from INT 19h ;RPLBECV ;RPL boot from BECV sector ;PXE BootROM Boot Mode ;(Select one from the following five options) ;============================================ ;NoPXEROM ;Disable PXE BootROM ;PXEINT18 ;PXE boot from INT 18h PXEINT19 ;PXE boot from INT 19h ;PXEBECV ;PXE boot from BECV sector ;PXERPL ;PXE boot from RPL BootROM ;Adapter Media Capability ;======================== Ether10HalfCap ;Support Ethernet 10M Half-Duplex mode Ether10FullCap ;Support Ethernet 10M Full-Duplex mode Ether100HalfCap ;Support Ethernet 100M Half-Duplex mode Ether100FullCap ;Support Ethernet 100M Full-Duplex mode ;HomeRun1MCap ;Support HomeRun 1M mode ;LongRun1MCap ;Support LongRun 1M mode ;Adapter Selected Media Mode ;=========================== Autodetect ;Auto-detect MII PHY media mode ;(Select one from the following six options when disable Autodetect) ;=================================================================== ;ForceEther10Half ;Forced Ethernet 10M Half-Duplex mode ;ForceEther10Full ;Forced Ethernet 10M Full-Duplex mode ;ForceEther100Half ;Forced Ethernet 100M Half-Duplex mode ;ForceEther100Full ;Forced Ethernet 100M Full-Duplex mode ;ForceHomeRun1M ;Forced HomeRun 1M mode ;ForceLongRun1M ;Forced LongRun 1M mode ;Rx/Tx Flow Control ;================== ;RxFlowCtrl ;Enable Rx Flow Control NoTxFlowCtrl ;Disable Tx Flow Control ;TxFCRxDU ;Enable Tx Flow Control only for Rx Desc. ; Unavailable ;TxFCRxOF ;Enable Tx Flow Control only for Rx FIFO ; Near Overflow ;TxFCRxDUAndOF ;Enable Tx Flow Control for both Rx Desc. ; Unavailable and Rx FIFO Near Overflow ;TxFCRxDUOrOF ;Enable Tx Flow Control for either Rx Desc. ; Unavailable or Rx FIFO Near Overflow ;Virtual LAN ;=========== ;VLAN ;Enable Virtual LAN DM9102(A) SROM Format v3.00 Data Description (SROM.DAT) : ========================================================= (Mark '*' field means that you must modify it, when you run PGSROM.EXE at first time and no SROM.DAT file) SubVendorID = 02 91 ==> Sub-System Vendor ID (0291h) SubDeviceID = 82 12 ==> Sub-System Device ID (8212h) NCE_AutoLoad = 00 00 ==> NCE and Auto_Load_Control PCIVendorID = 12 82 ==> PCI Vendor ID (1282h) PCIDeviceID = 91 02 ==> PCI Device ID (9102h) PMCSR_PMC = 00 00 ==> PMCSR and PMC NodeAddress = 00 00 00 00 00 01 ==> *Ethernet ID (000000000001) SelectedType = 00 08 ==> Selected Connected Type (0800h) GprControl = 80 ==> General Purpose Control (80h) BlockCount = 06 ==> Block Count (6 Blocks) Block0 = 8E 01 01 ==> Block0 Length, Type, PHY Address GPR init = 00 ==> GPR Length PHY reset = 02 80 00 ==> Reset Sequence Length, Data PHY info = 00 78 E0 01 00 50 00 18 ==> Block0 Other Data Block1 = 85 80 00 20 00 40 ==> Block1 Data Block2 = 85 00 00 00 87 00 ==> Block2 Data Block3 = 85 00 01 00 87 00 ==> Block3 Data Block4 = 85 00 04 00 87 00 ==> Block4 Data Block5 = 85 00 05 00 87 00 ==> Block5 Data <<< NOTICE !!! >>> 1. This program supports multi-cards SROM programming that will re-program the EEPROM of ALL PCI Ethernet adapters on your machine and DON'T check the PCI Vendor ID/Device ID of the adapters, so please check by yourself that ONLY THE DM9102 ADAPTERS THAT YOU WANT TO PROGRAM THE EEPROM DATA on your machine, if you have installed other adapters, please Quit this program and Power OFF your machine to remove these adapters. Otherwise, the EEPROM data of these adapters will be overwrited by this program. 2. For DM9102A chip, the PGSROM.EXE will auto-load the new EEPROM content after the EEPROM programmed completely, so you don't need hardware reset the machine to take the change effect. For DM9102A chip, you MUST HARDWARE RESET the machine to take effect the new EEPROM content. 3. You can use the PCIVendorID, PCIDeviceID and NCE_AutoLoad fields to override the DM9 NIC default PCI Vendor ID (1282h) and Device ID (9102h). (When you specify the PCIVendorID and PCIDeviceID fields, the NCE_AutoLoad field MUST set 000Ah to enable the PCI Vendor ID & Device ID Auto-load function, otherwise the setting will be NO MEANING and used default values.) 4. The NodeAddress field can be assigned the First Node Address for programming. After each programming was completed, the programmed Node ID will be output to the ADDR.LOG file, the NodeAddress value will be auto-increased by 1, the Next Node ID will be saved to the SROM.DAT file for next programming. 5. All power management functions are valid only when the PMCapability field enabled. (ONLY for SROM v4.01) 6. The PMCSR_PMC and NCE_AutoLoad fields can be used for Power Management Function. (When you specify the PMCSR_PMC field, the NCE_AutoLoad field MUST set 00A0h to enable the PME/PMC/PMCSR Auto-load function, otherwise the setting will be NO MEANING and used default values.) 7. Enable AutoLoadID function will auto-load PCIVendorID and PCIDeviceID fields to PCI configuration register when hardware reset the system. (ONLY for SROM v4.01) 8. Enable AutoLoadPM function will auto-load PMC and PMF fields to PCI configuration register when hardware reset the system. (ONLY for SROM v4.01) 9. The forced media mode fields are valid only when the Autodetect field disabled. (ONLY for SROM v4.01) 10. In the multi-options field, only the last selected option is valid. (For example, you selected the ForceEther100Half, ForceEther100Full options at the same time, the valid option is ForceEther100Full.) (ONLY for SROM v4.01) 11. The current programmed Node ID must be NOT the Max. Node ID (FF FF FF FF FF FF), otherwise the program will display the ERROR message and Quit the program. 12. The current programmed Node ID must NOT beyond the Max. Node ID in the ADDR.MAX file, otherwise the program will display the ERROR message and Quit the program. 13. Before programming Node ID, the program will check the programmed Node ID from the ADDR.LOG file for avoiding the Node ID Reentry problem. (The Current Node ID from SROM.DAT MUST be increamented by 1 from the Last Node ID from ADDR.LOG) If the Current Node ID from SROM.DAT is NOT increamented by 1 from the Last Node ID from ADDR.LOG, the program will RETRY to program the Current Node ID, you can press <Ctrl>+C keys to break the job then use PGSROM /I to program the Current Node ID or check the SROM.DAT file.) 14. The PGSROM.EXE will compare the Programmed EEPROM Content with the SROM.DAT File Content. If programmed EEPROM failure, it will try to program the EEPROM again using the same SROM.DAT file, if failure again, it will quit the program and return the Write SROM Error Code. 15. Added "/Txxxxxxxxxxxx" parameter to input the Trust Card Node ID, if the Node ID of the current card EEPROM is the same as the Trust Card Node ID, we will know this is the trust card and the program will NOT program the EEPROM of this trust card. (This parameter can be used for the manufacture test wrokstation that there are one trust card and one (or more) test card on the test workstation.) 16. Added "/Pxx" parameter to select the adapter type to program the EEPROM (p1..p6, ps1..ps2) that will configure different SubVendorID value with each adapter type for SROM Format v4.01/v3.00 and configure different Adapter Media Capabilities with each adapter type for SROM Format v4.01. SubVenID MediaCap Adapter Type -------- -------- --------------------------------------------------- 0x0291 0x000F : 10/100M Ethernet Adapter (DM9102 or DM9102A) 0x0198 0x010F : HomeRun/10/100M Ethernet Adapter (DM9102A+DM9801) 0x0298 0x020F : LongRun/10/100M Ethernet Adapter (DM9102A+DM9802) 0x0398 0x0100 : 1M HomeRun Adapter (DM9801) 0x0498 0x0200 : 1M LongRun Adapter (DM9802) 0x0990 0x0001 : 10M Ethernet Adapter (DM9009) (ONLY for SROM v4.01) (DM9009 supports 10M half-duplex and 10M full-duplex capabilities, enabled Auto-load ID function to change the Device ID to 0x9009 and the SubVendor ID to 0x0990) 0x0291 0x000F : Standard External MII PHY Adapter (Specific 01h) 0x0391 0x0001 : 10M Half Based Switching Adapter (Specific 02h) 17. Added to check the programmed ID Block CRC, SROM CRC and SROM Offset 26..125 field data for some PC SDRAM problem. 18. The other SROM field's descriptor can be referred to the DM9102(A) SROM Format Specific v3.00/v4.01. For Example : ============= 1. PGSROM At first time running this program, this command line will prompt you to select the SROM Format Version (v4.01 or v3.00), the adapter type (p1..p7) and input the start Node ID, the Maximum Node ID to create the SROM401.DAT (or SROM.DAT), ADDR.MAX files and create the ADDR.LOG and SROM.LOG files after programming the EEPROM of the all adapters successfully. If it can find the SROM401.DAT (or SROM.DAT) or ADDR.MAX files, it will use the found data files to program the EEPROM. For DM9102A chip, the PGSROM.EXE will auto-load the new EEPROM content after the EEPROM programmed completely, so you don't need hardware reset the machine to take the change effect. For DM9102A chip, you MUST HARDWARE RESET the machine to take effect the new EEPROM content. P.S. : If the program has found both SROM401.DAT and SROM.DAT files, it will use the SROM.DAT file to program the EEPROM, or you can use the "/v401" parameter to select the SROM401.DAT file to program the EEPROM. 2. PGSROM /B /M This command line will prompt you to input the Start Node ID and Maximum Node ID to re-create the SROM401.DAT (or SROM.DAT) and ADDR.MAX files and program the EEPROM with the new SROM data file. 3. PGSROM /N /S1 /V401 /P1 This command line will program the first 10/100M Ethernet Adapter (DM9102 or DM9102A) with the SROM Format v4.01 data, don't display the warning message before programming the EEPROM. 4. PGSROM /S1 /D This command line will dump the EEPROM content of the 1st adapter to the DUMP.DAT file. 5. PGSROM /S2 /L This command line will program the EEPROM of the 2nd adapter from the DUMP.DAT file. <<< End of file >>>Download Driver Pack
After your driver has been downloaded, follow these simple steps to install it.
Expand the archive file (if the download file is in zip or rar format).
If the expanded file has an .exe extension, double click it and follow the installation instructions.
Otherwise, open Device Manager by right-clicking the Start menu and selecting Device Manager.
Find the device and model you want to update in the device list.
Double-click on it to open the Properties dialog box.
From the Properties dialog box, select the Driver tab.
Click the Update Driver button, then follow the instructions.
Very important: You must reboot your system to ensure that any driver updates have taken effect.
For more help, visit our Driver Support section for step-by-step videos on how to install drivers for every file type.