The schematics of the ALIX.3D3 mention a temperature sensors LM86 on page 2 which external sensors pins are connected to the TDP/TDN pins of the Geode LX800 CPU. So this sensor should be able to measure CPU and mainboard temperature.
To support the temperature sensor by the linux kernel, several options must be set:
Device Drivers ---> <*> I2C support ---> <*> I2C device interface I2C Hardware Bus support ---> <*> Geode ACCESS.bus support <*> Hardware Monitoring support ---> <*> National Semiconductor LM90 and compatibles
After compiling and booting the kernel, we need some userspace tools to read information by the temperatur sensor. Usually this is done by Lm_sensors. Gentoo provides ebuilds so you should be fine with
emerge -va lm_sensors
After emerging, you should run
to search for sensors. The program will ask you some question on which devices it should scan for sensors and which modules should be loaded. If you compiled everything into kernel (not into modules) you should be fine with
We can start with probing for (PCI) I2C or SMBus adapters. Do you want to probe now? (YES/no): YES Probing for PCI bus adapters... Use driver `scx200_acb' for device 0000:00:0f.0: CS5536 [Geode companion] ISA We will now try to load each adapter module in turn. Load `scx200_acb' (say NO if built into your kernel)? (YES/no): no If you have undetectable or unsupported I2C/SMBus 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: CS5536 ACB0 (i2c-0) Do you want to scan it? (YES/no/selectively): YES Client found at address 0x4c Handled by driver `lm90' (already loaded), chip type `lm86' 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): 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): no Some south bridges, CPUs or memory controllers may also contain embedded sensors. Do you want to scan for them? (YES/no): no
After answering all questions, sensor-detect should be able to find your sensor
Driver `lm90' (should be inserted): Detects correctly: * Bus `CS5536 ACB0' Busdriver `UNKNOWN', I2C address 0x4c Chip `lm86' (confidence: 6)
sensors-detect will ask to save config (say YES) and propose some to commands to be executed, but we don’t care, because we compiled everything direct into kernel.
Now sould be able to run sensors and get temperatures:
lm86-i2c-0-4c Adapter: CS5536 ACB0 M/B Temp: +47 C (low = +0 C, high = +70 C) CPU Temp: +56.8 C (low = +0.0 C, high = +70.0 C) M/B Crit: +85 C (hyst = +75 C) CPU Crit: +85 C (hyst = +75 C)
If everthing’s fine, you can add lm_sensors to default runlevel with
rc-update add lm_sensors default