Upgrading Toshiba ACPI to support bluetooth/fnfx/toshset

From openSUSE

WARNING: this works on a Toshiba Portege M300, but may not work on every/any other Toshiba

The standard toshiba_acpi module does not support:

  • using Fn+F8 to switch on/off the bluetooth radio using fnfx
  • the use of toshset -- a binary that enables a number of Toshiba features under Linux
  • access to a number of Toshiba features.

Follow these steps:

  • install kernel-source using YaST
  • backup files to /tmp
  • copy the new toshiba_acpi source to where the current toshiba_acpi.c file is
  • cd to where the linux sources are
  • run the make preparatory scripts
  • cd to where the toshiba_acpi.c source file is
  • make the new module
  • copy the new module to its final location (note that "2.6.16.21-0.25-default" will vary depending on what kernel version you are using
  • unload the current module
  • load the new module

On my system it looked like this (run as root)

# cp /lib/modules/2.6.16.21-0.25-default/kernel/drivers/acpi/toshiba_acpi.ko /tmp/toshiba_acpi.ko.orig
# cp /usr/src/linux/drivers/acpi/toshiba_acpi.c /tmp/toshiba_acpi.c.orig
# cp /tmp/toshiba_acpi.c.withbluetooth+patch /usr/src/linux/drivers/acpi/toshiba_acpi.c
# cd /usr/src/linux
# make oldconfig
# make scripts
# make prepare
# cd /usr/src/linux/drivers/acpi
# make -C /usr/src/linux M=$(pwd)
# make -C /usr/src/linux M=$(pwd) modules_install
# cp toshiba_acpi.ko /lib/modules/2.6.16.21-0.25-default/kernel/drivers/acpi/
# modeprobe -r toshiba_acpi
# modprobe -a toshiba_acpi.

References

Rui Carmo Mair Allen-Williams