# (solved) i2c_sensor missing in kernel 2.6.14 + fancontrol

## <3

I just updated to gentoo-sources 2.6.14 and I noticed that I cannot find the option for i2c_sensor. It seems to be missing in the 2..14 version of the vanilla-sources as well. I need this module in order to run fancontrol.Last edited by <3 on Tue Nov 01, 2005 3:45 pm; edited 2 times in total

----------

## wnelson

It is there device drivers/ i2c. Did you do a make oldconfig?

----------

## <3

I compiled everything under device drivers / i2c as a module except the debugging stuff. I even pressed '/' to do a search on "i2c_sensor"

----------

## <3

I did not do a make oldconfig I did everything by hand. Also I tried doing a word search for "i2c_sensor" nothing was found in the 2.6.14 version of .config but I was able to find it in the 2.6.13-r3's .config.

----------

## Cintra

Thats right, but sensors are still working ok for me on 2.6.14..

mvh

----------

## <3

sensors is working, sort of, sensors used to show more info then what it shows now and the gkrellm2 sensors are not showing my temps and fanspeeds anymore. But more importantly fancontrol is not working properly, and I think it is because i2c_sensor is not loaded. Cintra what modules are you using for sensors? I also tried re-running sensors-detect but that didn't seem to help at all.

----------

## Cintra

from lsmod

```
i2c_core   17040  7 tda9887,tuner,saa7134,i2c_i801,eeprom,i2c_dev,asb100
```

mvh

----------

## <3

ok I got lm_sensors to work by downgrading to lm_sensors 2.9.1-r1. But I can't get fancontrol to work here is what I get when I try to start it.

```
#fancontrol

Loading configuration from /etc/fancontrol ...

Common settings:

  INTERVAL=10

Settings for 2-0290/pwm2:

  Depends on 2-0290/temp2_input

  Controls 2-0290/fan1_input

  MINTEMP=40

  MAXTEMP=50

  MINSTART=150

  MINSTOP=100

Settings for 2-0290/pwm3:

  Depends on 2-0290/temp3_input

  Controls

  MINTEMP=1

  MAXTEMP=9

  MINSTART=150

  MINSTOP=100

Settings for 2-0290/pwm1:

  Depends on 2-0290/temp1_input

  Controls

  MINTEMP=0

  MAXTEMP=25

  MINSTART=150

  MINSTOP=100

Enabling PWM on fans...

Starting automatic fan control...

cat: 2-0290/temp2_input: No such file or directory

Error reading temperature from /sys/bus/i2c/devices/2-0290/temp2_input

Aborting, restoring fans...

/usr/sbin/fancontrol: line 123: 2-0290/pwm2: No such file or directory

/usr/sbin/fancontrol: line 123: 2-0290/pwm3: No such file or directory

/usr/sbin/fancontrol: line 123: 2-0290/pwm1: No such file or directory

Verify fans have returned to full speed
```

----------

## nordpolcamper

Just the directory where the sensor data is displayed, has changed. Look at /sys/bus/i2c/devices/. There should be a directory containing the sensor data. On my mchine it has changed from /sys/bus/i2c/devices/0-0290/ to /sys/bus/i2c/devices/9191-0290/ after upgrading to gentoo-sourcesl 2.6.14. You can easily change the sensor directory in /etc/fancontrol.

rgds

berny

----------

## <3

how do I go about changing the directory? My old directory isn't listed in /etc/fancontrol.

----------

## nordpolcamper

As I can see in the output of your fancontrol program, the directory is listed.

That's my /etc/fancontrol:

INTERVAL=10

FCTEMPS=9191-0290/pwm2=9191-0290/temp2_input 9191-0290/pwm1=9191-0290/temp3_input

FCFANS=9191-0290/pwm2=9191-0290/fan2_input 9191-0290/pwm1=9191-0290/fan1_input

MINTEMP=9191-0290/pwm2=0 9191-0290/pwm1=25

MAXTEMP=9191-0290/pwm2=45 9191-0290/pwm1=50

MINSTART=9191-0290/pwm2=100 9191-0290/pwm1=220

MINSTOP=9191-0290/pwm2=75 9191-0290/pwm1=95

Consider, that the directory is specified relativly. In my case it is "9191-0290". The absolute path on my machine is "/sys/bus/i2c/devices/9191-0290". So I put, as you can comprehend, "9191-0290" as relativ path into /etc/fancontrol.

In your case, you have to look which directory is located at /sys/bus/i2c/devices and put that directory instead of "2-0290" to your /etc/fancontrol.

For example, if the new sensor directory is "/sys/bus/i2c/devices/0-0290" then you have to replace all "2-0290" in your /etc/fancontrol with "0-0290".

rgds

berny

----------

## nordpolcamper

As I read before, you have the same problem with gkrellm. Gkrellm does not recognize, if the sensor directory changes. You have to do that manually. You can easily reconfigure your sensors in the configuration tab (F1 -> Builtins -> Sensors -> Temperatures/Fans/Voltages) by enabling the listed checkboxes. 

rgds

berny

----------

## <3

ok thx a bunch now it works, but why did the directory change in the first place? And what ever happend to the i2c_sensor module?

----------

## nordpolcamper

It looks like, that the i2c_sensor module was replaced by hwmon and hwmon_vid, but I don't know why. Maybe a re-design of "how the kernel works with hardware sensors". I have no idea, why the directory has changed. Perhaps the number has to do with the address or virtual address of the hw-sensors. If you have another device with i2c-busses on it (for example a tv-tuner-card which uses the bttv kernel module) you will see more directories named by numbers in /sys/bus/i2c/devices. But I don't know whether my acceptation is accurate or not.

rgds

berny

----------

## nordpolcamper

I think it also depends on the type of mainboard you are using. It seems that only msi-k8n-neo2 mainboards are affected.

my machine:

K8N Neo2 Platinum

AMD64 3000+

4x256MB RAM

rgds

berny

----------

