[ros-dev] Loading failure of rtl8139.sys driver.

Gge gerard.gatineau at laposte.net
Tue Oct 19 09:19:06 CEST 2004


Filip Navara wrote:
> Hartmut Birr wrote:
> 
>> Hi,
>>
>> the rtl8139 driver is a pci based driver. This driver needs more registry
>> keys. A half year ago, I've used this registry entries for a realtec 8139
>> based nic:
> 
>> It doesn't work with the current cvs. The start and type values are 
>> possible
>> also incorrect. The value "9" from the key "SlotNumber" is a hex value 
>> which
>> must point to the correct pci slot. The best way to get all this
>> informations is a NT 4.0 or W2K installation.
>>  
>>
> It doesn't work anymore because I changed the registry layout to match 
> the one of W2K. There must be a "Driver" value under the Enum key 
> pointing to "{4D36E972-E325-11CE-BFC1-08002BE10318}\xxxx" (where xxxx is 
> unique number for the network adapter; for now 0000 is used for PCnet 
> and 0001 for NE2K, but later this should be assigned by class 
> installer). The "Parameters" key (without subkeys!) is moved to 
> "SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}\xxxx" 
> and "Linkage" key is moved to 
> "SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}\xxxx\Linkage". 
> Finally the SlotNumber needn't be changed because NDIS uses the value 
> obtained from PCI bus driver.
> 
>> An other problem is the loading of the real ne2000.sys driver. This is 
>> not a
>> boot load driver but ros trys to load it like a boot load driver (after
>> pci.sys).
>>
> Every enumerated driver is first tried to load when it's found 
> (typically before \SystemRoot exists) and then retried after 
> "\SystemRoot" is created. It's not really optimal, but it works.
> 
>> Ros trys it a second time after loading ndis. The start value of
>> ne2000 is 4, this means do not load. if I change this value to 3, 
>> driver is
>> loaded at the second point successful, but it doesn't find a nic.  
>>
> It's intentionally marked as DON'T LOAD in the registry because it would 
> be loaded on every computer even when no NE2K card is present. The only 
> way to address it is to get ISAPNP bus driver working, but that will 
> still not help us on non-PNP ISA...
> 
> Regards,
> Filip
> _______________________________________________

Hi Filip ,

I have updated the Relatek8138 Nic entry of the hivesys.inf file
according your indications (I hope !)

; RTL8139 PCI NIC Driver
HKLM,"SYSTEM\CurrentControlSet\Services\Rtl8139","ErrorControl",0x00010001,0x00000000
HKLM,"SYSTEM\CurrentControlSet\Services\Rtl8139","Group",0x00000000,"NDIS"
HKLM,"SYSTEM\CurrentControlSet\Services\Rtl8139","ImagePath",0x00020000,"system32\drivers\RTL8139.SYS"
HKLM,"SYSTEM\CurrentControlSet\Services\Rtl8139","Start",0x00010001,0x00000003
HKLM,"SYSTEM\CurrentControlSet\Services\Rtl8139","Type",0x00010001,0x00000001
HKLM,"SYSTEM\CurrentControlSet\Services\Rtl8139\Linkage","Bind",0x00010000,"\Device\Rtl81391"
HKLM,"SYSTEM\CurrentControlSet\Services\Rtl8139\Linkage","Export",0x00010000,"\Device\Rtl81391"
HKLM,"SYSTEM\CurrentControlSet\Services\Rtl8139\Linkage","Route",0x00010000,"Rtl81391"
HKLM,"SYSTEM\CurrentControlSet\Services\Rtl8139\Enum","0",0x00000000,"PCI\VEN_10EC&DEV_8139&SUBSYS_81391186&REV_10\0815"
HKLM,"SYSTEM\CurrentControlSet\Services\Rtl8139\Enum","Count",0x00010001,0x00000001
HKLM,"SYSTEM\CurrentControlSet\Services\Rtl8139\Enum","NextInstance",0x00010001,0x00000001
HKLM,"SYSTEM\CurrentControlSet\Services\Rtl8139\Enum\0002","Driver",0x00000000,"{4D36E972-E325-11CE-BFC1-08002BE10318}\0001"
HKLM,"SYSTEM\CurrentControlSet\Enum\PCI\VEN_10EC&DEV_8139&SUBSYS_81391186&REV_10\0815","Service",0x00000000,"Rtl8139"
HKLM,"SYSTEM\CurrentControlSet\Enum\PCI\VEN_10EC&DEV_8139&SUBSYS_81391186&REV_10\0815","Class",0x00000000,"Net"
HKLM,"SYSTEM\CurrentControlSet\Enum\PCI\VEN_10EC&DEV_8139&SUBSYS_81391186&REV_10\0815","ClassGUID",0x00000000,"{4D36E972-E325-11CE-BFC1-08002BE10318}"

; RTL8139 PCI NIC PCI Adapter 1
HKLM,"SYSTEM\CurrentControlSet\Services\Rtl81391","ErrorControl",0x00010001,0x00000001
HKLM,"SYSTEM\CurrentControlSet\Services\Rtl81391","Start",0x00010001,0x00000003
HKLM,"SYSTEM\CurrentControlSet\Services\Rtl81391","Type",0x00010001,0x00000004
HKLM,"SYSTEM\CurrentControlSet\Services\Rtl81391\Linkage","Bind",0x00010000,"\Device\Rtl81391"
HKLM,"SYSTEM\CurrentControlSet\Services\Rtl81391\Linkage","Export",0x00010000,"\Device\Rtl81391"
HKLM,"SYSTEM\CurrentControlSet\Services\Rtl81391\Linkage","Route",0x00010000,"Rtl81391"
HKLM,"SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}\0002,"SlotNumber",0x00000000,"9"
HKLM,"SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}\0002"Parameters\Tcpip","DefaultGateway",0x00010000,"192.168.1.0"
HKLM,"SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}\0002"Parameters\Tcpip","IPAddress",0x00010000,"192.168.1.5"
HKLM,"SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}\0002"Parameters\Tcpip","SubnetMask",0x00010000,"255.255.255.0"

The RTL8139.SYS driver does not load as indicated in the attached debug
traces .
The hivesys entry is attached also with the nic driver.

May be the hivesys entry is not correct . I would be pleased if you can 
have a look (or somebody else) ?

Best regards
Gerard





More information about the Ros-dev mailing list