mirror of https://github.com/Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
116 lines
4.2 KiB
116 lines
4.2 KiB
Kernel driver smsc47m192 |
|
======================== |
|
|
|
Supported chips: |
|
|
|
* SMSC LPC47M192, LPC47M15x, LPC47M292 and LPC47M997 |
|
|
|
Prefix: 'smsc47m192' |
|
|
|
Addresses scanned: I2C 0x2c - 0x2d |
|
|
|
Datasheet: The datasheet for LPC47M192 is publicly available from |
|
|
|
http://www.smsc.com/ |
|
|
|
The LPC47M15x, LPC47M292 and LPC47M997 are compatible for |
|
|
|
hardware monitoring. |
|
|
|
|
|
|
|
Author: |
|
- Hartmut Rick <[email protected]> |
|
|
|
- Special thanks to Jean Delvare for careful checking |
|
of the code and many helpful comments and suggestions. |
|
|
|
|
|
Description |
|
----------- |
|
|
|
This driver implements support for the hardware sensor capabilities |
|
of the SMSC LPC47M192 and compatible Super-I/O chips. |
|
|
|
These chips support 3 temperature channels and 8 voltage inputs |
|
as well as CPU voltage VID input. |
|
|
|
They do also have fan monitoring and control capabilities, but the |
|
these features are accessed via ISA bus and are not supported by this |
|
driver. Use the 'smsc47m1' driver for fan monitoring and control. |
|
|
|
Voltages and temperatures are measured by an 8-bit ADC, the resolution |
|
of the temperatures is 1 bit per degree C. |
|
Voltages are scaled such that the nominal voltage corresponds to |
|
192 counts, i.e. 3/4 of the full range. Thus the available range for |
|
each voltage channel is 0V ... 255/192*(nominal voltage), the resolution |
|
is 1 bit per (nominal voltage)/192. |
|
Both voltage and temperature values are scaled by 1000, the sys files |
|
show voltages in mV and temperatures in units of 0.001 degC. |
|
|
|
The +12V analog voltage input channel (in4_input) is multiplexed with |
|
bit 4 of the encoded CPU voltage. This means that you either get |
|
a +12V voltage measurement or a 5 bit CPU VID, but not both. |
|
The default setting is to use the pin as 12V input, and use only 4 bit VID. |
|
This driver assumes that the information in the configuration register |
|
is correct, i.e. that the BIOS has updated the configuration if |
|
the motherboard has this input wired to VID4. |
|
|
|
The temperature and voltage readings are updated once every 1.5 seconds. |
|
Reading them more often repeats the same values. |
|
|
|
|
|
sysfs interface |
|
--------------- |
|
|
|
===================== ========================================================== |
|
in0_input +2.5V voltage input |
|
in1_input CPU voltage input (nominal 2.25V) |
|
in2_input +3.3V voltage input |
|
in3_input +5V voltage input |
|
in4_input +12V voltage input (may be missing if used as VID4) |
|
in5_input Vcc voltage input (nominal 3.3V) |
|
This is the supply voltage of the sensor chip itself. |
|
in6_input +1.5V voltage input |
|
in7_input +1.8V voltage input |
|
|
|
in[0-7]_min, |
|
in[0-7]_max lower and upper alarm thresholds for in[0-7]_input reading |
|
|
|
All voltages are read and written in mV. |
|
|
|
in[0-7]_alarm alarm flags for voltage inputs |
|
These files read '1' in case of alarm, '0' otherwise. |
|
|
|
temp1_input chip temperature measured by on-chip diode |
|
temp[2-3]_input temperature measured by external diodes (one of these |
|
would typically be wired to the diode inside the CPU) |
|
|
|
temp[1-3]_min, |
|
temp[1-3]_max lower and upper alarm thresholds for temperatures |
|
|
|
temp[1-3]_offset temperature offset registers |
|
The chip adds the offsets stored in these registers to |
|
the corresponding temperature readings. |
|
Note that temp1 and temp2 offsets share the same register, |
|
they cannot both be different from zero at the same time. |
|
Writing a non-zero number to one of them will reset the other |
|
offset to zero. |
|
|
|
All temperatures and offsets are read and written in |
|
units of 0.001 degC. |
|
|
|
temp[1-3]_alarm alarm flags for temperature inputs, '1' in case of alarm, |
|
'0' otherwise. |
|
temp[2-3]_input_fault diode fault flags for temperature inputs 2 and 3. |
|
A fault is detected if the two pins for the corresponding |
|
sensor are open or shorted, or any of the two is shorted |
|
to ground or Vcc. '1' indicates a diode fault. |
|
|
|
cpu0_vid CPU voltage as received from the CPU |
|
|
|
vrm CPU VID standard used for decoding CPU voltage |
|
===================== ========================================================== |
|
|
|
The `*_min`, `*_max`, `*_offset` and `vrm` files can be read and written, |
|
all others are read-only.
|
|
|