[lm-sensors] Bmcsensors source code compiliation error

Rim Shao rim.shao at ericsson.com
Fri Oct 16 11:54:21 CEST 2009


Hi,

I want to use the sensors to show the hardware information on SUSE Linux 10. Afte the sensors-detect executing, I am told that I have to install the i2c-ipml and bmcsensors driver.

But I encouter the below error while make compiling the bmcsensors soure code. It seems that the gcc compiler can recognise the variable beginning with dot.(eg .name  and .slave_send)

Can you please help to have a look ? your valuable information will be appreciated!

===============================
linux-vh6q:~/bmcsensors-26 # make
make -C /lib/modules/2.6.16.60-0.21-smp/build SUBDIRS=/root/bmcsensors-26 modules
make[1]: Entering directory `/usr/src/linux-2.6.16.60-0.21-obj/x86_64/smp'
make -C /usr/src/linux-2.6.16.60-0.21 O=/usr/src/linux-2.6.16.60-0.21-obj/x86_64/smp modules
  CC [M]  /root/bmcsensors-26/i2c-ipmi.o
/root/bmcsensors-26/i2c-ipmi.c:40: error: unknown field �name’ specified in initializer
/root/bmcsensors-26/i2c-ipmi.c:40: warning: initialization from incompatible pointer type
/root/bmcsensors-26/i2c-ipmi.c:41: error: unknown field �id’ specified in initializer
/root/bmcsensors-26/i2c-ipmi.c:41: error: �I2C_ALGO_IPMI’ undeclared here (not in a function)
make[4]: *** [/root/bmcsensors-26/i2c-ipmi.o] Error 1
make[3]: *** [_module_/root/bmcsensors-26] Error 2
make[2]: *** [modules] Error 2
make[1]: *** [modules] Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.16.60-0.21-obj/x86_64/smp'
make: *** [modules] Error 2
===============================

BTW, my linux kernel is 2.6.16.60-0.21-smp and I also successfully patched the ipmisensors-20060805-0622.diff. Below is the output of the sensors-detect.


==============================================================
linux-vh6q:/usr/src/linux-2.6.16.60-0.21 # sensors-detect
# sensors-detect revision 1.413 (2006/01/19 20:28:00)

This program will help you determine which I2C/SMBus modules you need to
load to use lm_sensors most effectively. You need to have i2c and
lm_sensors installed before running this program.
Also, you need to be `root', or at least have access to the /dev/i2c-*
files, for most things.
If you have patched your kernel and have some drivers built in, you can
safely answer NO if asked to load some modules. In this case, things may
seem a bit confusing, but they will still work.

It is generally safe and recommended to accept the default answers to all
questions, unless you know what you're doing.

 We can start with probing for (PCI) I2C or SMBus adapters.
 You do not need any special privileges for this.
 Do you want to probe now? (YES/no): YES
Probing for PCI bus adapters...
Sorry, no PCI bus adapters found.

We will now try to load each adapter module in turn.
If you have undetectable or unsupported adapters, you can have them
scanned by manually loading the modules before running this script.

 To continue, we need module `i2c-dev' to be loaded.
 If it is built-in into your kernel, you can safely skip this.
i2c-dev is already loaded.

 We are now going to do the adapter probings. Some adapters may hang halfway
 through; we can't really help that. Also, some chips will be double detected;
 we choose the one with the highest confidence value in that case.
 If you found that the adapter hung after probing a certain address, you can
 specify that address to remain unprobed. That often
 includes address 0x69 (clock chip).

Some chips are also accessible through the ISA bus. ISA probes are
typically a bit more dangerous, as we have to write to I/O ports to do
this. This is usually safe though.

Do you want to scan the ISA bus? (YES/no): YES
Probing for `National Semiconductor LM78'
  Trying address 0x0290... Failed!
Probing for `National Semiconductor LM78-J'
  Trying address 0x0290... Failed!
Probing for `National Semiconductor LM79'
  Trying address 0x0290... Failed!
Probing for `Winbond W83781D'
  Trying address 0x0290... Failed!
Probing for `Winbond W83782D'
  Trying address 0x0290... Failed!
Probing for `Winbond W83627HF'
  Trying address 0x0290... Failed!
Probing for `Winbond W83627EHF'
  Trying address 0x0290... Failed!
Probing for `Silicon Integrated Systems SIS5595'
  Trying general detect... Failed!
Probing for `VIA Technologies VT82C686 Integrated Sensors'
  Trying general detect... Failed!
Probing for `VIA Technologies VT8231 Integrated Sensors'
  Trying general detect... Failed!
Probing for `ITE IT8712F'
  Trying address 0x0290... Failed!
