lm_sensors

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Phil,

I have heard from the hardware engineers in Japan.  They wanted me to
clarify some things with you, particularly the optimal solution you would
like, and what is tolerable.

First I'd like to make sure I actually understand the problem, since I'm
not really a hardware person, and our ThinkPad hardware guys only speak
passable English.  Below is what I understand, put together from your
emails and the hardware team's comments:
1.  lm_sensors is a software package for Linux that does health montoring
of hardware, soon to be added to the Linux kernel.  It uses a wide variety
of sensors, including temperature, battery life, fan speed, voltages,
memory detection, etc.  The typical PC has a chipset on the motherboard
which is usually accessed via the ISA bus or the SMBus, which is what
lm_sensors is coded to use.
2.  The sensor (the thermal sensor) in ThinkPad is not connected to SMBUS,
instead IBM normally uses an embedded controller to monitor thermal sensors
(sometimes using multiple sensors). However, the H/W implementation varies
depending on model. IBM does not disclose the interface to access to those
sensors.
3.   lm_sensors uses SMBUS  to connect several different devices, and one
of them is ATMEL EEPROM, which contains machine serial or other
device/system vital information. lm_sensors accesses the EEPROM in a way
that causes it to be corrupt. To quote your recent email:
"We got some samples of the Atmel AT24RF08 chip, and we
were able to reproduce the corruption!  In a nut-shell, this
particular chip has a broken I2C bus state-machine which can interpret
certain sequences of bus communications (including communications with
other unrelated chips) as being 'data write' commands which corrupt
the eeprom."
Then BIOS detects the error condition and posts the error code and the
machine needs to repair.


As far as solutions you'd like, my understanding is this:
1.  Optimal solution:  you have the hardware specs, you know what chipsets
are involved, and you can access the information without blowing away the
eeprom.
2.  Minimal solution:  you know how to detect IBM hardware, and disable lm
sensors on it.

The hardware guys are suggesting you detect IBM ThinkPads specifically, and
are preparing a document for public release that would tell you how to do
this.  Knowing how IBM works (legal reviews, etc), this may take a little
time, but at least it could allow lm_sensors to still run on the server
hardware that isn't broken.

It seems to me that for lm_sensors to work flawlessly on all ThinkPads, you
would need to know all the different ways that the hardware engineers
implement their sensors, and how to access this information safely.  Is
this correct?  As far as I can tell, the ThinkPad hardware engineers are
very reluctant to release this information.  The reason that was given to
me is that whenever they released the specs for their BIOS and related
hardware in the past, they got locked down to a particular implementation,
and were unable to change things without upsetting the people that were
relying on that particular design.    However, they have been willing to
release some limited information recently, so if you do need this
information, we could at least ask.

Please let me know your thoughts on all this.  I'll tell the hardware guys
to proceed with the documentation on how to detect IBM ThinkPads.  Whether
or not I persue more information with depends on your response.

Thanks,
Pam


============================================
Pamela Huntley, IBM PCD Software Development
Phone: (919) 543-3598   Email: phuntley at us.ibm.com



                                                                                                            
                      phil at netroedge.co                                                                     
                      m                        To:       Pam Huntley/Raleigh/IBM at IBMUS,                     
                                                sensors at Stimpy.netroedge.com                                
                      08/30/2002 07:22         cc:                                                          
                      PM                       Subject:  Re: lm sensors                                     
                                                                                                            
                                                                                                            
                                                                                                            




On Fri, Aug 30, 2002 at 05:20:50PM -0400, Pam Huntley wrote:
>[...]
> I gave them your contact information (email).  I haven't heard if they'll
> contact you directly or not, as they are in Japan, they might just send
me
> stuff and let me pass it on to you. I should know more next week when
they
> respond to my email.

OK, sounds good.

> As far as detecting IBM, I think you are on the right track.  My
> understanding is that both the vendor flag "IBM" and the MTM (machine
type
> and model) are located in the BIOS, and that you can access this using
> SMAPI calls.  We used to use DMI on our older machines, I'm not sure if
it
> will work on the newer ones.  Again, I write mostly GUI software, so I'm
a
> little fuzzy on things like BIOS, but I can probably get more specifics
if
> this is something you need to know more about.  I believe you can
actually
> get the MTM and just test the type to make sure it's a ThinkPad, and that
> way you won't have to disable it for ALL IBM machines.  Hopefully we can
> get the specs to you and you won't have to disable it at all.

I'm hoping we can identify the chip and work around the problem so we
don't have to blacklist anything.  That would be ideal.

> I'm hoping that we can get you what you need, I'll keep you posted as to
> what I know.

Thanks!! We really appreciate your help. :')


Phil

--
Philip Edelbrock -- IS Manager -- Edge Design, Corvallis, OR
   phil at netroedge.com -- http://www.netroedge.com/~phil
 PGP F16: 01 D2 FD 01 B5 46 F4 F0  3A 8B 9D 7E 14 7F FB 7A







[Index of Archives]     [Linux Kernel]     [Linux Hardware Monitoring]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux