# apparmor.d - Full set of apparmor profiles
# Copyright (C) 2025 Alexandre Pujol <alexandre@pujol.io>
# SPDX-License-Identifier: GPL-2.0-only

# Power
#
# Power enumeration starts from 1 not 0

  abi <abi/4.0>,

  include <abstractions/sys/hwmon>

  @{sys}/devices/**/hwmon@{int}/power@{int}_accuracy r,
  @{sys}/devices/**/hwmon@{int}/power@{int}_average r,
  @{sys}/devices/**/hwmon@{int}/power@{int}_average_highest r,
  @{sys}/devices/**/hwmon@{int}/power@{int}_average_interval r,
  @{sys}/devices/**/hwmon@{int}/power@{int}_average_interval_max r,
  @{sys}/devices/**/hwmon@{int}/power@{int}_average_interval_min r,
  @{sys}/devices/**/hwmon@{int}/power@{int}_average_lowest r,
  @{sys}/devices/**/hwmon@{int}/power@{int}_average_max r,
  @{sys}/devices/**/hwmon@{int}/power@{int}_average_min r,
  @{sys}/devices/**/hwmon@{int}/power@{int}_cap r,
  @{sys}/devices/**/hwmon@{int}/power@{int}_cap_hyst r,
  @{sys}/devices/**/hwmon@{int}/power@{int}_cap_max r,
  @{sys}/devices/**/hwmon@{int}/power@{int}_cap_min r,
  @{sys}/devices/**/hwmon@{int}/power@{int}_crit r,
  @{sys}/devices/**/hwmon@{int}/power@{int}_enable r,
  @{sys}/devices/**/hwmon@{int}/power@{int}_input r,
  @{sys}/devices/**/hwmon@{int}/power@{int}_input_highest r,
  @{sys}/devices/**/hwmon@{int}/power@{int}_input_lowest r,
  @{sys}/devices/**/hwmon@{int}/power@{int}_max r,

  # The lines below are not in kernel doc, but present in real system for CPU hwmon
  @{sys}/devices/**/hwmon@{int}/power@{int}_cap_default r,
  @{sys}/devices/**/hwmon@{int}/power@{int}_label r,

  include if exists <abstractions/sys/hwmon-power.d>

# vim:syntax=apparmor
