The Panasonic Hotkey Driver implements hotkey functionality for Panasonic R1(N variant), R2, R3, T2, W2, and Y2 laptops on linux for machines running a 2.6 kernel.
You can find more generic information about Linux on Panasonic on David's Linux and the Panasonic R4 site, and it may helps you! Thanks a lot to David!
upload upated driver for kernels after 2.6.15
The hotkey driver currently implements:
- Hotkeys for raising and lowering brightness(Fn+F1, Fn+F2), muting sound (Fn+F4), raising and lowering volume (Fn+F5, Fn+F6), suspending to RAM (Fn+F7), spinning down the hard drive (Fn+F9), and suspending to disk (Fn+F10)
- An interface for setting the screen brightness (see Technical Details section for more info)
- An interface for muting the sound (not used; 0 for unmuted, 1 for muted)
- An interface for reading the LCD type (0 for normal, 1 for semi-transparent)
- An interface for reading the number of batteries installed
- On some models, an interface for reading the current environment state (1 for normal temperature, 129 for high temperature, 0 for not implemented)
The hotkey driver currently does not implement:
- The monitor switch hotkey (Fn+F3); this is because we haven't figured out how
- An interface to enable or disable the internal and external display; this is something that could be done easily
Suspending to RAM is intentionally disabled because it does not work well on Linux. If you want it to work, you can add code to
hotkey.pl to implement it.
In order to get the driver working, you will need:
- A 188.8.131.52 or greater kernel source tree
- A Panasonic R1(N variant), R2, R3, T2, W2, or Y2 laptop
acpidrunning on your system
- A Perl interpreter (this is for the key handler)
For anything more than the bare minimum of raising and lowering screen brightness, you'll want to have:
- ALSA installed and functioning for sound functions
- Software suspend configured in your kernel (see below)
hdparmif you want to be able to spin down your disk
You'll need to download at least the hotkey handler and an appropriate kernel patch to get this to work. You'll probably want the AC adapter handler too.
You may want not to patch kernel but make modules outside of kernel tree. You can download driver package.
- kernel 2.6.x series : pcc-acpi-0.9.tar.bz2(for >= 2.6.18)
- kernel 2.6.x series : pcc-acpi-0.8.4.tar.gz(for >= 2.6.15)
- Hotkey Handler: hotkey-handler-1.4.tar.gz(after driver 0.8)
- AC Power Handler: ac-power-handler-1.0.tar.gz
updated hotkeys utility
- hotkeys utility: hotkeys-0.6.1.tar.gz this is updated hotkeys utility.
- hotkeys utility: hotkeys_0.6.1_i386.deb debian(sarge) package of above.
- hotkeys system confguration: hotkeys.conf you can use it with driver after 0.8
- Kernel 184.108.40.206: pcc-acpi-0.8.1.all.patch
video switch drivers
- Kernel 220.127.116.11, 2.6.9-rc1: acpi_video-18.104.22.168.patch
Instructions by driver package
You will need to download a driver package. It is now only support 2.6 series kernel. You'll also need a script to handle the hotkey events.
Download and untar driver package.
cd into package directory
pcc-acpi-0.8/ and type
make;su make install then driver automatically compile and install proper place. If you want to compile for the version that you don't run, please use instructions by kernel patch.
After install, type
su depmod -aand
su modprobe pcc_acpi then driver will be loaded to running kernel.
Instructions by patch
You will need to download an appropriate patch for your kernel. You'll also need a script to handle the hotkey events; one which works is available below.
Patching the kernel
Download an appropriate patch for your kernel.
cd into your kernel source directory. Run the following command:
patch -p1 < location_of_patch
make menuconfig or use your favourite method of kernel configuration.
- Go under "Code maturity level options" and enable "Prompt for development and/or incomplete code/drivers". Then exit this menu.
- Go under "Power Management Options (ACPI, APM)" and enable "Power Management support".
- If you want suspend-to-disk (hibernate) to work, enable "Software Suspend"
- Enter the "ACPI (Advanced Configuration and Power Interface) Support" menu.
- Enable "ACPI support"
- Select "AC Adapter" as a built-in
- Select all other ACPI options you want
- Select "Panasonic Laptop Extras" as a built-in
menuconfig (or your favourite configuration utility) and build and install the kernel.
acpid for using the new Hotkey driver, you will need to download the "Hotkey Handler" package (listed under downloads). Untar this file in
/etc/acpi (or your distribution's
acpid configuration location).
If you want acpid to reduce the screen brightness when on battery power, you should also download the "AC Power Handler" package (listed under downloads) Untar this file in
/etc/acpi (or your distribution's
acpid configuration location).
If you plan not to use GUI for volume and mute(hotkeys or Gnome), please edit hotkey.pl to change $config values as "mute_mode" = 0 or 1 and "mixer_mode" = 0. In default, these are set to 2 that mean volume and mute is set by GUI utility.
hotkeys or Gnome shortcut keys
download new hotkeys utility which support Panasonic. If you use Debian GNU/Linux, you only download deb package. Not so, you may download source package and compile. It is easy to compile.
$ make install
hotkeys for using the hotkey driver, you will need to download the "pcc.def" file(listed under downloads). Make directory $HOME/.hotkeys and copy this file. After you launch
hotkeys -t pcc
, you may show overlay gui by pushing Fn+F1,F2, Fn+F4, Fn+F5, Fn+F6 hotkeys.
Now you are ready to restart the system. Reboot. Try the hotkeys. Do they work? If so, great! If not, please see the Troubleshooting section.
So, it isn't working for you. To try and save you (and us!) a lot of time, I've assembled a checklist of things to check before reporting a bug. Please go through the following steps before sending us an email:
- Review the requirements and ensure that they are all present and functional
- Ensure acpi is enabled on your machine by checking that
- Make sure the hotkey driver is enabled by running
ls /proc/acpi/pcc/. If it says "
No such file or directory" then the hotkey driver is not installed and operational.
acpidis installed and running
- Make sure that
/etc/acpi/hotkey.plexists and is executable, and that
If this does not solve your problem and you are sure that it should work, please email (dbronaugh (at) linuxboxen (dot) org) or (miura (at) da-cha (dot) org). Make sure you include:
- The output of
- Your kernel's .config
- The output of
- The model of your laptop (CF-R1N62ZVKM for example) and details about its configuration
- A description of the problem
- A patch which fixes the problem (yeah, we don't really expect this)
The hotkey part of the kernel driver emits ACPI events (like the AC adapter does, etc). These are caught by acpid and dispatched via /etc/acpi/events/hotkey to /etc/acpi/hotkey.pl . hotkey.pl in turn performs the appropriate action, be it setting volume, muting the sound card, changing the brightness, spinning down the hard drive, or suspending to disk. The driver also emit key input events (same as normal keyboard). These are caught by Gnome shortcut key configuration and hotkeys utilities. It is useful to show GUI and launch helper programs.
Screen brightness controls on the Panasonic laptops look complicated, but in the end they make sense. The driver implements these using 6 files:
ac_brightness, ac_brightness_max, ac_brightness_min, dc_brightness, dc_brightness_max, dc_brightness_min. All the files prefixed with
ac_ are for controlling the brightness when the laptop is under AC power. They affect persistent (across reboot) status registers which store the screen brightness, as well as controlling the actual brightness. The files prefixed with
dc_ do the same for when the laptop is under battery power.
When the AC Power Handler script is being used, when AC power is connected the
ac_brightness value is loaded. The
dc_brightness field is not affected by this. Likewise, when AC power is disconnected, the
dc_brightness value is loaded; the
ac_brightness register is not affected by this. So, there are effectively 2 sets of brightness -- one set for when the laptop is under DC power, and one set for when the laptop is under AC power.
*_brightness_min files show the minimum brightness for their respective power levels. Likewise, the
*_brightness_max files show the maximum brightness for their respective power levels.
- David"s Linux and the Panasonic R4
- Linux on the Panasonic CF-Y5
- GNU/Linux on the Panasonic Let"s Note T2
- HARDWARE Panasonic W5 - Gentoo Linux wiki
- Debian Linux for CF-W4 (Let"s note)(Japanese)
- Panasonic Let"s note CF-T1 (CF-T1RWAXR) への Plamo Linux Install Memo(Japanese)
- Panasonic Let"s Note CF-R4 - laptop 用の kernel 再構築 (Japanese)
- Debian Sarge on Let"s Note CF-Y4(Japanese)
- Panasonic Let"s note Light T4 でLinux (Vine Linux 4.0)を使う(Japanese)
- Let"s Note CF-W5にDebianをインストール
- A patch to handle CD on/off button(need to merge)
First created on Aug 23, 2004 by David Bronaugh Last modified by Hiroshi Miura