Probing for `ITE IT8705F / SiS 950'
  Trying address 0x0290... Failed!
Probing for `IPMI BMC KCS'
  Trying address 0x0ca0... Success!
    (confidence 4, driver `bmcsensors')
Probing for `IPMI BMC SMIC'
  Trying address 0x0ca8... Failed!

Some Super I/O chips may also contain sensors. Super I/O probes are
typically a bit more dangerous, as we have to write to I/O ports to do
this. This is usually safe though.

Do you want to scan for Super I/O sensors? (YES/no): YES
Probing for `ITE 8702F Super IO Sensors'
  Failed! (0x9002)
Probing for `ITE 8705F Super IO Sensors'
  Failed! (0x9002)
Probing for `ITE 8712F Super IO Sensors'
  Failed! (0x9002)
Probing for `Nat. Semi. PC87351 Super IO Fan Sensors'
  Failed! (0x90)
Probing for `Nat. Semi. PC87360 Super IO Fan Sensors'
  Failed! (0x90)
Probing for `Nat. Semi. PC87363 Super IO Fan Sensors'
  Failed! (0x90)
Probing for `Nat. Semi. PC87364 Super IO Fan Sensors'
  Failed! (0x90)
Probing for `Nat. Semi. PC87365 Super IO Fan Sensors'
  Failed! (0x90)
Probing for `Nat. Semi. PC87365 Super IO Voltage Sensors'
  Failed! (0x90)
Probing for `Nat. Semi. PC87365 Super IO Thermal Sensors'
  Failed! (0x90)
Probing for `Nat. Semi. PC87366 Super IO Fan Sensors'
  Failed! (0x90)
Probing for `Nat. Semi. PC87366 Super IO Voltage Sensors'
  Failed! (0x90)
Probing for `Nat. Semi. PC87366 Super IO Thermal Sensors'
  Failed! (0x90)
Probing for `Nat. Semi. PC87372 Super IO Fan Sensors'
  Failed! (0x90)
Probing for `Nat. Semi. PC87373 Super IO Fan Sensors'
  Failed! (0x90)
Probing for `Nat. Semi. PC87591 Super IO'
  Failed! (0x90)
Probing for `Nat. Semi. PC87371 Super IO'
  Failed! (0x90)
Probing for `Nat. Semi. PC97371 Super IO'
  Failed! (0x90)
Probing for `Nat. Semi. PC8739x Super IO'
  Failed! (0x90)
Probing for `Nat. Semi. PC8741x Super IO'
  Failed! (0x90)
Probing for `Nat. Semi. PCPC87427 Super IO'
  Failed! (0x90)
Probing for `SMSC 47B27x Super IO Fan Sensors'
  Failed! (0x90)
Probing for `SMSC 47M10x/13x Super IO Fan Sensors'
  Failed! (0x90)
Probing for `SMSC 47M14x Super IO Fan Sensors'
  Failed! (0x90)
Probing for `SMSC 47M15x/192/997 Super IO Fan Sensors'
  Failed! (0x90)
Probing for `SMSC 47S42x Super IO Fan Sensors'
  Failed! (0x90)
Probing for `SMSC 47S45x Super IO Fan Sensors'
  Failed! (0x90)
Probing for `SMSC 47M172 Super IO'
  Failed! (0x90)
Probing for `SMSC LPC47B397-NC Super IO'
  Failed! (0x90)
Probing for `SMSC SCH5307-NS Super IO'
  Failed! (0x90)
Probing for `VT1211 Super IO Sensors'
  Failed! (skipping family)
Probing for `Winbond W83627EHF/EHG Super IO Sensors'
  Failed! (skipping family)

Do you want to scan for secondary Super I/O sensors? (YES/no): YES
Probing for `ITE 8702F Super IO Sensors'
  Failed! (skipping family)
Probing for `Nat. Semi. PC87351 Super IO Fan Sensors'
  Failed! (skipping family)
Probing for `SMSC 47B27x Super IO Fan Sensors'
  Failed! (skipping family)
Probing for `VT1211 Super IO Sensors'
  Failed! (skipping family)
Probing for `Winbond W83627EHF/EHG Super IO Sensors'
  Failed! (skipping family)

 Now follows a summary of the probes I have just done.
 Just press ENTER to continue:

Driver `bmcsensors' (should be inserted):
  Detects correctly:
  * ISA bus address 0x0ca0 (Busdriver `i2c-isa')
    Chip `IPMI BMC KCS' (confidence: 4)


I will now generate the commands needed to load the I2C modules.

To make the sensors modules behave correctly, add these lines to
/etc/modprobe.conf:

#----cut here----
# I2C module options
alias char-major-89 i2c-dev
#----cut here----

To load everything that is needed, add this to some /etc/rc* file:

#----cut here----
# I2C adapter drivers
modprobe i2c-isa
# You must also install and load the IPMI modules
modprobe i2c-ipmi
# I2C chip drivers
# Warning: the required module bmcsensors is not currently installed on your system.
# For status of 2.6 kernel ports see http://secure.netroedge.com/~lm78/supported.html
# If driver is built-in to the kernel, or unavailable, comment out the following line.
modprobe bmcsensors
# sleep 2 # optional
/usr/bin/sensors -s # recommended
#----cut here----

WARNING! If you have some things built into your kernel, the list above
will contain too many modules. Skip the appropriate ones! You really should
try these commands right now to make sure everything is working properly.
Monitoring programs won't work until it's done.

Do you want to generate /etc/sysconfig/lm_sensors? (YES/no): YES
===============================

Greetings,
Shao
______________________________________________

Ericsson(China) Communication Co.,Ltd  Shanghai Branch
Building E, No. 1068 Tian Shan Road West
Shanghai, China 200335

Name: 邵永刚
TEL:   +86 21 22087306
MAIL: Rim.shao at ericsson.com
______________________________________________

This communication is confidential and intended solely for the addressee(s). Any unauthorized review, use, disclosure or distribution is prohibited. If you believe this message has been sent to you in error, please notify the sender by replying to this transmission and delete the message without disclosing it. Thank you.

E-mail including attachments is susceptible to data corruption, interruption, unauthorized amendment, tampering and viruses, and we only send and receive e-mails on the basis that we are not liable for any such corruption, interception, amendment, tampering or viruses or any consequences thereof.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lm-sensors.org/pipermail/lm-sensors/attachments/20091016/ca7fc11e/attachment.html>


More information about the lm-sensors mailing list