ACPI_PANASONIC(4)

πŸ“¦ version 15.1, in freebsd 14.5, freebsd 15.1, nixpkgs unstable

πŸ’– ACPI_PANASONIC(4) β€” the Panasonic laptop hotkey driver, explained bestie-style πŸ’–

Okay so real talk, this is the acpi_panasonic manual page from the Kernel Interfaces Manual, and it's literally about a driver that makes your Panasonic laptop's hotkeys actually do stuff. Let's get into it ✨


🌸 NAME 🌸

acpi_panasonic β€” the ACPI hotkey driver for Panasonic laptops. That's it, that's the vibe 🫢


πŸŽ€ SYNOPSIS πŸŽ€

So if you wanna compile this driver into the kernel itself (main character energy), you drop this line into your kernel configuration file:

device acpi_panasonic

OR, if you'd rather load it as a module at boot time (lowkey easier ngl), you put this line in loader.conf(5):

acpi_panasonic_load="YES"

✨ DESCRIPTION ✨

The acpi_panasonic driver is basically the plug that unlocks a bunch of hotkey glow-ups on various Panasonic laptops β€” we're talking changing LCD brightness, controlling mixer volumes, entering sleep or suspended state, and so on. It's giving "utility queen" πŸ‘‘

On these models it's reported to work (allegedly, bestie, don't come for me): Let's note (or Toughbook, outside Japan) CF-R1N, CF-R2A and CF-R3. It may also work on other models as well πŸ’…

The driver consists of three functionalities, and each one is iconic in its own way. The first is to detect hotkey events and take corresponding actions, which include changing LCD luminance and speaker mute state. The second role is to notify occurrences of the event by way of devctl(4) and eventually to devd(8). The third and last is to provide a way to adjust LCD brightness and sound mute state via sysctl(8). Three jobs, one driver, no cap 🌈

πŸ”₯ Hotkeys πŸ”₯

There are 9 hotkeys available on the supported hardware β€” count 'em, nine:

  • Fn+F1 β€” Make LCD backlight darker.
  • Fn+F2 β€” Make LCD backlight brighter.
  • Fn+F3 β€” Switch video output between LCD and CRT. Not supported by the acpi_panasonic driver (sorry bestie, this one's a no πŸ™ˆ).
  • Fn+F4 β€” Toggle muting the speaker.
  • Fn+F5 β€” Turn the mixer volume down.
  • Fn+F6 β€” Turn the mixer volume up.
  • Fn+F7 β€” Enter suspend-to-RAM state.
  • Fn+F9 β€” Show battery status.
  • Fn+F10 β€” Enter suspend-to-disk state.

Actions are automatically taken within the driver for Fn+F1, Fn+F2 and Fn+F4 β€” like, the driver just handles those itself, slay. For the other events such as mixer control and showing battery status, devd(8) should take the role as described below πŸ’œ

πŸ¦‹ devd(8) Events πŸ¦‹

When notified to devd(8), the hotkey event provides the following info (it's giving a whole info packet, honestly):

  • system β€” "ACPI"
  • subsystem β€” "Panasonic"
  • type β€” The source of the event in ACPI namespace. The value depends on the model but typically "\_SB_.HKEY".
  • notify β€” Event code (see below πŸ‘‡).

Event codes to be generated are assigned as follows:

  • 0x81-0x86, 0x89 β€” Fn+F<n> pressed. 0x81 corresponds to Fn+F1, 0x82 corresponds to Fn+F2, and so on.
  • 0x01-0x07, 0x09, 0x1a β€” Fn+F<n> released. 0x01 corresponds to Fn+F1, 0x02 corresponds to Fn+F2, and so on.

⭐ SYSCTL VARIABLES ⭐

The following MIBs are available, and honestly they're all pretty self-explanatory but let's go through 'em:

  • hw.acpi.panasonic.lcd_brightness_max β€” The maximum level of brightness. This read-only value is automatically set according to hardware model. It knows its limits, we love that πŸŽ€
  • hw.acpi.panasonic.lcd_brightness_min β€” The minimum level of brightness. This read-only value is automatically set according to hardware model. Same energy, opposite end of the scale πŸ’…
  • hw.acpi.panasonic.lcd_brightness β€” Current brightness level of the LCD (read-write). The value ranges from hw.acpi.panasonic.lcd_brightness_min to hw.acpi.panasonic.lcd_brightness_max. You can read it, you can write it, it's flexible like that ✨
  • hw.acpi.panasonic.sound_mute β€” A read-write boolean flag to control whether to mute the speaker. The value 1 means to mute and 0 not. Binary queen πŸ‘‘

🌈 SEE ALSO 🌈

acpi(4), devd.conf(5), devd(8), sysctl(8) β€” go read these too, bestie, they're all part of the ecosystem 🫢


🌸 HISTORY 🌸

The acpi_panasonic driver first appeared in FreeBSD 5.3. A whole era, honestly ⭐


πŸ’– AUTHORS πŸ’–

The acpi_panasonic driver and this manual page were written by OGAWA Takaya <t-ogawa@triaez.kaisei.org> and TAKAHASHI Yoshihiro <nyan@FreeBSD.org>. Legends, both of them πŸ‘‘πŸ”₯


Okay so that's the whole page! This beauty comes from the Debian source, dated June 19, 2015, and it's ACPI_PANASONIC(4) β€” catch you in the next manpage, bestie πŸ’•πŸ¦‹βœ¨

πŸ“¦ where this page comes from