About the 3Com 3c905 driver & how to install packages..

Two things… First, why is the 3c90x driver very flaky? Here’s the
problem… Some times it initializes the card, other times it doesnt.
Usually complains about not being able to determine the media type,
even when given “speed=10” on the command line when reloading io-net. I
tried some of the ideas given in other posts, none worked. It has only
worked twice. Once when I FIRST booted into the graphical part of QNX,
and then ONCE when I shut the machine off completely and booted straight
into QNX… BUT… Even when I did that another time, it didn’t work.
Couldn’t someone copy the initialization code from a linux driver, or at
least study the differences? I have no problems with this card in Win9x,
2000, Linux, *BSD, BeOS, GNU/Hurd(!)… so you get my point.
I would really like to try out QNX seriously… it’s a VERY nicely
put together OS, and VERY fast.

Second… I downloaded the IPFilter package from one of QNX’s staff
webpages… Now, how do I install this? I can’t using Package Manager,
as there’s no place pointing to a local HD… only local CD-ROM… Any
help here would be appreciated, as this machine does Firewalling and NAT.

Please, don’t take this as a major criticism, I really do like QNX, but
a card that’s supposed to be supported… also, my other network card,
based on the DEC 21140 chipset – not even on the web pages as being
supported, as far as I can tell… Please, update your pages too!

Again, thanks for the good work so far.

-Matthew Drobnak

Hi,

What is the full model number of your card?
If it is the 3C905CX-TXM, then it has just been fixed and will be included in the next release of
RTP. If it is not this specific card could you also provide the output to ‘pci -v’.

Regards,

Joe

Matthew Drobnak <mdrobnak@optonline.net> wrote:

Two things… First, why is the 3c90x driver very flaky? Here’s the
problem… Some times it initializes the card, other times it doesnt.
Usually complains about not being able to determine the media type,
even when given “speed=10” on the command line when reloading io-net. I
tried some of the ideas given in other posts, none worked. It has only
worked twice. Once when I FIRST booted into the graphical part of QNX,
and then ONCE when I shut the machine off completely and booted straight
into QNX… BUT… Even when I did that another time, it didn’t work.
Couldn’t someone copy the initialization code from a linux driver, or at
least study the differences? I have no problems with this card in Win9x,
2000, Linux, *BSD, BeOS, GNU/Hurd(!)… so you get my point.
I would really like to try out QNX seriously… it’s a VERY nicely
put together OS, and VERY fast.

Second… I downloaded the IPFilter package from one of QNX’s staff
webpages… Now, how do I install this? I can’t using Package Manager,
as there’s no place pointing to a local HD… only local CD-ROM… Any
help here would be appreciated, as this machine does Firewalling and NAT.

Please, don’t take this as a major criticism, I really do like QNX, but
a card that’s supposed to be supported… also, my other network card,
based on the DEC 21140 chipset – not even on the web pages as being
supported, as far as I can tell… Please, update your pages too!

Again, thanks for the good work so far.

-Matthew Drobnak

Sorry about not getting back sooner, was only able to boot into QNX a
few minutes ago. It is NOT the 3c905C – I’m almost positive it’s
3c905B. (I got it for free from a friend… definately not new… I got
it over a year ago, and it was old then. No wake on lan support. )

Here’s the output of pci -v for my machine:

PCI version = 2.10

Class = Bridge (Host/PCI)
Vendor ID = 1106h, VIA Technologies Inc
Device ID = 691h, VT82C691 Apollo Pro Host Bridge
PCI index = 0h
Class Codes = 060000h
Revision ID = c4h
Bus number = 0
Device number = 0
Function num = 0
Status Reg = a210h
Command Reg = 6h
Header type = 0h Single-function
BIST = 0h Build-in-self-test not supported
Latency Timer = 0h
Cache Line Size= 0h
Subsystem Vendor ID = 1043h
Subsystem ID = 8017h
Max Lat = 0ns
Min Gnt = 0ns
PCI Int Pin = NC
Interrupt line = 0
Capabilities Pointer = a0h
Capability ID = 2h
Capabilities = 20h - 1f000207h
Capability ID = 1h
Capabilities = 2h - 0h

