This diff adds support for the Winbond W83627UHG chip, as found on the Lanner FW-7539 appliance. This diff was ported from DragonFly BSD:
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/245ec76bc1613b22cf282526fa9931e4c16e4237 Here is the "sysctl hw.sensors" output on that Lanner appliance before the diff: $ sysctl -n kern.version OpenBSD 5.2-beta (GENERIC.MP) #338: Tue Jun 26 22:52:57 MDT 2012 [email protected]:/usr/src/sys/arch/amd64/compile/GENERIC.MP $ sysctl hw.sensors hw.sensors.cpu0.temp0=13.00 degC hw.sensors.cpu1.temp0=13.00 degC And here's the output after the diff is applied: $ sysctl -n kern.version OpenBSD 5.2-beta (GENERIC.MP) #2: Thu Jun 28 16:14:19 EDT 2012 [email protected]:/usr/src/sys/arch/amd64/compile/GENERIC.MP $ sysctl hw.sensors hw.sensors.cpu0.temp0=13.00 degC hw.sensors.cpu1.temp0=13.00 degC hw.sensors.lm1.temp0=36.00 degC hw.sensors.lm1.temp1=29.00 degC hw.sensors.lm1.temp2=36.00 degC hw.sensors.lm1.fan1=4017 RPM hw.sensors.lm1.volt0=1.16 VDC (VCore) hw.sensors.lm1.volt1=4.96 VDC (+12V) hw.sensors.lm1.volt2=2.45 VDC (+3.3V) hw.sensors.lm1.volt3=2.40 VDC (+3.3V) hw.sensors.lm1.volt4=-8.79 VDC (-12V) hw.sensors.lm1.volt5=0.74 VDC hw.sensors.lm1.volt6=0.05 VDC hw.sensors.lm1.volt7=2.45 VDC (3.3VSB) hw.sensors.lm1.volt8=0.79 VDC (VBAT) $ dmesg | grep W83627 wbsio0 at isa0 port 0x2e/2: W83627UHG rev 0x32 lm1 at wbsio0 port 0xa10/8: W83627DHG Full dmesg at http://lteo.net/stuff/fw7539-dmesg.txt I am very new to this part of the code, and would really appreciate a review of the diff to make sure I did not miss anything. Comments and feedback welcome too. Thank you! Lawrence Index: share/man/man4/lm.4 =================================================================== RCS file: /cvs/src/share/man/man4/lm.4,v retrieving revision 1.23 diff -u -p -r1.23 lm.4 --- share/man/man4/lm.4 7 Dec 2011 14:47:19 -0000 1.23 +++ share/man/man4/lm.4 28 Jun 2012 21:02:04 -0000 @@ -86,7 +86,7 @@ Nuvoton NCT6776F .It Winbond W83627HF, W83627THF, W83637HF and W83697HF .It -Winbond W83627DHG and W83627EHF +Winbond W83627DHG, W83627UHG and W83627EHF .It Winbond W83781D, W83782D and W83783S .It Index: sys/dev/isa/wbsio.c =================================================================== RCS file: /cvs/src/sys/dev/isa/wbsio.c,v retrieving revision 1.7 diff -u -p -r1.7 wbsio.c --- sys/dev/isa/wbsio.c 6 Dec 2011 16:06:07 -0000 1.7 +++ sys/dev/isa/wbsio.c 28 Jun 2012 20:10:43 -0000 @@ -108,6 +108,7 @@ wbsio_probe(struct device *parent, void case WBSIO_ID_W83627EHF: case WBSIO_ID_W83627DHG: case WBSIO_ID_W83627DHGP: + case WBSIO_ID_W83627UHG: case WBSIO_ID_W83637HF: case WBSIO_ID_W83697HF: case WBSIO_ID_NCT6776F: @@ -159,6 +160,9 @@ wbsio_attach(struct device *parent, stru break; case WBSIO_ID_W83627DHGP: printf(": W83627DHG-P"); + break; + case WBSIO_ID_W83627UHG: + printf(": W83627UHG"); break; case WBSIO_ID_W83637HF: printf(": W83637HF"); Index: sys/dev/isa/wbsioreg.h =================================================================== RCS file: /cvs/src/sys/dev/isa/wbsioreg.h,v retrieving revision 1.2 diff -u -p -r1.2 wbsioreg.h --- sys/dev/isa/wbsioreg.h 7 Dec 2011 12:24:17 -0000 1.2 +++ sys/dev/isa/wbsioreg.h 28 Jun 2012 20:11:01 -0000 @@ -38,6 +38,7 @@ #define WBSIO_ID_W83627EHF 0x88 #define WBSIO_ID_W83627DHG 0xa0 #define WBSIO_ID_W83627DHGP 0xb0 +#define WBSIO_ID_W83627UHG 0xa2 #define WBSIO_ID_W83627SF 0x59 #define WBSIO_ID_W83637HF 0x70 #define WBSIO_ID_W83697HF 0x60
