Hi,
we have a couple of industrial PCs here with Intel PRO/100 controllers
on board. Most of them work fine with the e100, but today I stumbled
over one box that doesn't: Reception works (RX counter increases, ARP
cache gets filled up), but transmission fails (TX counter is also zero).
In contrast, the eepro100 is fine, also Etherboot's driver.
I'm currently on 2.6.17.8, but I don't see any changes up to latest git
that may have positive influence. This is what lspci -v tells about this
piece of hardware:
00:12.0 Ethernet controller: Intel Corporation 8255xER/82551IT Fast
Ethernet Controller (rev 08)
Subsystem: Intel Corporation: Unknown device 1229
Flags: bus master, medium devsel, latency 66, IRQ 10
Memory at fc020000 (32-bit, non-prefetchable) [size=4K]
I/O ports at 1080 [size=64]
Memory at fc000000 (32-bit, non-prefetchable) [size=128K]
Capabilities: [dc] Power Management version 2
And here is the kernel log of e100 with highest debug level when sending
out a few pings while other packets arrive on the network:
e100: Intel(R) PRO/100 Network Driver, 3.5.10-k2-NAPI
e100: Copyright(c) 1999-2005 Intel Corporation
PCI: Found IRQ 10 for device 0000:00:12.0
e100: eth0: e100_probe: addr 0xfc020000, irq 10, MAC addr 00:30:59:01:07:A7
e100: eth0: e100_watchdog: right now = 35470
e100: eth0: e100_watchdog: link up, 100Mbps, full-duplex
e100: eth0: e100_intr: stat_ack = 0x04
e100: eth0: e100_intr: stat_ack = 0x40
e100: eth0: e100_intr: stat_ack = 0x40
e100: eth0: e100_intr: stat_ack = 0x40
e100: eth0: e100_intr: stat_ack = 0x40
e100: eth0: e100_intr: stat_ack = 0x40
e100: eth0: e100_intr: stat_ack = 0x40
e100: eth0: e100_watchdog: right now = 35970
e100: eth0: e100_intr: stat_ack = 0x04
e100: eth0: e100_intr: stat_ack = 0x40
e100: eth0: e100_intr: stat_ack = 0x40
e100: eth0: e100_watchdog: right now = 36470
e100: eth0: e100_intr: stat_ack = 0x04
e100: eth0: e100_intr: stat_ack = 0x40
e100: eth0: e100_watchdog: right now = 36970
e100: eth0: e100_intr: stat_ack = 0x04
e100: eth0: e100_intr: stat_ack = 0x40
e100: eth0: e100_watchdog: right now = 37470
e100: eth0: e100_intr: stat_ack = 0x04
e100: eth0: e100_intr: stat_ack = 0x40
e100: eth0: e100_intr: stat_ack = 0x40
e100: eth0: e100_watchdog: right now = 37970
e100: eth0: e100_intr: stat_ack = 0x04
e100: eth0: e100_watchdog: right now = 38470
e100: eth0: e100_intr: stat_ack = 0x04
e100: eth0: e100_intr: stat_ack = 0x40
e100: eth0: e100_watchdog: right now = 38970
e100: eth0: e100_intr: stat_ack = 0x04
I may find the time one day to debug this at lower levels, but you could
accelerate this process with any pointer where to dig deeper precisely.
Jan
Jan Kiszka wrote:
> Hi,
>
> we have a couple of industrial PCs here with Intel PRO/100 controllers
> on board. Most of them work fine with the e100, but today I stumbled
> over one box that doesn't: Reception works (RX counter increases, ARP
> cache gets filled up), but transmission fails (TX counter is also zero).
please include `ifconfig ethX` and `ethtool -S ethX` after attempting to
transmit using the device.
> In contrast, the eepro100 is fine, also Etherboot's driver.
>
> I'm currently on 2.6.17.8, but I don't see any changes up to latest git
> that may have positive influence. This is what lspci -v tells about this
> piece of hardware:
>
> 00:12.0 Ethernet controller: Intel Corporation 8255xER/82551IT Fast
> Ethernet Controller (rev 08)
> Subsystem: Intel Corporation: Unknown device 1229
> Flags: bus master, medium devsel, latency 66, IRQ 10
> Memory at fc020000 (32-bit, non-prefetchable) [size=4K]
> I/O ports at 1080 [size=64]
> Memory at fc000000 (32-bit, non-prefetchable) [size=128K]
> Capabilities: [dc] Power Management version 2
>
> And here is the kernel log of e100 with highest debug level when sending
> out a few pings while other packets arrive on the network:
>
> e100: Intel(R) PRO/100 Network Driver, 3.5.10-k2-NAPI
> e100: Copyright(c) 1999-2005 Intel Corporation
> PCI: Found IRQ 10 for device 0000:00:12.0
> e100: eth0: e100_probe: addr 0xfc020000, irq 10, MAC addr 00:30:59:01:07:A7
> e100: eth0: e100_watchdog: right now = 35470
> e100: eth0: e100_watchdog: link up, 100Mbps, full-duplex
> e100: eth0: e100_intr: stat_ack = 0x04
> e100: eth0: e100_intr: stat_ack = 0x40
> e100: eth0: e100_intr: stat_ack = 0x40
> e100: eth0: e100_intr: stat_ack = 0x40
> e100: eth0: e100_intr: stat_ack = 0x40
> e100: eth0: e100_intr: stat_ack = 0x40
> e100: eth0: e100_intr: stat_ack = 0x40
> e100: eth0: e100_watchdog: right now = 35970
> e100: eth0: e100_intr: stat_ack = 0x04
> e100: eth0: e100_intr: stat_ack = 0x40
> e100: eth0: e100_intr: stat_ack = 0x40
> e100: eth0: e100_watchdog: right now = 36470
> e100: eth0: e100_intr: stat_ack = 0x04
> e100: eth0: e100_intr: stat_ack = 0x40
> e100: eth0: e100_watchdog: right now = 36970
> e100: eth0: e100_intr: stat_ack = 0x04
> e100: eth0: e100_intr: stat_ack = 0x40
> e100: eth0: e100_watchdog: right now = 37470
> e100: eth0: e100_intr: stat_ack = 0x04
> e100: eth0: e100_intr: stat_ack = 0x40
> e100: eth0: e100_intr: stat_ack = 0x40
> e100: eth0: e100_watchdog: right now = 37970
> e100: eth0: e100_intr: stat_ack = 0x04
> e100: eth0: e100_watchdog: right now = 38470
> e100: eth0: e100_intr: stat_ack = 0x04
> e100: eth0: e100_intr: stat_ack = 0x40
> e100: eth0: e100_watchdog: right now = 38970
> e100: eth0: e100_intr: stat_ack = 0x04
>
> I may find the time one day to debug this at lower levels, but you could
> accelerate this process with any pointer where to dig deeper precisely.
Can you include a full `dmesg` and `lcpci -vv -s 00:12.0` ?
Also you're using 3.5.10-k2, can you try the current git tree version instead?
I can send you the e100.c if wanted.
Auke
Auke Kok wrote:
> Can you include a full `dmesg` and `lcpci -vv -s 00:12.0` ?
>
> Also you're using 3.5.10-k2, can you try the current git tree version
> instead? I can send you the e100.c if wanted.
Yes, please, to make sure that we'll really discuss the same version.
Will then try to collect the additional information on Monday.
Jan