Class = Bridge (PCI/PCI)
Vendor ID = 1106h, VIA Technologies Inc
Device ID = 8598h, VT82C598 Apollo MVP3 PCI-to-PCI Bridge
PCI index = 0h
Class Codes = 060400h
Revision ID = 0h
Bus number = 0
Device number = 1
Function num = 0
Status Reg = 2230h
Command Reg = 7h
Header type = 1h Single-function
BIST = 0h Build-in-self-test not supported
Latency Timer = 0h
Cache Line Size= 0h
Primary Bus Number = 0h
Secondary Bus Number = 1h
Subordinate Bus Number = 1h
Secondary Latency Timer = 0h
I/O Base = e0h
I/O Limit = d0h
Secondary Status = 0h
Memory Base = e1c0h
Memory Limit = e1b0h
Prefetchable Memory Base = e400h
Prefetchable Memory Limit= e3f0h
Prefetchable Base Upper 32 Bits = 0h
Prefetchable Limit Upper 32 Bits = 0h
I/O Base Upper 16 Bits = 0h
I/O Limit Upper 16 Bits = 0h
Bridge Control = 0ns
PCI Int Pin = NC
Interrupt line = 0

Class = Bridge (PCI/ISA)
Vendor ID = 1106h, VIA Technologies Inc
Device ID = 596h, VT82C596 PCI ISA Bridge
PCI index = 0h
Class Codes = 060100h
Revision ID = 23h
Bus number = 0
Device number = 4
Function num = 0
Status Reg = 200h
Command Reg = 87h
Header type = 0h Multi-function
BIST = 0h Build-in-self-test not supported
Latency Timer = 0h
Cache Line Size= 0h
Subsystem Vendor ID = 1043h
Subsystem ID = 8017h
Max Lat = 0ns
Min Gnt = 0ns
PCI Int Pin = NC
Interrupt line = 0

Class = Mass Storage (IDE)
Vendor ID = 1106h, VIA Technologies Inc
Device ID = 571h, VT82C586/686 PCI IDE Controller
PCI index = 0h
Class Codes = 01018ah
Revision ID = 10h
Bus number = 0
Device number = 4
Function num = 1
Status Reg = 290h
Command Reg = 87h
Header type = 0h Single-function
BIST = 0h Build-in-self-test not supported
Latency Timer = 20h
Cache Line Size= 0h
IO Address = d800h length 16 enabled
Max Lat = 0ns
Min Gnt = 0ns
PCI Int Pin = NC
Interrupt line = 0
Capabilities Pointer = c0h
Capability ID = 1h
Capabilities = 2h - 0h

Class = Serial Bus (Universal Serial Bus)
Vendor ID = 1106h, VIA Technologies Inc
Device ID = 3038h, VT83C572 PCI USB Controller
PCI index = 0h
Class Codes = 0c0300h
Revision ID = 11h
Bus number = 0
Device number = 4
Function num = 2
Status Reg = 210h
Command Reg = 17h
Header type = 0h Single-function
BIST = 0h Build-in-self-test not supported
Latency Timer = 20h
Cache Line Size= 8h un-cacheable
IO Address = d400h length 32 enabled
Subsystem Vendor ID = 925h
Subsystem ID = 1234h
Max Lat = 0ns
Min Gnt = 0ns
PCI Int Pin = INT D
Interrupt line = 5
Capabilities Pointer = 80h
Capability ID = 1h
Capabilities = 2h - 0h

Class = Bridge (Host/PCI)
Vendor ID = 1106h, VIA Technologies Inc
Device ID = 3050h, VT82C596 Power Management Controller
PCI index = 0h
Class Codes = 060000h
Revision ID = 30h
Bus number = 0
Device number = 4
Function num = 3
Status Reg = 280h
Command Reg = 0h
Header type = 0h Single-function
BIST = 0h Build-in-self-test not supported
Latency Timer = 0h
Cache Line Size= 0h
Max Lat = 0ns
Min Gnt = 0ns
PCI Int Pin = NC
Interrupt line = 0

