[ltp] Re: Another one bites the dust

Friedemann Baitinger linux-thinkpad@www.bm-soft.com
Tue, 20 Mar 2001 23:18:07 +0100 (CET)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Tue, 20 Mar 2001 phil@netroedge.com wrote:

> 
> This seems like sound advice to me.
> 
> Starting with 2.3.x and (now) into 2.4.x, we are trying to unify the
> I2C code into a single set of functions.  You might be surprised to
> see just how much I2C code duplication there is in the kernel drivers! 
> It's especially nasty since most are derived from Simon Vogl's
> original I2C project, and so often use his original symbol names which
> conflict and cause nasty crashes and hangs.  The point being, that
> disabling I2C support is a short-term solution until something gets
> unified which Thinkpads depend on (if anything I2C related), then
> you'll need to turn it on again... 
> 
> Thinkpads are the only animal I know of, though, that are sensitive
> enough to being rendered completely inoperable after an install.  I'm
> still not certain what the event is which causes the trouble.  I'd
> guess that turing I2C off is the safest thing to do, then not using
> any of the Lm_sensor modules, and lastly (the riskiest) is to not run
> sensors-detect (which touches every device on the I2C bus[ses]).  We
> try to make the package as safe as we can.  In fact, there is a module
> to access EEPROM's, but it purposely is read-only eventhough r/w
> functionaliy is fairly trivial to add. 

I agree with you with respect to your statement that disabling I2C in
the kernel config is just a quick-fix but not a solution. I am currently
running a T21 with all the I2C options _enabled_ and there is no problem
with the system. However I have carefully avoided to mess with the
lm_sensors package on this machine. I could dig out my old writeups but
as far as I remember, running the 'sensors-detect' is the last thing I
did.

What makes it really dangerous is that you don't know that the machine
is broken until you reboot (actually power off then power on) the
machine. It could be days after using lm_sensors till you notice that
the machine is dead. Probably hard to always correlate the problem with
'lm_sensors'.

I'd like to suggest that those people who experienced this problem try
to do a detailed writeup what happened and post the result here such
that IBM can reproduce the problem in their labs.

I can give you a few details I remember: What really happens is that
some data in an I2C attached SEEPROM is wiped out or made inconsistent
when lm_sensors and/or sensors-detect is run. This data is called VPD
(Vital Product Data) and it consists of the serial numbers of all
components of the machine. If this data is corrupt the machine purposly
refuses to boot because sombebody might have stolen the ThinkPad and is
now tampering with the hardware in order to access the data on it.

In essence, the machine is not physically broken, however, it needs to
be sent in to IBM for repair. If IBM had all the relevant VPD data on
file then the SEEPROM could be reinitialized quickly. Should it turn out
that this data is not available for whatever reason (like for my
machine) then essentially all 'active' hardware like the printed circuit
boards need to be replaced.

- -- 
Friedemann Baitinger      fb@baiti.net       http://baiti.net/fb/
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.1 (GNU/Linux)
Comment: For info see http://www.gnupg.org

iD8DBQE6t9ch8ZparKdkcvIRAnxdAJ9NloNsWQPqcPX92o9ZoJuOtpMFcgCgjDvY
NXnweW0W0vMPyvTqXEwZWsg=
=WWbs
-----END PGP SIGNATURE-----


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