[ltp] 770X Error codes?

Friedemann Baitinger linux-thinkpad@www.bm-soft.com
Wed, 19 Jul 2000 22:02:52 +0200 (CEST)


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

I think it is time for an update on the subject....

On Sat, 15 Jul 2000, Fabrice Bellet wrote:

> Hello Friedmann,
> 
> On Fri, Jul 14, 2000 at 11:37:02PM +0200, Friedemann Baitinger wrote:
> > my 770X just broke down on me reporting error codes 188 and 189 on
> > boot. Does anybody know what these error codes mean? I have searched the
> > Internet but haven't found a reference to these error codes anywhere.
> 
> Did you play with lm_sensors by any chance ? and more precisely
> with the eeprom reading modules provided with lm_sensors ?


Yes, that is exactly what I did. I haven't done anything which I'd
consider dangerous. Just installed the i2c device drivers and ran the
userspace 'sensors-detect'. I didn't try anything that would _write_ to
the SEEPROM. Matching the symptoms on my machine with your report in the
referenced posting yields enough evidence for me to believe that
lm_sensors is the reason for the problem in my case too.


> 
> I broke my thinkpad hardware several time with this program. The
> symptom was exactly the same. The laptop needed to be repaired
> at the IBM tech center.  Motherboard changed.
> 
> The eeprom module from the lm_sensors package 
> theorically reads information from SDRAM eeprom and provides
> a /proc/sys/dev/sensors/eeprom*/ entry for this stuff 
> (RAM delay, capacity, and so on) : one entry per RAM module.
> These eeprom are accessed via the SMBus. 
> 
> The problem is that the mainboard serial number is stored in 
> an eeprom too, that also responds on this bus (but in a bad way
> apparently) when you read the /proc/sys/dev/sensors data.
> I assume that the content of the motherboard eeprom is erased or
> altered. And this prevent the laptop from restarting (It must check
> that this value is correct before doing anything else). 

I'm leaving the above in on purpose such that readers can see the
context.

> 
> What is this thinkpad hardware maintenance diskette ? Is it available
> for download or just reserved to IBM techs for internal use ? 

I took the machine to IBM Service. Obviously they had this 'maintenance
diskette' available. They hadn't heard of this '188' error before but as
it turned out, this diskette is the only thing that boots in the case of
an '188' error code. It must have some special boot sector or whatever.

Since my machine was down all weekend, I had spent significant time
searching the Internet for this diskette and it doesn't seem to be out
there. I did not have much time to play with the diskette but what I
have seen was a selection which would allow to write the serial number
information for all major components to the SEEPROM (System Board, CPU,
DC/DC converter, plus probably some other component which I don't
remember explicitly).

I personally entered the machine serial number in the correct spot and
after that the '188' went away, however, there was still the '189' and
it appears to me that this might go away once the other missing serial
numbers would be set correctly.

Now comes the problem: Where do you get this information from? I thought
it should be possible to lookup a database somewhere using the machine
serial number as a key and from there obtain all the other serial
numbers but apparently such a database does not exist or maybe if it
exists it wasn't easily possible to get that information timely.

Since I needed the machine back desparately we decided to have the
relevant hardware replaced and then worry about re-initializing the
removed parts with correct serial number data later. The hardware was
definitely ok, the problem in a situation like this is to know what
serial number data needs to go into those SEEPROMS.

So what do we learn out of this? First of all, obviously, don't ever
mess with the lm_sensors. Second, while everyting is ok with your
machine, try to get hold of all these serial numbers and store them in a
safe place in case you need it later. Once the SEEPROM's CRC gets bad it
is too late to obtain the valid data. Currently I have no idea whether
the serial numbers might be available on any media which was probably
shipped with the machine and I also have no idea how these numbers can
be determined without this hardware maintenance diskette.

Probably the built-in ROM setup code provides a way to read this data?

One last remark for all of you who might now be concerned that upcoming
Linux-2.4 may cause situations like the one being described here. To my
understanding the i2c device drivers I was using will be part of the
official 2.4 kernel, however, these kernel modules didn't do any harm
and more precisely they are not loaded automatically. I assume it is the
userspace lm_sensors code that eventually broke things but anyrate, as
long as the Linux distributions don't try to get smart and conduct some
elaborate 'probing' sequences which include probing all i2c busses I
think we are safe. At least when I rebootet the Linux just as I had left
it, these drivers didn't to anything bad.

Obviusly I immediately went to /lib/modules/2.2.14/misc and removed all
i2c-* modules and after a subsequent 'depmod -a' I also removed all
remaining modules which now complained about unresolved externals. As a
last step I cleaned up my /etc/conf.modules and everything seems to be
just fine again.

Sorry for elaborating so precisely but I figured it is worthwhile to
share this information with you such that you can avoid being trapped
into the same situation. Although my report is related to a TP770X I
would assume that other ThinkPads use similar I2C controllers and
similar I2C slaves attached to it and chances are that any other
ThinkPad may brake in the same way so be warned! Don't mess with
lm_sensors and if you really _have_ to, then make sure you have those
serial numbers written down somewhere.

'nuff said, I'm glad my machine is up and running again and I swear I
will treat it very respectfully in the future.

- -- 
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

iD8DBQE5dglu8ZparKdkcvIRAr3RAKCGBg4gAcsgpqxxEL3MtR9FgPBHIgCdFPFH
8GbOAX6Cn6vJV5ahCf/aEik=
=QCXU
-----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