Class = Multimedia (Audio)
Vendor ID = 12ebh, Aureal Semiconductor
Device ID = 3h, Unknown Unknown
PCI index = 0h
Class Codes = 040100h
Revision ID = 2h
Bus number = 0
Device number = 9
Function num = 0
Status Reg = 290h
Command Reg = 7h
Header type = 0h Single-function
BIST = 0h Build-in-self-test not supported
Latency Timer = 20h
Cache Line Size= 8h un-cacheable
Mem Address = e1000000h 32bit length 262144 enabled
IO Address = d000h length 8 enabled
IO Address = b800h length 8 enabled
Subsystem Vendor ID = 12ebh
Subsystem ID = 3h
Max Lat = 83ns
Min Gnt = 2ns
PCI Int Pin = INT A
Interrupt line = 5
Capabilities Pointer = dch
Capability ID = 1h
Capabilities = 6422h - 0h

Class = Network (Ethernet)
Vendor ID = 1011h, Digital Equipment Corporation
Device ID = 9h, DC21140 Fast Ethernet Ctrlr
PCI index = 0h
Class Codes = 020000h
Revision ID = 11h
Bus number = 0
Device number = 10
Function num = 0
Status Reg = 280h
Command Reg = 7h
Header type = 0h Single-function
BIST = 0h Build-in-self-test not supported
Latency Timer = 20h
Cache Line Size= 0h
IO Address = b400h length 128 enabled
Mem Address = e0800000h 32bit length 128 enabled
Max Lat = 0ns
Min Gnt = 0ns
PCI Int Pin = INT A
Interrupt line = 5

Class = Network (Ethernet)
Vendor ID = 10b7h, 3Com Corporation
Device ID = 9050h, 3C905-TX Fast Etherlink XL PCI 10/100
PCI index = 0h
Class Codes = 020000h
Revision ID = 0h
Bus number = 0
Device number = 11
Function num = 0
Status Reg = 200h
Command Reg = 7h
Header type = 0h Single-function
BIST = 0h Build-in-self-test not supported
Latency Timer = 20h
Cache Line Size= 0h
IO Address = b000h length 64 enabled
Expansion ROM = ffef0000h length 65536 disabled
Max Lat = 8ns
Min Gnt = 3ns
PCI Int Pin = INT A
Interrupt line = 10

Class = Display (VGA)
Vendor ID = 12d2h, NVidia / SGS Thomson
Device ID = 18h, RIVA 128 Riva 128 2D/3D GUI Accelerator
PCI index = 0h
Class Codes = 030000h
Revision ID = 10h
Bus number = 0
Device number = 12
Function num = 0
Status Reg = 280h
Command Reg = 7h
Header type = 0h Single-function
BIST = 0h Build-in-self-test not supported
Latency Timer = 20h
Cache Line Size= 0h
Mem Address = df000000h 32bit length 16777216 enabled
Mem Address = e2000000h prefetchable 32bit length 16777216 enabled
Subsystem Vendor ID = 1048h
Subsystem ID = c10h
Expansion ROM = e1c00000h length 4194304 disabled
Max Lat = 1ns
Min Gnt = 3ns
PCI Int Pin = INT A
Interrupt line = 11


Also, (of course) it worked when booting into QNX today. It was a
Windows XP → Warm Reboot → Linux → Cold Reboot → QNX.

-Matthew Drobnak

Hardware Support Account wrote:

Hi,

What is the full model number of your card?
If it is the 3C905CX-TXM, then it has just been fixed and will be included in the next release of
RTP. If it is not this specific card could you also provide the output to ‘pci -v’.

Regards,

Joe

Hi,

This card should work with no problems. Slay io-net
and then start the driver verbose and post the output.

io-net -del900 verbose

Regards,

Joe

Matthew Drobnak <mdrobnak@optonline.net> wrote:

Sorry about not getting back sooner, was only able to boot into QNX a
few minutes ago. It is NOT the 3c905C – I’m almost positive it’s
3c905B. (I got it for free from a friend… definately not new… I got
it over a year ago, and it was old then. No wake on lan support. )

Here’s the output of pci -v for my machine:

PCI version = 2.10

Class = Bridge (Host/PCI)
Vendor ID = 1106h, VIA Technologies Inc
Device ID = 691h, VT82C691 Apollo Pro Host Bridge
PCI index = 0h
Class Codes = 060000h
Revision ID = c4h
Bus number = 0
Device number = 0
Function num = 0
Status Reg = a210h
Command Reg = 6h
Header type = 0h Single-function
BIST = 0h Build-in-self-test not supported
Latency Timer = 0h
Cache Line Size= 0h
Subsystem Vendor ID = 1043h
Subsystem ID = 8017h
Max Lat = 0ns
Min Gnt = 0ns
PCI Int Pin = NC
Interrupt line = 0
Capabilities Pointer = a0h
Capability ID = 2h
Capabilities = 20h - 1f000207h
Capability ID = 1h
Capabilities = 2h - 0h

