![]() |
![]()
| ![]() |
![]()
NAMEacpi_fujitsu —
Fujitsu Laptop Extras
SYNOPSISTo compile this driver into the kernel, place the following line in your kernel configuration file:device acpi_fujitsu Alternatively, to load the driver as a module at boot time, place the following line in loader.conf(5): acpi_fujitsu_load="YES" DESCRIPTIONTheacpi_fujitsu driver enables the ACPI-controlled
buttons on Fujitsu notebooks. The button events are sent to userspace via
devd(8),
and a
sysctl(8)
interface is provided to simulate the hardware events.
Using this driver, one can control the brightness of the display, the volume of the speakers, and the internal (eraserhead) mouse pointer. SYSCTL VARIABLESThese sysctls are currently implemented:
Defaults for these sysctls can be set in sysctl.conf(5). EXAMPLESThe following can be added to devd.conf(5) in order to pass button events to a /usr/local/sbin/acpi_oem_exec.sh script:notify 10 { match "system" "ACPI"; match "subsystem" "FUJITSU"; action "/usr/local/sbin/acpi_oem_exec.sh $notify fujitsu"; }; A possible /usr/local/sbin/acpi_oem_exec.sh script might look like: #!/bin/sh # if [ "$1" = "" -o "$2" = "" ] then echo "usage: $0 notify oem_name" exit 1 fi NOTIFY=`echo $1` LOGGER="logger" CALC="bc" BC_PRECOMMANDS="scale=2" ECHO="echo" CUT="cut" MAX_LCD_BRIGHTNESS=7 MAX_VOLUME=16 OEM=$2 DISPLAY_PIPE=/tmp/acpi_${OEM}_display case ${NOTIFY} in 0x00) LEVEL=`sysctl -n hw.acpi.${OEM}.mute` if [ "$LEVEL" = "1" ] then MESSAGE="volume muted" else MESSAGE="volume unmuted" fi ;; 0x01) LEVEL=`sysctl -n hw.acpi.${OEM}.pointer_enable` if [ "$LEVEL" = "1" ] then MESSAGE="pointer enabled" else MESSAGE="pointer disabled" fi ;; 0x02) LEVEL=`sysctl -n hw.acpi.${OEM}.lcd_brightness` PERCENT=`${ECHO} "${BC_PRECOMMANDS} ; \ ${LEVEL} / ${MAX_LCD_BRIGHTNESS} * 100" |\ ${CALC} | ${CUT} -d . -f 1` MESSAGE="brightness level ${PERCENT}%" ;; 0x03) LEVEL=`sysctl -n hw.acpi.${OEM}.volume` PERCENT=`${ECHO} "${BC_PRECOMMANDS} ; \ ${LEVEL} / ${MAX_VOLUME} * 100" | \ ${CALC} | ${CUT} -d . -f 1` MESSAGE="volume level ${PERCENT}%" ;; *) ;; esac ${LOGGER} ${MESSAGE} if [ -p ${DISPLAY_PIPE} ] then ${ECHO} ${MESSAGE} >> ${DISPLAY_PIPE} & fi exit 0 SEE ALSOacpi(4), sysctl.conf(5), devd(8), sysctl(8)HISTORYTheacpi_fujitsu driver first appeared in
FreeBSD 5.4.
AUTHORSTheacpi_fujitsu driver was written by
Sean Bullington
<shegget@gmail.com>,
Anish Mistry
<mistry.7@osu.edu>, and
Marc Santcroos
<marks@ripe.net>.
This manual page was written by Philip Paeps <philip@FreeBSD.org>.
|