Linux - NewbieThis Linux forum is for members that are new to Linux.
Just starting out and have a question?
If it is not in the man pages or the how-to's this is the place!
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
For quite a while now I've been on and off trying to get lm_sensors to work with my Uniwill 257SA0 motherboard (part of a Fujitsu-Siemens Amilo D 1845), in SUSE 10.1. Windows can't find any sensors (using SANDRA, and a few of the other well known hw info tools) so I was hoping linux would...
Followed the guide here: http://suseroot.com/suse-linux-tweaks/lm_sensors.php
on an older version of lm_sensors than the one using now in Kubuntu live cd and got some readings of eeprom - memory info, but when i run it is suse I get "No sensors found!"
uname -a
Quote:
Linux Linux 2.6.16.21-0.13-smp #1 SMP Mon Jul 17 17:22:44 UTC 2006 i686 i686 i386 GNU/Linux
sensors -v
Quote:
Linux:/home/tom # sensors -v
sensors version 2.10.0 with libsensors version 2.10.0
here's the script i ran with the one that came with lm_sensors
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):
Probing for PCI bus adapters...
Use driver `i2c-sis96x' for device 00:02.1: Silicon Integrated Systems SMBus Controller
Probe succesfully concluded.
We will now try to load each adapter module in turn.
Load `i2c-sis96x' (say NO if built into your kernel)? (YES/no):
Module loaded succesfully.
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 not loaded. Do you want to load it now? (YES/no):
Module loaded succesfully.
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).
Next adapter: SiS96x SMBus adapter at 0x0c00
Do you want to scan it? (YES/no/selectively):
Client found at address 0x08
Client found at address 0x10
Client found at address 0x30
Client found at address 0x31
Client found at address 0x50
Probing for `SPD EEPROM'... Success!
(confidence 8, driver `eeprom')
Probing for `DDC monitor'... Failed!
Probing for `Maxim MAX6900'... Failed!
Client found at address 0x51
Probing for `SPD EEPROM'... Success!
(confidence 8, driver `eeprom')
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):
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... Failed!
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):
Probing for `ITE 8702F Super IO Sensors'
Failed! (0xf411)
Probing for `ITE 8705F Super IO Sensors'
Failed! (0xf411)
Probing for `ITE 8712F Super IO Sensors'
Failed! (0xf411)
Probing for `Nat. Semi. PC87351 Super IO Fan Sensors'
Failed! (0xf4)
Probing for `Nat. Semi. PC87360 Super IO Fan Sensors'
Failed! (0xf4)
Probing for `Nat. Semi. PC87363 Super IO Fan Sensors'
Failed! (0xf4)
Probing for `Nat. Semi. PC87364 Super IO Fan Sensors'
Failed! (0xf4)
Probing for `Nat. Semi. PC87365 Super IO Fan Sensors'
Failed! (0xf4)
Probing for `Nat. Semi. PC87365 Super IO Voltage Sensors'
Failed! (0xf4)
Probing for `Nat. Semi. PC87365 Super IO Thermal Sensors'
Failed! (0xf4)
Probing for `Nat. Semi. PC87366 Super IO Fan Sensors'
Failed! (0xf4)
Probing for `Nat. Semi. PC87366 Super IO Voltage Sensors'
Failed! (0xf4)
Probing for `Nat. Semi. PC87366 Super IO Thermal Sensors'
Failed! (0xf4)
Probing for `Nat. Semi. PC87372 Super IO Fan Sensors'
Failed! (0xf4)
Probing for `Nat. Semi. PC87373 Super IO Fan Sensors'
Failed! (0xf4)
Probing for `Nat. Semi. PC87591 Super IO'
Failed! (0xf4)
Probing for `Nat. Semi. PC87371 Super IO'
Failed! (0xf4)
Probing for `Nat. Semi. PC97371 Super IO'
Failed! (0xf4)
Probing for `Nat. Semi. PC8739x Super IO'
Failed! (0xf4)
Probing for `Nat. Semi. PC8741x Super IO'
Failed! (0xf4)
Probing for `Nat. Semi. PCPC87427 Super IO'
Failed! (0xf4)
Probing for `SMSC 47B27x Super IO Fan Sensors'
Failed! (0xf4)
Probing for `SMSC 47M10x/13x Super IO Fan Sensors'
Failed! (0xf4)
Probing for `SMSC 47M14x Super IO Fan Sensors'
Failed! (0xf4)
Probing for `SMSC 47M15x/192/997 Super IO Fan Sensors'
Failed! (0xf4)
Probing for `SMSC 47S42x Super IO Fan Sensors'
Failed! (0xf4)
Probing for `SMSC 47S45x Super IO Fan Sensors'
Failed! (0xf4)
Probing for `SMSC 47M172 Super IO'
Failed! (0xf4)
Probing for `SMSC LPC47B397-NC Super IO'
Failed! (0xf4)
Probing for `SMSC SCH5307-NS Super IO'
Failed! (0xf4)
Probing for `VT1211 Super IO Sensors'
Failed! (0xf4)
Probing for `Winbond W83627HF Super IO Sensors'
Failed! (0xf4)
Probing for `Winbond W83627THF Super IO Sensors'
Failed! (0xf4)
Probing for `Winbond W83637HF Super IO Sensors'
Failed! (0xf4)
Probing for `Winbond W83687THF Super IO Sensors'
Failed! (0xf4)
Probing for `Winbond W83697HF Super IO Sensors'
Failed! (0xf4)
Probing for `Winbond W83697SF/UF Super IO PWM'
Failed! (0xf4)
Probing for `Winbond W83L517D Super IO'
Failed! (0xf4)
Probing for `Fintek F71805F/FG Super IO Sensors'
Failed! (0xf411)
Probing for `Winbond W83627EHF/EHG Super IO Sensors'
Failed! (0xf411)
Do you want to scan for secondary Super I/O sensors? (YES/no):
Probing for `ITE 8702F Super IO Sensors'
Failed! (0xec11)
Probing for `ITE 8705F Super IO Sensors'
Failed! (0xec11)
Probing for `ITE 8712F Super IO Sensors'
Failed! (0xec11)
Probing for `Nat. Semi. PC87351 Super IO Fan Sensors'
Failed! (0xec)
Probing for `Nat. Semi. PC87360 Super IO Fan Sensors'
Failed! (0xec)
Probing for `Nat. Semi. PC87363 Super IO Fan Sensors'
Failed! (0xec)
Probing for `Nat. Semi. PC87364 Super IO Fan Sensors'
Failed! (0xec)
Probing for `Nat. Semi. PC87365 Super IO Fan Sensors'
Failed! (0xec)
Probing for `Nat. Semi. PC87365 Super IO Voltage Sensors'
Failed! (0xec)
Probing for `Nat. Semi. PC87365 Super IO Thermal Sensors'
Failed! (0xec)
Probing for `Nat. Semi. PC87366 Super IO Fan Sensors'
Failed! (0xec)
Probing for `Nat. Semi. PC87366 Super IO Voltage Sensors'
Failed! (0xec)
Probing for `Nat. Semi. PC87366 Super IO Thermal Sensors'
Failed! (0xec)
Probing for `Nat. Semi. PC87372 Super IO Fan Sensors'
Failed! (0xec)
Probing for `Nat. Semi. PC87373 Super IO Fan Sensors'
Failed! (0xec)
Probing for `Nat. Semi. PC87591 Super IO'
Success... but not activated
Probing for `Nat. Semi. PC87371 Super IO'
Failed! (0xec)
Probing for `Nat. Semi. PC97371 Super IO'
Failed! (0xec)
Probing for `Nat. Semi. PC8739x Super IO'
Failed! (0xec)
Probing for `Nat. Semi. PC8741x Super IO'
Failed! (0xec)
Probing for `Nat. Semi. PCPC87427 Super IO'
Failed! (0xec)
Probing for `SMSC 47B27x Super IO Fan Sensors'
Failed! (0xec)
Probing for `SMSC 47M10x/13x Super IO Fan Sensors'
Failed! (0xec)
Probing for `SMSC 47M14x Super IO Fan Sensors'
Failed! (0xec)
Probing for `SMSC 47M15x/192/997 Super IO Fan Sensors'
Failed! (0xec)
Probing for `SMSC 47S42x Super IO Fan Sensors'
Failed! (0xec)
Probing for `SMSC 47S45x Super IO Fan Sensors'
Failed! (0xec)
Probing for `SMSC 47M172 Super IO'
Failed! (0xec)
Probing for `SMSC LPC47B397-NC Super IO'
Failed! (0xec)
Probing for `SMSC SCH5307-NS Super IO'
Failed! (0xec)
Probing for `VT1211 Super IO Sensors'
Failed! (0xec)
Probing for `Winbond W83627HF Super IO Sensors'
Failed! (0xec)
Probing for `Winbond W83627THF Super IO Sensors'
Failed! (0xec)
Probing for `Winbond W83637HF Super IO Sensors'
Failed! (0xec)
Probing for `Winbond W83687THF Super IO Sensors'
Failed! (0xec)
Probing for `Winbond W83697HF Super IO Sensors'
Failed! (0xec)
Probing for `Winbond W83697SF/UF Super IO PWM'
Failed! (0xec)
Probing for `Winbond W83L517D Super IO'
Failed! (0xec)
Probing for `Fintek F71805F/FG Super IO Sensors'
Failed! (0xec11)
Probing for `Winbond W83627EHF/EHG Super IO Sensors'
Failed! (0xec11)
Now follows a summary of the probes I have just done.
Just press ENTER to continue:
Driver `eeprom' (should be inserted):
Detects correctly:
* Bus `SiS96x SMBus adapter at 0x0c00'
Busdriver `i2c-sis96x', I2C address 0x50
Chip `SPD EEPROM' (confidence: 8)
* Bus `SiS96x SMBus adapter at 0x0c00'
Busdriver `i2c-sis96x', I2C address 0x51
Chip `SPD EEPROM' (confidence: 8)
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:
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):
Linux:/home/tom #
So from this it looks like the only "sensors" I have got are eeprom one's which are just memory modules, right? So I'm guessing that this newer version of lm_sensors figures that eeprom's aren't sensors so excludes them when I run sensors. So it appeared that I just had no supported sensors, until i ran:
Quote:
cd /tmp
wget "http://www.lm-sensors.org/browser/lm-sensors/trunk/prog/detect/sensors-detect?format=txt"
perl "sensors-detect?format=txt"
to use the newer sensors-detect, and I got:
Quote:
# sensors-detect revision $Revision$
This program will help you determine which kernel modules you need
to load to use lm_sensors most effectively. 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.
Do you want to probe now? (YES/no):
Probing for PCI bus adapters...
Use driver `i2c-sis96x' for device 0000:00:02.1: Silicon Integrated Systems SMBus Controller
We will now try to load each adapter module in turn.
Module `i2c-sis96x' already loaded.
If you have undetectable or unsupported adapters, you can have them
scanned by manually loading the modules before running this script.
We are now going to do the I2C/SMBus adapter probings. Some chips may
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.
Next adapter: SiS96x SMBus adapter at 0x0c00 (i2c-0)
Do you want to scan it? (YES/no/selectively):
Client found at address 0x08
Client found at address 0x10
Client found at address 0x30
Client found at address 0x31
Client found at address 0x50
Probing for `Analog Devices ADM1033'... No
Probing for `Analog Devices ADM1034'... No
Probing for `SPD EEPROM'... Success!
(confidence 8, driver `eeprom')
Probing for `EDID EEPROM'... No
Probing for `Maxim MAX6900'... No
Client found at address 0x51
Probing for `Analog Devices ADM1033'... No
Probing for `Analog Devices ADM1034'... No
Probing for `SPD EEPROM'... Success!
(confidence 8, driver `eeprom')
Some chips are also accessible through the ISA I/O ports. We have to
write to arbitrary I/O ports to probe them. This is usually safe though.
Yes, you do have ISA I/O ports even if you do not have any ISA slots!
Do you want to scan the ISA I/O ports? (YES/no):
Probing for `National Semiconductor LM78' at 0x290... No
Probing for `National Semiconductor LM78-J' at 0x290... No
Probing for `National Semiconductor LM79' at 0x290... No
Probing for `Winbond W83781D' at 0x290... No
Probing for `Winbond W83782D' at 0x290... No
Probing for `Winbond W83627HF' at 0x290... No
Probing for `Silicon Integrated Systems SIS5595'... No
Probing for `VIA VT82C686 Integrated Sensors'... No
Probing for `VIA VT8231 Integrated Sensors'... No
Probing for `IPMI BMC KCS' at 0xca0... No
Probing for `IPMI BMC SMIC' at 0xca8... No
Some Super I/O chips may also contain sensors. We have to write to
standard I/O ports to probe them. This is usually safe.
Do you want to scan for Super I/O sensors? (YES/no):
Probing for Super-I/O at 0x2e/0x2f
Trying family `ITE'... Yes
Found unknown chip with ID 0xf411
Trying family `National Semiconductor'... Yes
Found unknown chip with ID 0xf411
Trying family `SMSC'... Yes
Found unknown chip with ID 0xf411
Trying family `VIA/Winbond/Fintek'... Yes
Found unknown chip with ID 0xf411
Probing for Super-I/O at 0x4e/0x4f
Trying family `ITE'... Yes
Found unknown chip with ID 0xec11
Trying family `National Semiconductor'... Yes
Found `Nat. Semi. PC87591 Super IO'
(but not activated)
Trying family `SMSC'... Yes
Found unknown chip with ID 0xec11
Trying family `VIA/Winbond/Fintek'... Yes
Found unknown chip with ID 0xec11
Some CPU may also contain embedded sensors.
Do you want to scan for CPU embedded sensors? (YES/no):
AMD K8 thermal sensors... No
Intel Core family thermal sensor... No
Now follows a summary of the probes I have just done.
Just press ENTER to continue:
Driver `eeprom' (should be inserted):
Detects correctly:
* Bus `SiS96x SMBus adapter at 0x0c00'
Busdriver `i2c-sis96x', I2C address 0x50
Chip `SPD EEPROM' (confidence: 8)
* Bus `SiS96x SMBus adapter at 0x0c00'
Busdriver `i2c-sis96x', I2C address 0x51
Chip `SPD EEPROM' (confidence: 8)
EEPROMs are *NOT* sensors! They are data storage chips commonly
found on memory modules (SPD), in monitors (EDID), or in some
laptops, for example.
I will now generate the commands needed to load the required modules.
Just press ENTER to continue:
To make the sensors modules behave correctly, add these lines to
/etc/modules.conf:
If you have some drivers 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 the needed
modules are loaded.
Do you want to overwrite /etc/sysconfig/lm_sensors? (YES/no):
So it appears that i have some sensors from an unknown family, so does anyone know what I need to modprobe for 0xec11 or 0xf411
Is there anyway of finding out what these two sensors are?
Am i right in thinking that this version of lm_sensors excludes memory modules as sensors and only displays real sensors?
Witout doing any research on your board, I would bet it is fairly safe to assume if you can't find windows tools to show sensors type info, you won't be able to in linux either. If the manufacturer were to release info, it would be in some type of windows file (.exe, .inf or some such), and then people who don't like to be spoonfed would figure out what the win version was doing, and would port the necessary info into sensors in linux.
It could work the other way, where linux gets it first, but for desktop hardware, that is highly unlikely. Sometimes server class hardware (scsi controller, mobo) will have well developed support ahead of winworld, largely from the BSD folks, but the vast majority of the time it gets win support from the manufacturer, then opensource support follows closely behind.
You could try LM Sensors website and join the mailing list to see if anyone there is working on/has a working driver for your hardware. Otherwise get the new 2.6.19 kernel installed along with the latest lm-sensors and see if these will work.
hmm.... tried latest version of lm_sensors and still got nowhere "no sensors found". Don't know and - to be frank - am terrified with the idea of recompiling or updating my kernel as i've never got it to work in the past. Plus I've stuff i want to keep that I've modprobed into my kernel...
I would like to get SOME readings from sensors, like I was able to in Kubuntu live cd (an old one from last year) that used old repository and installed an older version of lm-sensors, when I did that I got readings from eeprom, not a sensor but its still a start, as my version of lm_sensors doesn't appear to start up at all
Does anyone recommend downgrading my lm-sensors?
Are there any susers out there that can explain how to recompile kernel to support i2c-isa for a noob?
UPDATE: I've just found a program which detects my sensors on my mobo!
--> PC Wizard 2007 finds core voltage of my CPU, along with CPU temperature!
If only I could find out what these sensors are called, or who makes them. I have recently done a lot of research on the 257SA0 model and there is very little documentation freely distributed, to get a components block diagram for this board I would need to be a servicer/partner for FSC, does anyone out there work for/with these guys and could get this info for me? I know the exact link but need to be registered with FSC to gain access, the frustration!
Hi, I've just found out the problem might have been due to the wrong chipset being detected by sensors-detect, I need to load the beta kernel module "i2c-sis645" but when I modprobe it, I get the message "not found" so I downloaded it from the lm_sensors site, and need to know how to compile it, it is named "i2c-sis645.c" and i need to compile it into a .ko file.
I have tried using a creating a makefile, and using cc, results are similar to below:
Code:
Linux:/home/tom/Desktop/i2c # cc i2c-sis645.c
In file included from /usr/include/linux/module.h:11,
from i2c-sis645.c:43:
/usr/include/linux/list.h:887:2: warning: #warning "don't include kernel headers in userspace"
In file included from i2c-sis645.c:43:
/usr/include/linux/module.h:49: error: field ‘attr’ has incomplete type
/usr/include/linux/module.h:60: error: field ‘kobj’ has incomplete type
In file included from i2c-sis645.c:48:
/usr/include/linux/ioport.h:18: error: expected specifier-qualifier-list before ‘resource_size_t’
/usr/include/linux/ioport.h:102: error: expected declaration specifiers or ‘...’ before ‘resource_size_t’
/usr/include/linux/ioport.h:102: error: expected declaration specifiers or ‘...’ before ‘resource_size_t’
/usr/include/linux/ioport.h:103: error: expected declaration specifiers or ‘...’ before ‘resource_size_t’
/usr/include/linux/ioport.h:103: error: expected declaration specifiers or ‘...’ before ‘resource_size_t’
/usr/include/linux/ioport.h:105: error: expected declaration specifiers or ‘...’ before ‘resource_size_t’
/usr/include/linux/ioport.h:105: error: expected declaration specifiers or ‘...’ before ‘resource_size_t’
/usr/include/linux/ioport.h:107: error: expected declaration specifiers or ‘...’ before ‘resource_size_t’
/usr/include/linux/ioport.h:108: error: expected declaration specifiers or ‘...’ before ‘resource_size_t’
/usr/include/linux/ioport.h:119: error: expected declaration specifiers or ‘...’ before ‘resource_size_t’
/usr/include/linux/ioport.h:120: error: expected declaration specifiers or ‘...’ before ‘resource_size_t’
/usr/include/linux/ioport.h:127: error: expected declaration specifiers or ‘...’ before ‘resource_size_t’
/usr/include/linux/ioport.h:127: error: expected declaration specifiers or ‘...’ before ‘resource_size_t’
/usr/include/linux/ioport.h:128: error: expected declaration specifiers or ‘...’ before ‘resource_size_t’
/usr/include/linux/ioport.h:129: error: expected declaration specifiers or ‘...’ before ‘resource_size_t’
/usr/include/linux/ioport.h:131: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘check_region’
i2c-sis645.c:53:21: error: version.h: No such file or directory
i2c-sis645.c:54:28: error: sensors_compat.h: No such file or directory
i2c-sis645.c:147: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘sis645_smbus_base’
i2c-sis645.c:149: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘sis645_read’
i2c-sis645.c:154: error: expected ‘)’ before ‘reg’
i2c-sis645.c: In function ‘sis645_transaction’:
i2c-sis645.c:359: error: ‘KERN_DEBUG’ undeclared (first use in this function)
i2c-sis645.c:359: error: (Each undeclared identifier is reported only once
i2c-sis645.c:359: error: for each function it appears in.)
i2c-sis645.c:359: error: expected ‘)’ before string constant
i2c-sis645.c: At top level:
i2c-sis645.c:392: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘sis645_access’
i2c-sis645.c:477: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘sis645_func’
i2c-sis645.c:484: error: variable ‘smbus_algorithm’ has initializer but incomplete type
i2c-sis645.c:485: error: unknown field ‘name’ specified in initializer
i2c-sis645.c:485: warning: excess elements in struct initializer
i2c-sis645.c:485: warning: (near initialization for ‘smbus_algorithm’)
i2c-sis645.c:486: error: unknown field ‘id’ specified in initializer
i2c-sis645.c:486: error: ‘I2C_ALGO_SMBUS’ undeclared here (not in a function)
i2c-sis645.c:486: warning: excess elements in struct initializer
i2c-sis645.c:486: warning: (near initialization for ‘smbus_algorithm’)
i2c-sis645.c:487: error: unknown field ‘smbus_xfer’ specified in initializer
i2c-sis645.c:487: error: ‘sis645_access’ undeclared here (not in a function)
i2c-sis645.c:487: warning: excess elements in struct initializer
i2c-sis645.c:487: warning: (near initialization for ‘smbus_algorithm’)
i2c-sis645.c:488: error: unknown field ‘functionality’ specified in initializer
i2c-sis645.c:488: error: ‘sis645_func’ undeclared here (not in a function)
i2c-sis645.c:488: warning: excess elements in struct initializer
i2c-sis645.c:488: warning: (near initialization for ‘smbus_algorithm’)
i2c-sis645.c:491: error: variable ‘sis645_adapter’ has initializer but incomplete type
i2c-sis645.c:492: error: unknown field ‘id’ specified in initializer
i2c-sis645.c:492: error: ‘I2C_HW_SMBUS_SIS645’ undeclared here (not in a function)
i2c-sis645.c:492: warning: excess elements in struct initializer
i2c-sis645.c:492: warning: (near initialization for ‘sis645_adapter’)
i2c-sis645.c:493: error: unknown field ‘algo’ specified in initializer
i2c-sis645.c:493: warning: excess elements in struct initializer
i2c-sis645.c:493: warning: (near initialization for ‘sis645_adapter’)
i2c-sis645.c:494: error: unknown field ‘inc_use’ specified in initializer
i2c-sis645.c:494: warning: excess elements in struct initializer
i2c-sis645.c:494: warning: (near initialization for ‘sis645_adapter’)
i2c-sis645.c:495: error: unknown field ‘dec_use’ specified in initializer
i2c-sis645.c:495: warning: excess elements in struct initializer
i2c-sis645.c:495: warning: (near initialization for ‘sis645_adapter’)
i2c-sis645.c:498: error: array type has incomplete element type
i2c-sis645.c:500: error: field name not in record or union initializer
i2c-sis645.c:500: error: (near initialization for ‘sis645_ids’)
i2c-sis645.c:501: error: field name not in record or union initializer
i2c-sis645.c:501: error: (near initialization for ‘sis645_ids’)
i2c-sis645.c:502: error: field name not in record or union initializer
i2c-sis645.c:502: error: (near initialization for ‘sis645_ids’)
i2c-sis645.c:502: error: ‘PCI_ANY_ID’ undeclared here (not in a function)
i2c-sis645.c:503: error: field name not in record or union initializer
i2c-sis645.c:503: error: (near initialization for ‘sis645_ids’)
i2c-sis645.c: In function ‘sis645_probe’:
i2c-sis645.c:511: error: ‘u16’ undeclared (first use in this function)
i2c-sis645.c:511: error: expected ‘;’ before ‘ww’
i2c-sis645.c:514: error: ‘sis645_smbus_base’ undeclared (first use in this function)
i2c-sis645.c:519: error: ‘ww’ undeclared (first use in this function)
i2c-sis645.c:535: error: invalid use of undefined type ‘struct pci_driver’
i2c-sis645.c:535: error: too many arguments to function ‘__request_region’
i2c-sis645.c:545: warning: incompatible implicit declaration of built-in function ‘sprintf’
i2c-sis645.c:545: error: invalid use of undefined type ‘struct i2c_adapter’
i2c-sis645.c:550: error: too many arguments to function ‘__release_region’
i2c-sis645.c: At top level:
i2c-sis645.c:557: error: variable or field ‘__attribute_used__’ declared void
i2c-sis645.c:557: error: expected ‘,’ or ‘;’ before ‘sis645_remove’
i2c-sis645.c:566: error: variable ‘sis645_driver’ has initializer but incomplete type
i2c-sis645.c:567: error: unknown field ‘name’ specified in initializer
i2c-sis645.c:567: warning: excess elements in struct initializer
i2c-sis645.c:567: warning: (near initialization for ‘sis645_driver’)
i2c-sis645.c:568: error: unknown field ‘id_table’ specified in initializer
i2c-sis645.c:568: warning: excess elements in struct initializer
i2c-sis645.c:568: warning: (near initialization for ‘sis645_driver’)
i2c-sis645.c:569: error: unknown field ‘probe’ specified in initializer
i2c-sis645.c:569: warning: excess elements in struct initializer
i2c-sis645.c:569: warning: (near initialization for ‘sis645_driver’)
i2c-sis645.c:570: error: unknown field ‘remove’ specified in initializer
i2c-sis645.c:570: warning: excess elements in struct initializer
i2c-sis645.c:570: warning: (near initialization for ‘sis645_driver’)
i2c-sis645.c: In function ‘i2c_sis645_init’:
i2c-sis645.c:575: error: ‘KERN_INFO’ undeclared (first use in this function)
i2c-sis645.c:575: error: expected ‘)’ before string constant
i2c-sis645.c:580: error: expected ‘)’ before string constant
i2c-sis645.c:586: error: expected ‘)’ before string constant
i2c-sis645.c: At top level:
i2c-sis645.c:594: error: variable or field ‘__attribute_used__’ declared void
i2c-sis645.c:594: error: expected ‘,’ or ‘;’ before ‘i2c_sis645_exit’
i2c-sis645.c:604: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘__attribute_used__’
i2c-sis645.c:605: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘__attribute_used__’
Does this indicate an error in code?
Or am I doing something wrong?
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.