PMU(4)

πŸ“¦
version 15.1 Β· 2 versions
, in freebsd 14.5, freebsd 15.1

πŸ’– PMU(4) πŸ’–

okay so welcome to the powerpc Kernel Interfaces Manual entry for PMU(4) β€” it’s giving iconic Apple power-brain energy, no cap ✨

🌸 NAME 🌸

pmu β€” the Apple PMU99 Power Management Driver, bestie πŸ’…

πŸ› οΈ SYNOPSIS πŸ› οΈ

To compile this driver into the kernel, place the following lines in your kernel configuration file:

device adb
device pmu

πŸ¦‹ DESCRIPTION πŸ¦‹

The pmu driver provides support for the Power Management Unit (PMU) found in Apple Core99 hardware. This includes late G3 laptops, all G4 machines, early G5 desktops and all G5 XServes. Literally the whole era, bestie πŸ‘‘

The Apple PMU controller is a multi-purpose ASIC that provides power management and thermal control, as well as an ADB bus for the internal keyboard and mouse on laptops. It’s giving β€œone chip, many jobs” main character energy πŸ”₯

πŸŽ€ HARDWARE πŸŽ€

Chips supported by the pmu driver include:

  • Apple KeyLargo PMU
  • Apple K2-KeyLargo PMU

⚑ SYSCTL VARIABLES ⚑

The pmu driver provides power management services in addition to an adb(4) interface. The following sysctls can be used to control the power management behavior and to examine current system power and thermal conditions. Peek at the vibes, bestie 🫢

  • dev.pmu.%d.server_mode β€” Restart after power failure behavior (1 causes system to reboot after power cut, 0 causes system to remain off).
  • dev.pmu.%d.batteries.%d.present β€” Indicates whether the relevant battery is inserted.
  • dev.pmu.%d.batteries.%d.charging β€” Indicates whether the battery is currently charging.
  • dev.pmu.%d.batteries.%d.charge β€” The current battery charge, in milliamp hours.
  • dev.pmu.%d.batteries.%d.maxcharge β€” The battery’s self-reported maximum charge, in milliamp hours.
  • dev.pmu.%d.batteries.%d.rate β€” The current into the battery, in milliamps. While the battery is discharging, this will be negative.
  • dev.pmu.%d.batteries.%d.voltage β€” Battery voltage, in millivolts.
  • dev.pmu.%d.batteries.%d.time β€” Estimated time until full battery charge (or discharge), in minutes.
  • dev.pmu.%d.batteries.%d.life β€” Current fraction of the battery’s maximum charge, in percent.

πŸ”— SEE ALSO πŸ”—

acpi(4), adb(4), led(4) β€” go read the bestie cross-refs, iykyk πŸ’œ

πŸ“œ HISTORY πŸ“œ

The pmu device driver appeared in NetBSD 4.0, and then in FreeBSD 8.0. Slay, generational crossover ✨

πŸ‘‘ AUTHORS πŸ‘‘

The pmu driver was written by Michael Lorenz <macallan@NetBSD.org> and ported to FreeBSD by Nathan Whitehorn <nwhitehorn@FreeBSD.org>. Iconic collab, fr fr πŸ’–

this cutie came from Debian, dated December 6, 2008, and it’s PMU(4) β€” mwah πŸ’‹

πŸ“¦ where this page comes from