[ltp] Experience from updating RH 6.2 to RH 7.0 on TP 770X

Burt Silverman linux-thinkpad@www.bm-soft.com
Tue, 21 Nov 2000 09:16:58 -0500


>> 1. The line of code in ibmtr.c (approximately line number 1040)
>>                         check_reason = ntohs(readw(ti->sram_virt +
ACA_OFFSET + ACA_RW + WWCR_EVEN));
>>
>> should be changed to
>>                         check_reason = ntohs(readw(ti->mmio + ACA_OFFSET
+ ACA_RW + WWCR_EVEN));

Friedemann Baitinger writes:
>Could this bug be the cause for the "Trasmitter busy"? I haven't applied
>the patch yet but experience with the 2.2.18 driver is that the
>Transmitter busy occurs more frequently than with the previous
>version.

Friedemann:
I don't think this should cause more Transmitter busys. The problem in the
code is that if an adapter check interrupt occurs (meaning that hardware
somewhere isn't perfect, either in the adapter or on the ring), we are then
printing out the wrong check code. So you cannot take the code we print and
go to the TR manual and see what it means, with the current bug. This part
of the code has effectively not changed from the older driver.

One thing that did change is that the code originally would rerun the init
routine. I changed that to run init only once (rather than every time you
open). That is my understanding of how a well structured driver should be
written. The downside is that if your adapter fails to init, you will have
to unload and reload the module (e.g., /etc/rc.d/init.d/pcmcia restart is a
good way). Perhaps this is why you notice more failures.

I'm hoping that your Transmitter busys are just either during startup, or
else a transient during normal operation that doesn't interfere other than
printing a message. The latter could be related to the adapter logging
mechanism, if lots of ring status changes occur quickly -- I'm just
speculating rather than speaking from an actual experience.

Burt

----- The Linux ThinkPad mailing list -----
The linux-thinkpad mailing list home page is at:
http://www.bm-soft.com/~bm/tp_mailing.html