aibs(4): ASUSTeK AI Booster (ACPI ATK0110) Hardware Monitor
Constantine A. Murenin
cnst at FreeBSD.org
Mon Apr 5 06:12:11 UTC 2010
Dear freebsd-{acpi,drivers,hardware}@,
Attached patch provides support for the hardware monitoring capabilities
that are present in many modern desktop motherboards from ASUS featuring
the ATK0110 ACPI device.
This driver, aibs(4), is a fresh replacement for FreeBSD's existing
acpi_aiboost(4). The new aibs(4) driver has the following advantages
when compared to the old acpi_aiboost(4):
* the sensors are now provided through the user-serviceable hw.acpi.aibs0
tree (with a subtree for each sensor type), instead of the Newbus-internal
dev.acpi_aiboost.0 tree that contains various nonprime data at the same
level as the actual sensors
* the supposed range specifications are now reported
for each input that is being sensed
* the nature of the new tree, with "volt", "temp" and "fan" subtrees,
allows one to specifically query for the sensors of a certain type
* the temperature sensors are exported in the temperature 'K' units through
sysctl(9), such that they are pretty-printed by sysctl(8) automatically
* more user documentation is provided
It is expected that aibs(4) should replace any and all functionality
previously provided by acpi_aiboost(4), provide additional features as
specified above and decrease the size of both the source and the binary
code. Please find the demonstration below.
> ll /usr/c/src/sys/dev/acpi_support/{acpi_aiboost,atk0110}.c
-rw-r--r-- 1 constant wheel 8919 Apr 3 20:31 /usr/c/src/sys/dev/acpi_support/acpi_aiboost.c
-rw-r--r-- 1 constant wheel 8638 Apr 4 17:34 /usr/c/src/sys/dev/acpi_support/atk0110.c
> ll /boot/kernel/*aib*s*
-r-xr-xr-x 1 root wheel 11581 Apr 4 18:24 /boot/kernel/acpi_aiboost.ko
-r-xr-xr-x 1 root wheel 24504 Apr 4 18:24 /boot/kernel/acpi_aiboost.ko.symbols
-r-xr-xr-x 1 root wheel 9958 Apr 4 18:24 /boot/kernel/aibs.ko
-r-xr-xr-x 1 root wheel 24924 Apr 4 18:24 /boot/kernel/aibs.ko.symbols
> sudo kldload acpi_aiboost.ko
> sysctl dev.acpi_aiboost.0
dev.acpi_aiboost.0.%desc: ASUStek AIBOOSTER
dev.acpi_aiboost.0.%driver: acpi_aiboost
dev.acpi_aiboost.0.%location: handle=\_SB_.PCI0.SBRG.ASOC
dev.acpi_aiboost.0.%pnpinfo: _HID=ATK0110 _UID=16843024
dev.acpi_aiboost.0.%parent: acpi0
dev.acpi_aiboost.0.temp0: 310
dev.acpi_aiboost.0.temp1: 580
dev.acpi_aiboost.0.volt0: 1192
dev.acpi_aiboost.0.volt1: 3312
dev.acpi_aiboost.0.volt2: 5017
dev.acpi_aiboost.0.volt3: 12302
dev.acpi_aiboost.0.fan0: 912
dev.acpi_aiboost.0.fan1: 0
> sysctl -d dev.acpi_aiboost.0
dev.acpi_aiboost.0:
dev.acpi_aiboost.0.%desc: device description
dev.acpi_aiboost.0.%driver: device driver name
dev.acpi_aiboost.0.%location: device location relative to parent
dev.acpi_aiboost.0.%pnpinfo: device identification
dev.acpi_aiboost.0.%parent: parent device
dev.acpi_aiboost.0.temp0: CPU Temperature
dev.acpi_aiboost.0.temp1: MB Temperature
dev.acpi_aiboost.0.volt0: Vcore Voltage
dev.acpi_aiboost.0.volt1: +3.3 Voltage
dev.acpi_aiboost.0.volt2: +5 Voltage
dev.acpi_aiboost.0.volt3: +12 Voltage
dev.acpi_aiboost.0.fan0: CPU FAN Speed
dev.acpi_aiboost.0.fan1: CHASSIS FAN Speed
> sudo kldunload acpi_aiboost.ko
> sudo kldload aibs.ko
> sysctl hw.acpi.aibs0
hw.acpi.aibs0.volt.0: 1192 850 1600
hw.acpi.aibs0.volt.1: 3312 2970 3630
hw.acpi.aibs0.volt.2: 5017 4500 5500
hw.acpi.aibs0.volt.3: 12302 10200 13800
hw.acpi.aibs0.temp.0: 31.0C 80.0C 95.0C
hw.acpi.aibs0.temp.1: 58.0C 60.0C 95.0C
hw.acpi.aibs0.fan.0: 907 600 7200
hw.acpi.aibs0.fan.1: 0 700 7200
> sysctl -d hw.acpi.aibs0
hw.acpi.aibs0: ASUSTeK AI Booster (ACPI ASOC ATK0110)
hw.acpi.aibs0.volt.0: Vcore Voltage
hw.acpi.aibs0.volt.1: +3.3 Voltage
hw.acpi.aibs0.volt.2: +5 Voltage
hw.acpi.aibs0.volt.3: +12 Voltage
hw.acpi.aibs0.temp.0: CPU Temperature
hw.acpi.aibs0.temp.1: MB Temperature
hw.acpi.aibs0.fan.0: CPU FAN Speed
hw.acpi.aibs0.fan.1: CHASSIS FAN Speed
> sudo kldunload aibs.ko
Best regards,
Constantine.SU.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: svn_diff.aibs.r0.2010-04-04T205818-0400.patch
Type: text/x-diff
Size: 17424 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-hardware/attachments/20100405/e35b4d72/svn_diff.aibs.r0.2010-04-04T205818-0400.bin
More information about the freebsd-hardware
mailing list