[Fwd: PATCH: bmcsensors and i2c-ipmi port to 2.6]
mds4 at verizon.net
Wed Mar 17 03:52:15 CET 2004
thanks for the submission.
hopefully you can figure out a way to generate the sysfs entries dynamically.
The static generation is unfortunate. Perhaps Greg could help us here.
Also I got mail from one person who had 70 sensors on his BMC.
I'm not running 2.6 on my BMC machine but I may try to backport the write code
and test it on 2.4.
We've recently changed the sysfs naming convention (from temp_min1 to temp1_min,
for example), so we'll need the naming reworked.
Yani Ioannou wrote:
> Hi, attached is my e-mail to the author of the bmcsensors and i2c-ipmi
> driver (*Mark D. Studebaker*), I realized I probably should have CCed
> the original message to the lm-sensors development team as a whole.
> Thanks :-),
> PATCH: bmcsensors and i2c-ipmi port to 2.6
> Yani Ioannou <yanii at utsc.utoronto.ca>
> Mon, 15 Mar 2004 11:36:32 -0500
> "M. Studebaker" <mdsxyz123 at yahoo.com>
> As the kernel newbie faq puts it I've been "pissing in your pool" :-P so
> I thought it best to contact you. I love the 2.6 kernel but I also loved
> being able to read the sensors off my HP workstation x4000's IPMI BMC,
> so I took to porting the driver to 2.6/sysfs. I seem to have been fairly
> successful, although this could definitely do with some more testing on
> different hardware.
> First of all I'd like to thank you immensely for writing the driver :-)
> I was very pleased beyond words when I could finally use the IPMI BMC on
> my motherboard to see my sensors readings, although ironically with my
> motherboard I can't read 13 voltage, fan and temperatures sensors but
> not the CPU temperatures! I think being one of the first IPMI 1.0
> implementations they messed up the smbus, the adm1021 driver doesn't
> seem to be able to read the Xeon's temps either.
> Attached you will find a patch for kernel 2.6.4-rc2. My main problems
> porting the driver were in the ability of a BMC to have any number of
> sensors (or up to 50 as set in your driver). The sysfs show and store
> callbacks (more specifically the device.h implementation of it) do not
> appear to provide the ability to pass any information other than the
> device struct (and the buffer to write into), and thus making a single
> callback that can work for all sensors turns out to be impossible as far
> as I can see. Unfortunately (just as with the other ported sensor
> drivers) I had to create static functions for each sensor id, (i.e.
> 50!). In the other sensor drivers this is usually only a maximum of 8,
> so it is not as pronounced. It would make sense to me for the show and
> store callbacks of device.h to include information on the file that the
> specific call pertains to (just as the base sysfs implementation does).
> Note also that I implemented code to allow the setting of the thresholds
> for the sensors, but on writing it I found that my BMC doesn't support
> this, hence they have had no testing whatsoever, and obviously need to
> be tested on the appropriate hardware. Further improvements that I
> didn't get around to are creating the sysfs entries for hysteresis
> thresholds, and of course the driver still only works for one BMC.
> I'd be very grateful if you could test out the patch, and if possible
> test the driver more throughly on other IPMI implementations.
More information about the lm-sensors