Class = Bridge (PCI/PCI)
Vendor ID = 1106h, VIA Technologies Inc
Device ID = 8598h, VT82C598 Apollo MVP3 PCI-to-PCI Bridge
PCI index = 0h
Class Codes = 060400h
Revision ID = 0h
Bus number = 0
Device number = 1
Function num = 0
Status Reg = 2230h
Command Reg = 7h
Header type = 1h Single-function
BIST = 0h Build-in-self-test not supported
Latency Timer = 0h
Cache Line Size= 0h
Primary Bus Number = 0h
Secondary Bus Number = 1h
Subordinate Bus Number = 1h
Secondary Latency Timer = 0h
I/O Base = e0h
I/O Limit = d0h
Secondary Status = 0h
Memory Base = e1c0h
Memory Limit = e1b0h
Prefetchable Memory Base = e400h
Prefetchable Memory Limit= e3f0h
Prefetchable Base Upper 32 Bits = 0h
Prefetchable Limit Upper 32 Bits = 0h
I/O Base Upper 16 Bits = 0h
I/O Limit Upper 16 Bits = 0h
Bridge Control = 0ns
PCI Int Pin = NC
Interrupt line = 0

Class = Bridge (PCI/ISA)
Vendor ID = 1106h, VIA Technologies Inc
Device ID = 596h, VT82C596 PCI ISA Bridge
PCI index = 0h
Class Codes = 060100h
Revision ID = 23h
Bus number = 0
Device number = 4
Function num = 0
Status Reg = 200h
Command Reg = 87h
Header type = 0h Multi-function
BIST = 0h Build-in-self-test not supported
Latency Timer = 0h
Cache Line Size= 0h
Subsystem Vendor ID = 1043h
Subsystem ID = 8017h
Max Lat = 0ns
Min Gnt = 0ns
PCI Int Pin = NC
Interrupt line = 0

Class = Mass Storage (IDE)
Vendor ID = 1106h, VIA Technologies Inc
Device ID = 571h, VT82C586/686 PCI IDE Controller
PCI index = 0h
Class Codes = 01018ah
Revision ID = 10h
Bus number = 0
Device number = 4
Function num = 1
Status Reg = 290h
Command Reg = 87h
Header type = 0h Single-function
BIST = 0h Build-in-self-test not supported
Latency Timer = 20h
Cache Line Size= 0h
IO Address = d800h length 16 enabled
Max Lat = 0ns
Min Gnt = 0ns
PCI Int Pin = NC
Interrupt line = 0
Capabilities Pointer = c0h
Capability ID = 1h
Capabilities = 2h - 0h

Class = Serial Bus (Universal Serial Bus)
Vendor ID = 1106h, VIA Technologies Inc
Device ID = 3038h, VT83C572 PCI USB Controller
PCI index = 0h
Class Codes = 0c0300h
Revision ID = 11h
Bus number = 0
Device number = 4
Function num = 2
Status Reg = 210h
Command Reg = 17h
Header type = 0h Single-function
BIST = 0h Build-in-self-test not supported
Latency Timer = 20h
Cache Line Size= 8h un-cacheable
IO Address = d400h length 32 enabled
Subsystem Vendor ID = 925h
Subsystem ID = 1234h
Max Lat = 0ns
Min Gnt = 0ns
PCI Int Pin = INT D
Interrupt line = 5
Capabilities Pointer = 80h
Capability ID = 1h
Capabilities = 2h - 0h

Class = Bridge (Host/PCI)
Vendor ID = 1106h, VIA Technologies Inc
Device ID = 3050h, VT82C596 Power Management Controller
PCI index = 0h
Class Codes = 060000h
Revision ID = 30h
Bus number = 0
Device number = 4
Function num = 3
Status Reg = 280h
Command Reg = 0h
Header type = 0h Single-function
BIST = 0h Build-in-self-test not supported
Latency Timer = 0h
Cache Line Size= 0h
Max Lat = 0ns
Min Gnt = 0ns
PCI Int Pin = NC
Interrupt line = 0

Class = Multimedia (Audio)
Vendor ID = 12ebh, Aureal Semiconductor
Device ID = 3h, Unknown Unknown
PCI index = 0h
Class Codes = 040100h
Revision ID = 2h
Bus number = 0
Device number = 9
Function num = 0
Status Reg = 290h
Command Reg = 7h
Header type = 0h Single-function
BIST = 0h Build-in-self-test not supported
Latency Timer = 20h
Cache Line Size= 8h un-cacheable
Mem Address = e1000000h 32bit length 262144 enabled
IO Address = d000h length 8 enabled
IO Address = b800h length 8 enabled
Subsystem Vendor ID = 12ebh
Subsystem ID = 3h
Max Lat = 83ns
Min Gnt = 2ns
PCI Int Pin = INT A
Interrupt line = 5
Capabilities Pointer = dch
Capability ID = 1h
Capabilities = 6422h - 0h

Class = Network (Ethernet)
Vendor ID = 1011h, Digital Equipment Corporation
Device ID = 9h, DC21140 Fast Ethernet Ctrlr
PCI index = 0h
Class Codes = 020000h
Revision ID = 11h
Bus number = 0
Device number = 10
Function num = 0
Status Reg = 280h
Command Reg = 7h
Header type = 0h Single-function
BIST = 0h Build-in-self-test not supported
Latency Timer = 20h
Cache Line Size= 0h
IO Address = b400h length 128 enabled
Mem Address = e0800000h 32bit length 128 enabled
Max Lat = 0ns
Min Gnt = 0ns
PCI Int Pin = INT A
Interrupt line = 5

Class = Network (Ethernet)
Vendor ID = 10b7h, 3Com Corporation
Device ID = 9050h, 3C905-TX Fast Etherlink XL PCI 10/100
PCI index = 0h
Class Codes = 020000h
Revision ID = 0h
Bus number = 0
Device number = 11
Function num = 0
Status Reg = 200h
Command Reg = 7h
Header type = 0h Single-function
BIST = 0h Build-in-self-test not supported
Latency Timer = 20h
Cache Line Size= 0h
IO Address = b000h length 64 enabled
Expansion ROM = ffef0000h length 65536 disabled
Max Lat = 8ns
Min Gnt = 3ns
PCI Int Pin = INT A
Interrupt line = 10

Class = Display (VGA)
Vendor ID = 12d2h, NVidia / SGS Thomson
Device ID = 18h, RIVA 128 Riva 128 2D/3D GUI Accelerator
PCI index = 0h
Class Codes = 030000h
Revision ID = 10h
Bus number = 0
Device number = 12
Function num = 0
Status Reg = 280h
Command Reg = 7h
Header type = 0h Single-function
BIST = 0h Build-in-self-test not supported
Latency Timer = 20h
Cache Line Size= 0h
Mem Address = df000000h 32bit length 16777216 enabled
Mem Address = e2000000h prefetchable 32bit length 16777216 enabled
Subsystem Vendor ID = 1048h
Subsystem ID = c10h
Expansion ROM = e1c00000h length 4194304 disabled
Max Lat = 1ns
Min Gnt = 3ns
PCI Int Pin = INT A
Interrupt line = 11



Also, (of course) it worked when booting into QNX today. It was a
Windows XP → Warm Reboot → Linux → Cold Reboot → QNX.

-Matthew Drobnak

Hardware Support Account wrote:

Hi,

What is the full model number of your card?
If it is the 3C905CX-TXM, then it has just been fixed and will be included in the next release of
RTP. If it is not this specific card could you also provide the output to ‘pci -v’.

Regards,

Joe

Hardware Support Account wrote:


What is the full model number of your card?
If it is the 3C905CX-TXM, then it has just been fixed and will be included
in the next release of
RTP.

Is there any way to receive a patch sooner? I have 25 machines, all with
that card, and they need to work, or I have to replace all the cards.

If there is no patch, how much longer till the next release?

Dana


Dana Echtner \ Real-Time Systems Administrator
dana@ece.concordia.ca / ECE, Concordia University, Montreal, Canada

rw-rw-rw-: The file protection of the beast