tree: 1c9f7b6e7f027fafaea7ef0af8790ec8af70f13e [path history] [tgz]
  1. cros_config_host/
  2. crosid/
  3. init/
  4. libcros_config/
  5. scripts/
  6. test_data/
  7. .gitignore
  8. .vpython3
  9. BUILD.gn
  10. cipd_manifest.txt
  11. cros_config_main.cc
  12. cros_config_mock.sh
  13. DIR_METADATA
  14. libcros_config.pc.in
  15. OWNERS
  16. platform2_preinstall.sh
  17. pytest.ini
  18. README.md
  19. regen.py
  20. run_tests.py
  21. run_tests.py.vpython3
  22. setup.py
chromeos-config/README.md

Chrome OS Model Configuration tools / library

This is the homepage/documentation for chromeos-config which provides access to the model configuration for Chrome OS.

Design Documentation

See the design doc for information about the design. This is accessible from the public page too (‘Unified Builds’).

Important classes

See CrosConfig for the class to use to access configuration strings on a target. See cros_config_host.py for access to the config on a host or during a build.

CLI Usage

There are two CLIs built for Chrome OS configuration access, cros_config for use on the target, and cros_config_host for use on the host/during building. See the --help for each tool respectively for help on usage.

Chrome OS Firmware Build Targets

As Chrome OS firmware continues to evolve, this document is intended to provide guidance for developers on best practices for managing build targets for a given project.

There are currently 6 firmware build targets that may be applicable to any given project.

AP Firmware

  1. coreboot
  • coreboot_target_name for boxster projects
  • coreboot for model.yaml based projects

This is applicable to every project.

  1. depthcharge
  • depthcharge_target_name for boxster projects
  • depthcharge for model.yaml based projects

If depthcharge is required to use FW_CONFIG to probe for peripherals that depthcharge uses (such as storage, audio, etc.), then each coreboot build target will require a matching depthcharge target. There are two approaches to this:

  • Organize the board.c file such that most setup code is shared and the defconfig board file and a ${VARIANT}.c setup file provide the differences.
  • Each build target has its own board.c setup file If FW_CONFIG is not used by the program, then a single build target may be appropriate for an entire program.
  1. bmpblk
  • bmpblk_target_name for boxster projects
  • bmpblk for model.yaml based projects

This project used to typically be built once per-program, but given the desire more flexibility (e.g., matching firmware screen resolution to native device resolution), many programs are supporting building this on a pre-project basis.

  1. libpayload
  • libpayload_target_name for boxster projects
  • libpayload for model.yaml projects

This project is typically built to support one target per-program. The Kconfig options and the linker do a fine job of removing unused code from the resulting binary.

EC Firmware

Only 1 of the 2 is used for each program

  • ChromiumOS EC

    This is the custom RTOS used by previous generations of Chrome OS devices.

  • Zephyr Google recently joined Zephyr OS, therefore the EC team is rapidly moving towards using it as the primary EC choice for new platforms. This should become the default choice beginning with programs where lead devices ship after 2H '22.

Notes

  1. A project here means all mainboards supported by a single logical config.star file (including the public and private parts).

NB. Projects which share a coreboot target must also share all other firmware build targets (including EC).

Debugging

libcros_config will emit a lot of debugging log messages if you set the CROS_CONFIG_DEBUG environment variable to a non-empty value before calling into the library.

Config Schema

Chrome OS config is schema validated YAML. New projects define their configuration via Starlark code generating protocol buffer outputs. These outputs are translated back into the config schema compatible YAML format by the cros_config_proto_converter.py. This allows the tooling described above to be compatible with the new approach. These configurations are generated by and stored in configuration projects that can be found in src/project/${program}/${project} locations of your chromiumos checkout. These config files are installed by chromeos-config-bsp ebuilds. Profiles within the overlay allow builds to target a specific project. For more details on the new approach see the documentation at ChromeOS Project Configuration. Some of the following details, such as YAML source location and YAML templating, do not apply to the new approach.

The following components make up the YAML based chromeos-config support:

YAML Source

The YAML source is designed for human maintainability. It allows for easy config sharing across many different devices (via anchors).

For background on YAML, see: Learn YAML in 10 minutes

The source is generally located at:

ls src/overlay-${BOARD}/chromeos-base/chromeos-config-bsp/files/model.yaml

Beyond the normal features of YAML, there are a few custom features supported that allow for even better re-use and expressiveness in the YAML config.

  1. Templating - Templating allows config to be shared by letting callers reference variables in the config, which are then evaluated on a per device/sku/product basis.

    The basic syntax is:

    some-element: "{{some-template-variable}}"
    

    Valid template variables are any YAML elements that are currently in scope. When generating config, scope is evaluated in the following order:

    1. sku
    2. config (this is recursive ... any variable at any level can be referenced)
    3. device
    4. product

    This order allows shared anchors to define default variables that are then optionally overridden by either the device or product scope.

  2. Local Variables - These are variables that are only used for templating and are dropped in the final JSON output. Variables starting with ‘$’ are considered local and are ignored after template evaluation. The basic syntax is:

    config:
      $some-local-variable: "some-value"
      some-element: "{{$some-local-variable}}"
    

    This supports the following:

    1. Defining local variables that are re-used in multiple places (e.g. file paths).
    2. Re-using common config (e.g. ‘identity’) where the variable value isn't known until the device/product/sku variables come into scope (e.g. $sku-id).
  3. File Imports - File imports allow common snippets of YAML to be shared across multiple different implementations. File importing works the same as if the YAML files were cat'd together and then evaluated. File importing is recursive also, so it will support importing files that import other files. Import paths must be relative to the file that specifies the import.

    imports:
      - "some_common_import_file.yaml"
      - "../common/some_other_common_import_file.yaml"
    

The following provides a simple example of a config using both core YAML features and the custom features described above.

common_config: &common_config
  name: "{{$device-name}}"
  brand-code: "{{$brand-code}}"
  identity:
    platform-name: "SomePlatform"
    frid: "Google_SomeFirmware"
    sku-id: "{{$sku-id}}"
  firmware-signing:
    key-id: "{{$key-id}}"
    signature-id: "{{name}}"
chromeos:
  devices:
    - $device-name: "SomeDevice"
      products:
        - $brand-code: "YYYY"
          $key-id: "SOME-KEY-ID"
      skus:
        - $sku-id: 0
          config:
            <<: *common_config
            wallpaper: "some-wallpaper"
        - $sku-id: 1
          config: *common_config

When this YAML is evaluated, it will fully expand out as the following:

chromeos:
  models:
    - name: "SomeDevice"
      brand-code: "YYYY"
      identity:
        platform-name: "SomePlatform"
        frid: "Google_SomeFirmware"
        sku-id: 0
      firmware-signing:
        key-id: "SOME-KEY-ID"
        signature-id: "SomeDevice"
      wallpaper: "some-wallpaper"
    - name: "SomeDevice"
      brand-code: "YYYY"
      identity:
        platform-name: "SomePlatform"
        frid: "Google_SomeFirmware"
        sku-id: 1
      firmware-signing:
        key-id: "SOME-KEY-ID"
        signature-id: "SomeDevice"

YAML Merging (multiple source YAML files)

There are various cases where it makes sense to manage YAML config across multiple different repos in separate YAML files.

E.g.

  • Permissions based control via git repo access to specific config
  • Extending overlays for device customization (e.g. Moblab)

This is supported through cros_config_schema tool and is invoked as part of the chromeos-config ebuild.

Using normal portage ebuilds/config, users can install as many YAML files as they wish to be merged together into: /usr/share/chromeos-config/yaml

E.g.

  • models.yaml
  • models-private.yaml (private config overlaid on the public config)

These files are then merged together based on their lexicographic name order.

Merging of YAML files applies the following characteristics:

  1. Order is important. If two files supply the same config, the last file wins.

  2. Identity is important. Config is merged based on ONE OF the following:

    1. name - If the name attribute matches, the config is merged
    2. identity - all fields of identity must match explicitly for code generation purposes. The fields are documented in identity. All fields that are present in the second file must be present in the first file. Note that a null value (the field is not present) and an empty string (the field is assigned the value of "") are not considered a match for code generation purposes.

For a detailed example of how merging works, see the following test files:

  1. test_merge_base.yaml - First file passed to the merge routine.
  2. test_merge_overlay.yaml - Second file passed (winner of any conflicts).
  3. test_merge.json - Result generated from the merge.

YAML Transform (to SquashFS)

Before the config gets used on the device, it's translated to a flattened filesystem view of the configuration, and stored as a SquashFS image. This keeps the runtime code on the device very simple.

First, the configuration is flattened using the following algorithm:

  • FOREACH device in chromeos/devices
    • FOREACH product in device/products
      • FOREACH sku in device/skus
        • sku varibles are put into scope
        • config variables are put into scope
        • device variables are put into scope
        • product variables are put into scope
        • with sku/config
          • config template variables are evaluated

After this, the configuration is stored in a SquashFS, with paths representing directories, and properties representing files.

/
├── identity.bin        # "Table of contents" to efficiently lookup device identity.
└── v1
    └── chromeos
        └── configs
            ├── 0
            │   ├── ...
            │   ├── power
            │   │   └── ...
            │   ├── wallpaper
            │   └── ...
            ├── 1
            │   ├── ...
            │   ├── power
            │   │   └── ...
            │   ├── wallpaper
            │   └── ...
            └── ...

This file gets installed at /usr/share/chromeos-config/configfs.img, and is used internally by the cros_configfs tool.

FRID identity combination generation

Some models may use multiple FRID match values in their identity configurations. While only the configured combinations should be present in finalized production devices, for devices in the factory process and for development devices, the FRID may be set to another FRID used by that model until the firmware has been updated to one with the final FRID. To support devices in this state, identity configurations are generated to cover all FRID combinations. That is, for each identity object with the FRID ignored, one config instance is generated for each FRID value used within that model. For example, given the example input below:

chromeos:
  models:
    - name: "SomeDevice"
      identity:
        frid: "SomePlatform"
        sku-id: 0
    - name: "SomeDevice"
      identity:
        frid: "SomePlatform_WithSuffix"
        sku-id: 1
    - name: "AnotherDevice"
      identity:
        frid: "AnotherPlatform"
        sku-id: 2

a configuration equivalent to the following would be generated to cover all combinations of sku-id and frid:

chromeos:
  models:
    - name: "SomeDevice"
      identity:
        frid: "SomePlatform"
        sku-id: 0
    - name: "SomeDevice"
      identity:
        frid: "SomePlatform_WithSuffix"
        sku-id: 0
    - name: "SomeDevice"
      identity:
        frid: "SomePlatform"
        sku-id: 1
    - name: "SomeDevice"
      identity:
        frid: "SomePlatform_WithSuffix"
        sku-id: 1
    - name: "AnotherDevice"
      identity:
        frid: "AnotherPlatform"
        sku-id: 2

In practice, this step takes place during the YAML transform step above, once the configuration has been flattened.

Making changes to a YAML model file

When modifying a model.yaml file there are few steps that need to be taken to manifest the change in a board target. Since the actual work to combine and process the YAML files is done in the chromeos-config ebuild, it needs to be remerged after the input YAML has been modified.

  1. Start cros-workon on the ebuild where your source model.yaml lives:

    (chroot) $ cros-workon-${BOARD} start chromeos-base/chromeos-config-bsp
    

    Note: If you have access to the private overlays for a board, you‘ll notice there’s an additional package containing private configuration data, chromeos-base/chromeos-config-bsp-private. To cros-workon this package:

    (chroot) $ cros-workon-${BOARD} start chromeos-base/chromeos-config-bsp-private
    
  2. After making your changes, emerge all affected ebuilds and the chromeos-config ebuild:

    (chroot) $ emerge-${BOARD} chromeos-config-bsp chromeos-config
    

    Alternatively, if you made changes in the private package:

    (chroot) $ emerge-${BOARD} chromeos-config-bsp chromeos-config-bsp-private chromeos-config
    

Schema Validation

The config is evaluated against a http://json-schema.org/ schema located at: chromeos-config/cros_config_host/cros_config_schema.yaml

NOTE: The schema is managed in YAML because it's easier to edit than JSON.

Only the transformed JSON is actually evaluated against the schema. Authors can do whatever makes sense in the YAML (from a sharing perspective) as long as it generates compliant JSON that passes the schema validation.

The schema documentation is auto-generated (and put into this README.md file) via: python -m cros_config_host.generate_schema_doc -o README.md

The schema definition is below:

CrOS Config Type Definitions (v2)

Definitions

In the tables below,

  • Build-only attributes get automatically stripped from the platform JSON as part of the build.

model

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
arcarcFalseFalse
audioaudioFalseFalse
auto-night-lightbooleanFalseFalseWhether the auto-night-light feature is enabled on the device, which sets the schedule for Night light automatically to sunset-to-sunrise.
batterybatteryFalseFalse
bluetoothbluetoothFalseFalse
brand-codestringFalseFalseBrand code of the model (also called RLZ code).
brandingbrandingFalseFalseContains branding characteristics for this model.
cameracameraFalseFalse
cros-healthdcros-healthdFalseFalseContains properties used by cros_healthd for model-specific telemetry and diagnostics.
cross-devicecross-deviceFalseFalseContains properties to configure cross-device features between ChromeOS devices and other devices, such as Instant Tethering and Smart Lock.
demo-modedemo-modeFalseFalseProperties related to the ChromeOS Demo Mode, defining the user experience when the device is used in retail.
detachable-basedetachable-baseFalseFalseContains the configuration for the hammerd which is used to update the detachable base firmware.
dgpudgpuFalseFalseContains details about the model's dgpu implementation.
displaysarray - displaysFalseFalseAdditional display properties beyond what is available thru standards such as EDID. The display matches based on the libdrm connector type.
efiefiFalseFalseContains settings related to EFI firmware.
fingerprintfingerprintFalseFalseContains details about the model's fingerprint implementation.
firmwarefirmwareFalseFalse
firmware-signingfirmware-signingFalseTrue
hardware-propertieshardware-propertiesFalseFalseContains boolean flags or enums for hardware properties of this board, for example if it's convertible, has a touchscreen, has a camera, etc. This information is used to auto-generate C code that is consumed by the EC build process in order to do run-time configuration. If a value is defined within a config file, but not for a specific model, that value will be assumed to be false for that model. If a value is an enum and is not specified for a specific model, it will default to “none”. All properties must be booleans or enums. If non-boolean properties are desired, the generation code in cros_config_schema.py must be updated to support them.
hdmi-cechdmi-cecFalseFalseConfigurable parameters for HDMI-CEC.
hpshpsFalseFalseContains details about the model's hps (go/cros-hps) implementation.
hwid-overridestring[A-Z0-9]+(-[A-Z]{4})?( [0-9A-F]+(-[0-9A-F]+)*)? ([A-Z2-7]{4}(-[A-Z2-7]{4})*|[A-Z2-7][2-9][A-Z2-7](-[A-Z2-7][2-9][A-Z2-7])*)FalseFalseOverride the HWID reported by crossystem. This property should only be used for devices supporting non-ChromeOS firmware, where we don't have the ability to set the HWID in GBB.
identityidentityFalseFalseDefines attributes that are used by cros_config to detect the identity of the platform and which corresponding config should be used.
keyboardkeyboardFalseFalseContains details about the model's keyboard.
modemmodemFalseFalse
namestring^[_a-zA-Z0-9]{3,}TrueFalseGoogle code name for the given model. While it is OK to use this string for human-display purposes (such as in a debug log or help dialog), or for a searchable-key in metrics collection, it is not recommended to use this property for creating model-specific behaviors. In this case, add a property to the schema which describes your behavior and use that instead.
nnapinnapiFalseFalseConfigurable parameters for the NNAPI (Neural Networks API) package.
nnpalmnnpalmFalseFalse
oem-idstring[0-9]+FalseFalseSome projects store SKU ID, OEM ID and Board Revision in an EEPROM and only SKU ID can be updated in the factory and RMA flow but others should be pre-flashed in the chip level. In this case, we would like to validate whether oem-id here from the updated SKU ID matches the one in the EEPROM so we can prevent this device from being updated to another OEM's devices.
powerpowerFalseFalseDefines settings that control power management functions. This mostly defines power_manager preferences, but there are a few other power related settings included. For details about each power_manager preference, see - src/platform2/power_manager/common/power_constants.h/cc For examples on setting these properties (including multiline examples), see the power config example in test_data/test.yaml
proximity-sensorproximity-sensorFalseFalseDefines the proximity sensor settings for devices such as /dev/proximity-wifi and /dev/proximity-wifi-lte typically used for SAR.
pvspvsFalseFalseContains information needed to run PVS for this model.
regulatory-labelstringFalseFalseBase name of the directory containing the regulatory label files to show on this device.
resourceresourceFalseFalseDefines settings that configure resourced. https://chromium.googlesource.com/chromiumos/config/+/main/proto/chromiumos/config/api/software/resource_config.proto
rmadrmadFalseFalseChromeOS Shimless RMA daemon configurations.
schedqosschedqosFalseFalseChromeOS scheduler QoS settings.
scheduler-tunescheduler-tuneFalseFalseChromeOS scheduler's tunable values.
spi-flash-transformspi-flash-transformFalseFalseChromeOS flash name mappings used by ap_wpsr.
swapswapFalseFalseChromeOS swap settings.
test-labelstringFalseFalseTest alias (model) label that will be applied in Autotest and reported for test results.
thermalthermalFalseFalse
touchtouchFalseFalse
typecdtypecdFalseFalseConfigurable parameters for the Chrome OS Type C daemon.
uiuiFalseFalse
uwbuwbFalseFalseContains details about the model's uwb implementation.
wallpaperstringFalseFalseBase filename of the default wallpaper to show on this device.
wifiwifiFalseFalseSets limits on maximum WiFi transmit power for tablet and non-tablet device configurations. This config must contain properties for ath10k driver, rtw88 driver, rtw89 driver, mtk driver, or intel driver. Note that configs for the intel driver are delivered as encoded wifi sar hex files.

arc

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
build-propertiesbuild-propertiesTrueFalse
hardware-featureshardware-featuresFalseFalseDefines hardware_features.xml file provided to ARC during initialization.
media-codecsmedia-codecsFalseFalseDefines media_codecs_c2.xml file provided to ARC during initialization.
media-codecs-performancemedia-codecs-performanceFalseFalseDefines media_codecs_performance_c2.xml file provided to ARC during initialization.
media-profilesmedia-profilesFalseFalseDefines media_profiles.xml file provided to ARC during initialization.
scaleintegerFalseFalseThe screen density value in dpi that will be used for ARC apps. This value should be from the list of DPIs in android cdd.

build-properties

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
devicestringTrueFalseDevice name to report in ‘ro.product.device’. This is often ‘{product}_cheets’ but it can be something else if desired.
first-api-levelstringFalseFalseThe first Android API level that this model shipped with. Deprecated since M94 (b/187778952).
marketing-namestringFalseFalseName of this model as it is called in the market, reported in ‘ro.product.model’. This often starts with ‘{oem}’.
metrics-tagstringTrueFalseTag to use to track metrics for this model. The tag can be shared across many devices if desired, but this will result in larger granularity for metrics reporting. Ideally the metrics system should support collation of metrics with different tags into groups, but if this is not supported, this tag can be used to achieve the same end. This is reported in ‘ro.product.metrics.tag’.
oemstringFalseFalseOriginal Equipment Manufacturer for this model. This generally means the OEM name printed on the device.
pai-regionsstring(^([a-zA-Z0-9\.\-]+,)*[a-zA-Z0-9\.\-]+$)|(^\*$)FalseFalse(Optional) Comma-separated allow list of region codes that can be appended to ‘ro.oem.key1’ for the purpose of targeting Play Auto Install applications by region. The value(s) should match the values that would be returned by cros_region_data region_code for the relevant region(s). If the device's region code is not in the allow list, or if there is no allow list, ‘ro.oem.key1’ will not include the region code. The allow list can also be a single ‘*’ character to indicate that the region code should always be appended.
productstringTrueFalseProduct name to report in ‘ro.product.name’. This may be the device name, or it can be something else, to allow several devices to be grouped into one product.

hardware-features

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
build-pathstringTrueTrueSource of the file relative to the build system.
system-pathstringTrueFalseInstallation path for the file on the system image.

media-codecs

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
build-pathstringTrueTrueSource of the file relative to the build system.
system-pathstringTrueFalseInstallation path for the file on the system image.

media-codecs-performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
build-pathstringTrueTrueSource of the file relative to the build system.
system-pathstringTrueFalseInstallation path for the file on the system image.

media-profiles

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
build-pathstringTrueTrueSource of the file relative to the build system.
system-pathstringTrueFalseInstallation path for the file on the system image.

audio

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
mainmainTrueFalse

main

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
cras-config-dirstringTrueFalseSubdirectory for model-specific configuration.
disable-profilestringFalseFalseOptional --disable_profile parameter for CRAS daemon.
filesarray - filesFalseTrue
sound-card-init-confstringFalseFalseOptional model specific config filename for sound_card_init.
speaker-ampstringFalseFalseSpecifies the name of the speaker amplifier on the device.
ucm-suffixstringFalseFalseOptional UCM suffix used to determine model specific config.

files

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
destinationstringFalseTrueInstallation path for the file on the system image.
sourcestringFalseTrueSource of the file relative to the build system.

battery

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
no-battery-boot-supportedbooleanFalseFalseDevice supports booting without a battery.

bluetooth

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
flagsflagsFalseFalse

flags

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
block-floss-availabilitybooleanFalseFalseBlock Floss from enablement by chrome.
block-llprivacy-availabilitybooleanFalseFalseBlock LL Privacy from enablement by chrome.
enable-bluetooth-offloadbooleanFalseFalseEnable audio offload path.
enable-suspend-managementbooleanFalseFalseEnable powerd suspend management callbacks.
reset-on-resumebooleanFalseFalseExpect bluetooth chip to have reset on resume.
stop-on-suspendbooleanFalseFalseStop the bluetooth adapter on suspend and start it on resume.

branding

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
marketing-namestringFalseFalseName of this model as it is called in the market, reported in ‘ro.product.model’. This often starts with ‘{oem-name}’.
oem-namestringFalseFalseOriginal Equipment Manufacturer for this model. Generally this means the OEM name printed on the device. This field can only be included after the product has been publicly announced AND should be filled by OEM. It is recommended not to use this field directly, and use cros_healthd Mojo interface instead as a general solution.

camera

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
clockstringFalseFalseSpecified the camera clock on the model.
config-fileconfig-fileFalseFalseDefines the camera configuration file.
countintegerFalseFalseSpecified the number of cameras on the model.
devicesarray - devicesFalseFalse
legacy-usbbooleanFalseFalseIndicates if the device has legacy usb cameras.
zsl-lookbackintegerFalseFalseSpecifies the duration to look back for Zero-Shutter Lag (ZSL) in milliseconds.

config-file

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
build-pathstringTrueTrueSource of the file relative to the build system.
system-pathstringTrueFalseInstallation path for the file on the system image.

devices

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
detachablebooleanFalseFalseWhether the camera module is detachable.
facingstringTrueFalseDirection the camera faces relative to device screen.
flagsflagsTrueFalseBit flags representing camera capabilities of this device. A camera module can be mounted on this slot only if all the flags match.
has-privacy-switchbooleanFalseFalseThe camera has a privacy switch that can disable the output when enabled.
idsarray - stringFalseFalseAn identifier string of camera module. For USB cameras this must be 4-digit hexadecimal VID and PID separated by a colon, e.g. 0123:abcd. For MIPI cameras it depends on vendor software usage.
interfacestringTrueFalseThe interface type of the camera device.
orientationintegerTrueFalseClockwise angle through which the output image needs to be rotated to be upright on the device screen in its native orientation.
privacy-switch-is-delayedbooleanFalseFalseThe state of the privacy switch can be read only when the camera stream is active.

flags

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
support-1080pbooleanTrueFalseSupports 1920x1080 resolution.
support-autofocusbooleanTrueFalseSupports auto-focus.

cros-healthd

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
batterybatteryFalseFalse
cached-vpdcached-vpdFalseFalse
routinesroutinesFalseFalse

battery

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
has-smart-battery-infobooleanFalseFalse

cached-vpd

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
has-sku-numberbooleanFalseFalse

routines

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
battery-healthbattery-healthFalseFalse
fingerprint-diagfingerprint-diagFalseFalse
nvme-wear-levelnvme-wear-levelFalseFalse

battery-health

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
percent-battery-wear-allowedintegerFalseFalseUpper bound for the battery's wear percentage. Battery health routine in cros_healthd uses this field as a threshold to determine whether the battery is in good condition. Minimum value: 0x0. Maximum value: 0x64.

fingerprint-diag

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
detect-zonesarray - detect-zonesFalseFalseRectangles [x1, y1, x2, y2].
max-dead-pixelsintegerTrueFalseThe maximum allowed number of dead pixels on the fingerprint sensor. Minimum value: 0x0.
max-dead-pixels-in-detect-zoneintegerTrueFalseThe maximum allowed number of dead pixels in the detection zone. Minimum value: 0x0.
max-error-reset-pixelsintegerTrueFalseThe maximum allowed number of error pixels when doing the reset test on the fingerprint sensor. Minimum value: 0x0.
max-pixel-devintegerTrueFalseThe maximum deviation from the median for a pixel. Minimum value: 0x0.
max-reset-pixel-devintegerTrueFalseThe maximum deviation from the median for a pixel when doing the reset test. Minimum value: 0x0.
num-detect-zoneintegerTrueFalseThe number of detect zone. Minimum value: 0x0.
pixel-medianpixel-medianTrueFalseRange constraints of the pixel median value of the checkerboards.
routine-enablebooleanTrueFalseEnable fingerprint diagnostic routine or not.

detect-zones

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
x1integerTrueFalsex1 should be smaller than x2. Minimum value: 0x0.
x2integerTrueFalsex1 should be smaller than x2. Minimum value: 0x0.
y1integerTrueFalsey1 should be smaller than y2. Minimum value: 0x0.
y2integerTrueFalsey1 should be smaller than y2. Minimum value: 0x0.

pixel-median

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
cb-type1-lowerintegerTrueFalseCheckerboard type1 lower bound. Minimum value: 0x0. Maximum value: 0xff.
cb-type1-upperintegerTrueFalseCheckerboard type1 upper bound. Minimum value: 0x0. Maximum value: 0xff.
cb-type2-lowerintegerTrueFalseCheckerboard type2 lower bound. Minimum value: 0x0. Maximum value: 0xff.
cb-type2-upperintegerTrueFalseCheckerboard type2 upper bound. Minimum value: 0x0. Maximum value: 0xff.
icb-type1-lowerintegerTrueFalseInverted checkerboard type1 lower bound. Minimum value: 0x0. Maximum value: 0xff.
icb-type1-upperintegerTrueFalseInverted checkerboard type1 upper bound. Minimum value: 0x0. Maximum value: 0xff.
icb-type2-lowerintegerTrueFalseInverted checkerboard type2 lower bound. Minimum value: 0x0. Maximum value: 0xff.
icb-type2-upperintegerTrueFalseInverted checkerboard type2 upper bound. Minimum value: 0x0. Maximum value: 0xff.

nvme-wear-level

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
wear-level-thresholdintegerFalseFalseThreshold number in percentage which NVMe wear level routine (only available to wilco devices) in cros_healthd examines wear level status against. Minimum value: 0x0. Maximum value: 0x63.

cross-device

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
instant-tetheringinstant-tetheringFalseFalseContains properties to configure the Instant Tethering cross-device feature.

instant-tethering

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
disable-instant-tetheringbooleanFalseFalseDisables the Instant Tethering feature. false by default

demo-mode

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
highlights-extension-idstringFalseFalseThe Chrome extension ID of the highlights app used during demo mode.
screensaver-extension-idstringFalseFalseThe Chrome extension ID of the attract loop played during demo mode.

detachable-base

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
ec-image-namestringFalseFalseThe target EC binary name which is placed under /lib/firmware.
filesarray - filesFalseTrue
i2c-pathstringFalseFalsePath to the I2C device under sysfs /sys/bus/i2c/devices/*, in format -. This is required for i2c interface detachable base. Note - i2c bus numbering can shift across reboots, please have corresponding setup based on your platform to ensure consistency. By taking this as an example: ‘/sys/bus/i2c/devices/1-0023’ The i2c-path is ‘1-0023’.
product-idintegerFalseFalseThe Product ID of the detachable base. This value can be queried by command ‘lsusb’. By taking this as an example: Bus 001 Device 032: ID 18d1:503c Google LLC the product-id is 20540(=0x503c).
touch-image-namestringFalseFalseThe touchpad binary name which is placed under /lib/firmware. This is only needed if the detachable base contains touchpad.
usb-pathstringFalseFalseSearches and finds the idVendor and idProduct under sysfs /sys/bus/usb/devices/* which matches the vendor-id and product-id. This is required for usb interface detachable base. By taking this as an example: ‘/sys/bus/usb/devices/1-1.1’ The usb-path is ‘1-1.1’.
vendor-idintegerFalseFalseThe Vendor ID of the detachable base. This value can be queried by command ‘lsusb’. By taking this as an example: Bus 001 Device 032: ID 18d1:503c Google LLC the vendor-id is 6353(=0x18d1).

files

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
destinationstringFalseTrueInstallation path for the file on the system image.
sourcestringFalseTrueSource of the file relative to the build system ${FILESDIR}
symlinkstringFalseTrueSymlink file that will be installed pointing to the destination.

dgpu

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
dgpu-typestringFalseFalsetype of dGPU.
has-dgpubooleanFalseFalseWhether the model has discrete GPU.

displays

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
connector-typeintegerFalseFalseThe libdrm connector type that must match for the properties to apply to this display. For example, specify 14 for eDP. See drm_mode.h included with libdrm for all possible values. Minimum value: 0x0. Maximum value: 0x14.
rounded-cornersrounded-cornersFalseFalseSpecify the radius of each corner.

rounded-corners

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
bottom-leftintegerFalseFalseThe radius, in physical pixels, of the rounded corner. Minimum value: 0x0.
bottom-rightintegerFalseFalseThe radius, in physical pixels, of the rounded corner. Minimum value: 0x0.
top-leftintegerFalseFalseThe radius, in physical pixels, of the rounded corner. Minimum value: 0x0.
top-rightintegerFalseFalseThe radius, in physical pixels, of the rounded corner. Minimum value: 0x0.

efi

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
bootvar-name-overridestring[a-zA-Z0-9 ]+FalseFalseOverride the label/description of EFI boot entries managed by postinstall. The default is hard-coded in postinstall. This should be used by devices with non-ChromeOS firmware, in conjunction with the manage_efi_boot_entries USE flag.

fingerprint

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
boardstringFalseFalseSpecifies the fingerprint board in use.
fingerprint-sensor-typestringFalseFalseType of FP sensor. Currently describes whether FP is overlapped on the power button or not.
ro-versionstringFalseTrueRO version for the fingerprint firmware for the FPMCU specified by the “board” property. If not specified, the default RO version for the FPMCU is used.
sensor-locationstringFalseFalseSpecifies the location of the fingerprint sensor.

firmware

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
bcs-overlaystringFalseTrueBCS overlay path used to determine BCS file path for binary firmware downloads.
build-targetsbuild-targetsFalseTrue
detachable-uibooleanFalseTrueEnables the firmware detachable UI.
ec-ro-imagestringFalseTrueName of the file located in BCS under the respective bcs-overlay.
ec-rw-imagestringFalseTrueName of the file located in BCS under the respective bcs-overlay.
firmware-configintegerFalseFalseThe firmware config bitmap to be flashed to the CBI. This field is used in the factory.
has-alt-firmwarebooleanFalseFalseContains attributes from the runtime firmware, to be used by the system in different aspects, such as tast tests and upstart.
has-ec-component-manifestbooleanFalseTrueEnables EC component manifest to support EC component probing (go/ec-comp-probe).
has-splash-screenbooleanFalseFalseIndicates if firmware is setting up the initial splash screen.
image-namestringFalseFalseThe name of the firmware image used by the firmware updater. Typically the device name, but can differ when a device may have two or more different firmware images.
key-idstringFalseTrueKey ID from the signer key set that is used to sign the given firmware image.
main-ro-imagestringFalseTrueName of the file located in BCS under the respective bcs-overlay.
main-rw-a-hashstringFalseTrueHash digest associated with the payload (FW_MAIN_A) for optional verification.
main-rw-a-hash-algorithmstringFalseTrueHash algorithm in use.
main-rw-imagestringFalseTrueName of the file located in BCS under the respective bcs-overlay.
namestringFalseTrueThis is a human-recognizable name used to refer to the firmware. It will be used when generating the shellball via firmware packer. Mainly, this is only for compatibility testing with device tree (since DT allowed firmwares to be named).
no-firmwarebooleanFalseTrueSet this flag to True to indicate the sku has no firmware bundle (bios+ec) and should be included in the firmware section even if build-targets is not specified.
pd-ro-imagestringFalseTrueName of the file located in BCS under the respective bcs-overlay.

build-targets

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
basestringFalseTrueBuild target of the base EC firmware for a detachable device, that will be considered dirty when building/testing
bmpblkstringFalseTrueBuild target that will be considered dirty when building/testing locally.
corebootstringFalseTrueBuild target that will be considered dirty when building/testing locally.
depthchargestringFalseTrueBuild target that will be considered dirty when building/testing locally.
ecstringFalseTrueBuild target that will be considered dirty when building/testing locally.
ec-extrasarray - stringFalseTrueExtra EC build targets to build within chromeos-ec.
gscstringFalseTrueBuild target that will be considered dirty when building/testing locally.
ishstringFalseTrueBuild target that will be considered dirty when building/testing locally.
libpayloadstringFalseTrueBuild target that will be considered dirty when building/testing locally.
u-bootstringFalseTrueBuild target that will be considered dirty when building/testing locally.
zephyr-detachable-basestringFalseTrueSpecifies the detachable base of Zephyr-based firmware target to build.
zephyr-ecstringFalseTrueSpecifies the list of Zephyr-based firmware targets to build.

firmware-signing

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
key-idstringTrueTrueKey ID from the signer key set that is used to sign the given firmware image.
sig-id-in-customization-idbooleanFalseTrueIndicates that this model cannot be decoded by the mapping table. Instead the model is stored in the VPD (Vital Product Data) region in the customization_id property. This allows us to determine the model to use in the factory during the finalization stage. Note that if the VPD is wiped then the model will be lost. This may mean that the device will revert back to a generic model, or may not work. It is not possible in general to test whether the model in the VPD is correct at run-time. We simply assume that it is. The advantage of using this property is that no hardware changes are needed to change one model into another. For example we can create 20 different whitelabel boards, all with the same hardware, just by changing the customization_id that is written into SPI flash.
signature-idstringTrueTrueID used to generate keys/keyblocks in the firmware signing output.

hardware-properties

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
display-typestringFalseFalseDenotes the type of display this device contains.
fan-countintegerFalseFalseThe number of fan in the device. Minimum value: 0x0. Maximum value: 0x7.
form-factorstringFalseFalseDenotes the form factor of the device.
has-audio-jackbooleanFalseFalseTrue if the device has an audio jack.
has-backlightbooleanFalseFalseDoes the device have a backlight.
has-base-accelerometerbooleanFalseFalseIs there an accelerometer in the base of the device.
has-base-gyroscopebooleanFalseFalseIs there a gyroscope in the base of the device.
has-base-light-sensorbooleanFalseFalseIs there a light sensor in the base of the device.
has-base-magnetometerbooleanFalseFalseIs there a magnetometer in the base of the device.
has-camera-light-sensorbooleanFalseFalseIs there a light sensor in the camera of the device.
has-hdmibooleanFalseFalseTrue if the device has an HDMI port.
has-lid-accelerometerbooleanFalseFalseIs there an accelerometer in the lid of the device.
has-lid-gyroscopebooleanFalseFalseIs there a gyroscope in the lid of the device.
has-lid-light-sensorbooleanFalseFalseIs there a light sensor in the lid of the device.
has-lid-magnetometerbooleanFalseFalseIs there a magnetometer in the lid of the device.
has-poe-peripheral-supportbooleanFalseFalseDoes the device have hardware for connecting PoE peripherals.
has-privacy-screenbooleanFalseFalseDoes the device have a privacy screen.
has-sd-readerbooleanFalseFalseTrue if the device has an SD card reader.
has-side-volume-buttonbooleanFalseFalseTrue if the device has a side volume button.
has-touchscreenbooleanFalseFalseDoes the device have a touchscreen.
is-lid-convertiblebooleanFalseFalseCan the lid be rotated 360 degrees.
psu-typestringFalseFalseType of PSU the device has: - battery: the device has a battery intended for primary use - AC_primary: the device has a battery, but it is not intended for primary use - AC_only: the device has no battery - no_power: the device does not receive power in any direct manner (e.g., it is virtualized)
recovery-inputstringFalseFalseDenotes the input method for entering device recovery.
storage-typestringFalseFalseType of the fixed storage device.
stylus-categorystringFalseFalseDenotes the category of stylus this device contains.

hdmi-cec

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
power-off-displays-on-shutdownbooleanFalseFalseAutomatically power off all connected displays on shutdown.
power-on-displays-on-bootbooleanFalseFalseAutomatically power on all connected displays on boot.

hps

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
has-hpsbooleanFalseFalseWhether the model has an hps device.

identity

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
custom-label-tagstringFalseFalsecustom_label_tag value set in the VPD, to add branding over an unbranded base model. Note that whitelabel_tag is the historical name for this VPD value, and is accepted as well.
customization-idstringFalseFalse‘customization_id’ value set in the VPD for non-unibuild Zergs and Whitelabels. Deprecated for use in new products since 2017/07/26.
feature-device-typestringFalseFalseType of feature enablement for this device
fridstringFalseFalseString which must match the AP firmware FRID (first part before the period) in order for the config to match. Leaving this value unset will cause the config to match any FRID.
platform-namestringFalseFalseDo not set or use this value. It is no longer used and is pending deletion.
sku-idintegerFalseFalseSKU/Board strapping pins configured during board manufacturing. Leaving this value unset will cause the config to match any SKU ID. Minimum value: -0x1. Maximum value: 0x7fffffff.

keyboard

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
backlightbooleanFalseFalseSpecifies the existence of backlight.
bottom-left-layoutstringFalseFalseSpecifies type of layout of bottom left function keys.
bottom-right-layoutstringFalseFalseSpecifies type of layout of bottom right function keys.
mcutypestringFalseFalseType of MCU firmware, if present.
numpadbooleanFalseFalseSpecifies the existence of numpad.
numpad-layoutstringFalseFalseSpecifies the layout of the numpad, if present.

modem

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
firmware-variantstringFalseFalseVariant of the modem firmware to be used. This value is read by modemfwd to match against the variant field of a firmware entry in a firmware manifest. In most cases, we simply use the model name as the value.
modem-typestring[0-9]+FalseFalseThe type of modem present on the device. https://chromium.googlesource.com/chromiumos/config/+/refs/heads/main/proto/chromiumos/config/api/topology.proto
wedge-reboot-delay-msstring[0-9]+FalseFalseDelay in milliseconds after which we pulse the modem reset GPIO if it hasn't appeared on the USB bus. This value is used by modemfwd and defaults to 5 minutes if not defined.

nnapi

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
driversarray - driversFalseFalse

drivers

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
namestringTrueFalse
shared-librarystringTrueFalse

nnpalm

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
modelstringFalseFalseOptional - model version to use, empty by default.
radius-polynomialstringFalseFalseOptional - empty by default.
touch-compatiblebooleanFalseFalseOptional - false by default but should be true for compatible devices.

power

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
adaptive-charging-alarm-secstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
adaptive-charging-enabledstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
adaptive-charging-hold-delta-percentstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
adaptive-charging-hold-percentstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
adaptive-charging-min-probabilitystringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
allow-ambient-eqstring^[01]$FalseFalseEnable (1) or disable (0) Ambient EQ.
allow-zero-charge-readings-on-acstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
als-smoothing-constantstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
autobrightnessautobrightnessFalseFalse
avoid-suspend-when-headphone-jack-pluggedstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
battery-poll-interval-initial-msstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
battery-poll-interval-msstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
battery-stabilized-after-battery-saver-msstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
battery-stabilized-after-line-power-connected-msstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
battery-stabilized-after-line-power-disconnected-msstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
battery-stabilized-after-resume-msstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
battery-stabilized-after-startup-msstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
charge-limit-enabledstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
charging-portsstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
cutoff-power-uastringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
defer-external-display-timeoutstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
detect-hoverstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
disable-dark-resumestringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
disable-idle-suspendstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
enable-console-during-suspendstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
external-ambient-light-sensorstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
external-backlight-als-stepsstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
external-display-onlystringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
external-display-only-modelsstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
factory-modestringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
has-ambient-light-sensorstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
has-barreljackstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
has-charge-controllerstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
has-keyboard-backlightstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
has-machine-quirksstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
hibernate-power-uastringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
ignore-external-policystringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
instant-transitions-below-min-levelstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
internal-backlight-als-stepsstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
internal-backlight-max-nitsstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
internal-backlight-no-als-ac-brightnessstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
internal-backlight-no-als-battery-brightnessstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
keyboard-backlight-als-stepsstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
keyboard-backlight-keep-on-during-video-msstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
keyboard-backlight-keep-on-msstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
keyboard-backlight-no-als-brightnessstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
keyboard-backlight-user-stepsstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
legacy-power-buttonstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
low-battery-shutdown-percentstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
low-battery-shutdown-time-sstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
manual-eventlog-addstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
max-charge-samplesstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
max-current-samplesstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
max-dark-suspend-delay-timeout-msstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
min-visible-backlight-levelstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
multiple-batteriesstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
num-sessions-on-current-chargestringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
plugged-dim-msstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
plugged-off-msstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
plugged-quick-dim-msstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
plugged-quick-lock-msstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
plugged-suspend-msstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
power-supply-full-factorstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
preferred-lid-devicestringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
require-usb-input-device-to-suspendstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
retry-suspend-attemptsstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
retry-suspend-msstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
send-feedback-if-undimmedstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
set-cellular-regulatory-domain-mappingstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
set-cellular-transmit-power-dpr-gpiostringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
set-cellular-transmit-power-for-activity-proximitystringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
set-cellular-transmit-power-for-proximitystringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
set-cellular-transmit-power-for-tablet-modestringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
set-cellular-transmit-power-level-mappingstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
set-default-proximity-state-highstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
set-transmit-power-prefer-far-for-proximitystringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
set-wifi-transmit-power-for-activity-proximitystringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
set-wifi-transmit-power-for-proximitystringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
set-wifi-transmit-power-for-tablet-modestringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
shutdown-from-suspend-secstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
slow-adaptive-charging-enabledstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
smart-discharge-to-zero-hrstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
suspend-modestringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
suspend-prevention-modelsstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
suspend-to-idlestringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
suspend-to-idle-modelsstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
touchpad-wakeupstring^[01]$FalseFalseEnable (1) or disable (0) wake from touchpad. If not set, default to enable. When set to enable, on many devices, firmware is in charge of controlling whether to wake from touchpad. This flag is reserved for older devices without firmware support (Nami and Coral) and please do not set for new devices.
tpm-counter-suspend-thresholdstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
tpm-status-interval-secstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
turn-off-screen-timeout-msstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
unplugged-dim-msstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
unplugged-off-msstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
unplugged-quick-dim-msstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
unplugged-quick-lock-msstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
unplugged-suspend-msstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
usb-min-ac-wattsstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
use-crasstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
use-lidstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
use-modemmanager-for-dynamic-sarstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
use-multi-power-level-dynamic-sarstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
use-regulatory-domain-for-dynamic-sarstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
wake-on-dpstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
wakeup-input-device-namesstringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/
wifi-transmit-power-mode-for-static-devicestringFalseFalseFor details, see https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/power_manager/

autobrightness

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
config-fileconfig-fileTrueFalse

config-file

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
build-pathstringTrueTrueSource of the file relative to the build system.
system-pathstringTrueFalseInstallation path for the file on the system image.

proximity-sensor

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
semtech-configarray - semtech-configFalseFalse

semtech-config

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
filefileTrueFalse
locationstringTrueFalse

file

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
build-pathstringTrueTrueSource of the file relative to the build system.
system-pathstringTrueFalseInstallation path for the file on the system image.

pvs

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
programstringFalseFalseThe program that corresponds to this model.
projectstringFalseFalseThe project that corresponds to this model.

resource

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
acacFalseFalseDefines settings that configure resourced based on power source. https://chromium.googlesource.com/chromiumos/config/+/main/proto/chromiumos/config/api/resource_config.proto
dcdcFalseFalseDefines settings that configure resourced based on power source. https://chromium.googlesource.com/chromiumos/config/+/main/proto/chromiumos/config/api/resource_config.proto

ac

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
arcvm-gaming-power-preferencesarcvm-gaming-power-preferencesFalseFalseFor config details, see https://source.chromium.org/chromiumos/chromiumos/codesearch/+/main:src/platform2/resourced/README.md; For governor (CPUfreq scaling governor) and epp (Energy-Performance Preference), see https://www.kernel.org/doc/html/latest/admin-guide/pm/intel_pstate.html
battery-saver-power-preferencesbattery-saver-power-preferencesFalseFalseFor config details, see https://source.chromium.org/chromiumos/chromiumos/codesearch/+/main:src/platform2/resourced/README.md; For governor (CPUfreq scaling governor) and epp (Energy-Performance Preference), see https://www.kernel.org/doc/html/latest/admin-guide/pm/intel_pstate.html
borealis-gaming-power-preferencesborealis-gaming-power-preferencesFalseFalseFor config details, see https://source.chromium.org/chromiumos/chromiumos/codesearch/+/main:src/platform2/resourced/README.md; For governor (CPUfreq scaling governor) and epp (Energy-Performance Preference), see https://www.kernel.org/doc/html/latest/admin-guide/pm/intel_pstate.html
default-power-preferencesdefault-power-preferencesFalseFalseFor config details, see https://source.chromium.org/chromiumos/chromiumos/codesearch/+/main:src/platform2/resourced/README.md; For governor (CPUfreq scaling governor) and epp (Energy-Performance Preference), see https://www.kernel.org/doc/html/latest/admin-guide/pm/intel_pstate.html
fullscreen-power-preferencesfullscreen-power-preferencesFalseFalseFor config details, see https://source.chromium.org/chromiumos/chromiumos/codesearch/+/main:src/platform2/resourced/README.md; For governor (CPUfreq scaling governor) and epp (Energy-Performance Preference), see https://www.kernel.org/doc/html/latest/admin-guide/pm/intel_pstate.html
vm-boot-power-preferencesvm-boot-power-preferencesFalseFalseFor config details, see https://source.chromium.org/chromiumos/chromiumos/codesearch/+/main:src/platform2/resourced/README.md; For governor (CPUfreq scaling governor) and epp (Energy-Performance Preference), see https://www.kernel.org/doc/html/latest/admin-guide/pm/intel_pstate.html
web-rtc-power-preferencesweb-rtc-power-preferencesFalseFalseFor config details, see https://source.chromium.org/chromiumos/chromiumos/codesearch/+/main:src/platform2/resourced/README.md; For governor (CPUfreq scaling governor) and epp (Energy-Performance Preference), see https://www.kernel.org/doc/html/latest/admin-guide/pm/intel_pstate.html

arcvm-gaming-power-preferences

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
cpu-offlinecpu-offlineFalseFalseThe policy to offline CPUs to reduce power consumption. Mainly used by battery-saver mode (battery-saver-power-preferences). Empty by default and CPU won't be offlined.
cpufreq-disable-boostbooleanFalseFalse(Optional) Whether cpufreq boost mode will be disabled or not. Mainly used by WebRTC (video calls) and battery-saver mode (battery-saver-power-preferences) to reduce power consumption. Defaults to false, enabling cpufreq.
eppeppFalseFalse
governorgovernorFalseFalse

cpu-offline

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
halfhalfFalseGROUP(0)FalseOffline half of the cores.
small-coresmall-coreFalseGROUP(0)FalseOffline small cores.
smtsmtFalseGROUP(0)FalseOffline Simultaneous Multithreading (SMT).

half

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

small-core

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

smt

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

epp

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
balance-performancebalance-performanceFalseGROUP(0)False
balance-powerbalance-powerFalseGROUP(0)False
defaultdefaultFalseGROUP(0)False
performanceperformanceFalseGROUP(0)False
powerpowerFalseGROUP(0)False

balance-performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

balance-power

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

default

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

power

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

governor

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
conservativeconservativeFalseGROUP(0)False
ondemandondemandFalseGROUP(0)False
performanceperformanceFalseGROUP(0)False
powersavepowersaveFalseGROUP(0)False
schedutilschedutilFalseGROUP(0)False
userspaceuserspaceFalseGROUP(0)False

conservative

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

ondemand

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
powersave-biasintegerFalseFalse
sampling-rate-msintegerFalseFalse

performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

powersave

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

schedutil

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

userspace

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

battery-saver-power-preferences

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
cpu-offlinecpu-offlineFalseFalseThe policy to offline CPUs to reduce power consumption. Mainly used by battery-saver mode (battery-saver-power-preferences). Empty by default and CPU won't be offlined.
cpufreq-disable-boostbooleanFalseFalse(Optional) Whether cpufreq boost mode will be disabled or not. Mainly used by WebRTC (video calls) and battery-saver mode (battery-saver-power-preferences) to reduce power consumption. Defaults to false, enabling cpufreq.
eppeppFalseFalse
governorgovernorFalseFalse

cpu-offline

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
halfhalfFalseGROUP(0)FalseOffline half of the cores.
small-coresmall-coreFalseGROUP(0)FalseOffline small cores.
smtsmtFalseGROUP(0)FalseOffline Simultaneous Multithreading (SMT).

half

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

small-core

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

smt

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

epp

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
balance-performancebalance-performanceFalseGROUP(0)False
balance-powerbalance-powerFalseGROUP(0)False
defaultdefaultFalseGROUP(0)False
performanceperformanceFalseGROUP(0)False
powerpowerFalseGROUP(0)False

balance-performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

balance-power

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

default

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

power

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

governor

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
conservativeconservativeFalseGROUP(0)False
ondemandondemandFalseGROUP(0)False
performanceperformanceFalseGROUP(0)False
powersavepowersaveFalseGROUP(0)False
schedutilschedutilFalseGROUP(0)False
userspaceuserspaceFalseGROUP(0)False

conservative

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

ondemand

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
powersave-biasintegerFalseFalse
sampling-rate-msintegerFalseFalse

performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

powersave

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

schedutil

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

userspace

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

borealis-gaming-power-preferences

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
cpu-offlinecpu-offlineFalseFalseThe policy to offline CPUs to reduce power consumption. Mainly used by battery-saver mode (battery-saver-power-preferences). Empty by default and CPU won't be offlined.
cpufreq-disable-boostbooleanFalseFalse(Optional) Whether cpufreq boost mode will be disabled or not. Mainly used by WebRTC (video calls) and battery-saver mode (battery-saver-power-preferences) to reduce power consumption. Defaults to false, enabling cpufreq.
eppeppFalseFalse
governorgovernorFalseFalse

cpu-offline

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
halfhalfFalseGROUP(0)FalseOffline half of the cores.
small-coresmall-coreFalseGROUP(0)FalseOffline small cores.
smtsmtFalseGROUP(0)FalseOffline Simultaneous Multithreading (SMT).

half

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

small-core

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

smt

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

epp

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
balance-performancebalance-performanceFalseGROUP(0)False
balance-powerbalance-powerFalseGROUP(0)False
defaultdefaultFalseGROUP(0)False
performanceperformanceFalseGROUP(0)False
powerpowerFalseGROUP(0)False

balance-performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

balance-power

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

default

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

power

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

governor

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
conservativeconservativeFalseGROUP(0)False
ondemandondemandFalseGROUP(0)False
performanceperformanceFalseGROUP(0)False
powersavepowersaveFalseGROUP(0)False
schedutilschedutilFalseGROUP(0)False
userspaceuserspaceFalseGROUP(0)False

conservative

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

ondemand

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
powersave-biasintegerFalseFalse
sampling-rate-msintegerFalseFalse

performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

powersave

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

schedutil

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

userspace

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

default-power-preferences

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
cpu-offlinecpu-offlineFalseFalseThe policy to offline CPUs to reduce power consumption. Mainly used by battery-saver mode (battery-saver-power-preferences). Empty by default and CPU won't be offlined.
cpufreq-disable-boostbooleanFalseFalse(Optional) Whether cpufreq boost mode will be disabled or not. Mainly used by WebRTC (video calls) and battery-saver mode (battery-saver-power-preferences) to reduce power consumption. Defaults to false, enabling cpufreq.
eppeppFalseFalse
governorgovernorFalseFalse

cpu-offline

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
halfhalfFalseGROUP(0)FalseOffline half of the cores.
small-coresmall-coreFalseGROUP(0)FalseOffline small cores.
smtsmtFalseGROUP(0)FalseOffline Simultaneous Multithreading (SMT).

half

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

small-core

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

smt

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

epp

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
balance-performancebalance-performanceFalseGROUP(0)False
balance-powerbalance-powerFalseGROUP(0)False
defaultdefaultFalseGROUP(0)False
performanceperformanceFalseGROUP(0)False
powerpowerFalseGROUP(0)False

balance-performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

balance-power

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

default

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

power

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

governor

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
conservativeconservativeFalseGROUP(0)False
ondemandondemandFalseGROUP(0)False
performanceperformanceFalseGROUP(0)False
powersavepowersaveFalseGROUP(0)False
schedutilschedutilFalseGROUP(0)False
userspaceuserspaceFalseGROUP(0)False

conservative

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

ondemand

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
powersave-biasintegerFalseFalse
sampling-rate-msintegerFalseFalse

performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

powersave

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

schedutil

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

userspace

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

fullscreen-power-preferences

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
cpu-offlinecpu-offlineFalseFalseThe policy to offline CPUs to reduce power consumption. Mainly used by battery-saver mode (battery-saver-power-preferences). Empty by default and CPU won't be offlined.
cpufreq-disable-boostbooleanFalseFalse(Optional) Whether cpufreq boost mode will be disabled or not. Mainly used by WebRTC (video calls) and battery-saver mode (battery-saver-power-preferences) to reduce power consumption. Defaults to false, enabling cpufreq.
eppeppFalseFalse
governorgovernorFalseFalse

cpu-offline

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
halfhalfFalseGROUP(0)FalseOffline half of the cores.
small-coresmall-coreFalseGROUP(0)FalseOffline small cores.
smtsmtFalseGROUP(0)FalseOffline Simultaneous Multithreading (SMT).

half

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

small-core

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

smt

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

epp

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
balance-performancebalance-performanceFalseGROUP(0)False
balance-powerbalance-powerFalseGROUP(0)False
defaultdefaultFalseGROUP(0)False
performanceperformanceFalseGROUP(0)False
powerpowerFalseGROUP(0)False

balance-performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

balance-power

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

default

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

power

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

governor

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
conservativeconservativeFalseGROUP(0)False
ondemandondemandFalseGROUP(0)False
performanceperformanceFalseGROUP(0)False
powersavepowersaveFalseGROUP(0)False
schedutilschedutilFalseGROUP(0)False
userspaceuserspaceFalseGROUP(0)False

conservative

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

ondemand

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
powersave-biasintegerFalseFalse
sampling-rate-msintegerFalseFalse

performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

powersave

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

schedutil

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

userspace

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

vm-boot-power-preferences

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
cpu-offlinecpu-offlineFalseFalseThe policy to offline CPUs to reduce power consumption. Mainly used by battery-saver mode (battery-saver-power-preferences). Empty by default and CPU won't be offlined.
cpufreq-disable-boostbooleanFalseFalse(Optional) Whether cpufreq boost mode will be disabled or not. Mainly used by WebRTC (video calls) and battery-saver mode (battery-saver-power-preferences) to reduce power consumption. Defaults to false, enabling cpufreq.
eppeppFalseFalse
governorgovernorFalseFalse

cpu-offline

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
halfhalfFalseGROUP(0)FalseOffline half of the cores.
small-coresmall-coreFalseGROUP(0)FalseOffline small cores.
smtsmtFalseGROUP(0)FalseOffline Simultaneous Multithreading (SMT).

half

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

small-core

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

smt

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

epp

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
balance-performancebalance-performanceFalseGROUP(0)False
balance-powerbalance-powerFalseGROUP(0)False
defaultdefaultFalseGROUP(0)False
performanceperformanceFalseGROUP(0)False
powerpowerFalseGROUP(0)False

balance-performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

balance-power

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

default

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

power

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

governor

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
conservativeconservativeFalseGROUP(0)False
ondemandondemandFalseGROUP(0)False
performanceperformanceFalseGROUP(0)False
powersavepowersaveFalseGROUP(0)False
schedutilschedutilFalseGROUP(0)False
userspaceuserspaceFalseGROUP(0)False

conservative

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

ondemand

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
powersave-biasintegerFalseFalse
sampling-rate-msintegerFalseFalse

performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

powersave

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

schedutil

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

userspace

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

web-rtc-power-preferences

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
cpu-offlinecpu-offlineFalseFalseThe policy to offline CPUs to reduce power consumption. Mainly used by battery-saver mode (battery-saver-power-preferences). Empty by default and CPU won't be offlined.
cpufreq-disable-boostbooleanFalseFalse(Optional) Whether cpufreq boost mode will be disabled or not. Mainly used by WebRTC (video calls) and battery-saver mode (battery-saver-power-preferences) to reduce power consumption. Defaults to false, enabling cpufreq.
eppeppFalseFalse
governorgovernorFalseFalse

cpu-offline

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
halfhalfFalseGROUP(0)FalseOffline half of the cores.
small-coresmall-coreFalseGROUP(0)FalseOffline small cores.
smtsmtFalseGROUP(0)FalseOffline Simultaneous Multithreading (SMT).

half

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

small-core

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

smt

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

epp

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
balance-performancebalance-performanceFalseGROUP(0)False
balance-powerbalance-powerFalseGROUP(0)False
defaultdefaultFalseGROUP(0)False
performanceperformanceFalseGROUP(0)False
powerpowerFalseGROUP(0)False

balance-performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

balance-power

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

default

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

power

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

governor

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
conservativeconservativeFalseGROUP(0)False
ondemandondemandFalseGROUP(0)False
performanceperformanceFalseGROUP(0)False
powersavepowersaveFalseGROUP(0)False
schedutilschedutilFalseGROUP(0)False
userspaceuserspaceFalseGROUP(0)False

conservative

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

ondemand

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
powersave-biasintegerFalseFalse
sampling-rate-msintegerFalseFalse

performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

powersave

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

schedutil

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

userspace

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

dc

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
arcvm-gaming-power-preferencesarcvm-gaming-power-preferencesFalseFalseFor config details, see https://source.chromium.org/chromiumos/chromiumos/codesearch/+/main:src/platform2/resourced/README.md; For governor (CPUfreq scaling governor) and epp (Energy-Performance Preference), see https://www.kernel.org/doc/html/latest/admin-guide/pm/intel_pstate.html
battery-saver-power-preferencesbattery-saver-power-preferencesFalseFalseFor config details, see https://source.chromium.org/chromiumos/chromiumos/codesearch/+/main:src/platform2/resourced/README.md; For governor (CPUfreq scaling governor) and epp (Energy-Performance Preference), see https://www.kernel.org/doc/html/latest/admin-guide/pm/intel_pstate.html
borealis-gaming-power-preferencesborealis-gaming-power-preferencesFalseFalseFor config details, see https://source.chromium.org/chromiumos/chromiumos/codesearch/+/main:src/platform2/resourced/README.md; For governor (CPUfreq scaling governor) and epp (Energy-Performance Preference), see https://www.kernel.org/doc/html/latest/admin-guide/pm/intel_pstate.html
default-power-preferencesdefault-power-preferencesFalseFalseFor config details, see https://source.chromium.org/chromiumos/chromiumos/codesearch/+/main:src/platform2/resourced/README.md; For governor (CPUfreq scaling governor) and epp (Energy-Performance Preference), see https://www.kernel.org/doc/html/latest/admin-guide/pm/intel_pstate.html
fullscreen-power-preferencesfullscreen-power-preferencesFalseFalseFor config details, see https://source.chromium.org/chromiumos/chromiumos/codesearch/+/main:src/platform2/resourced/README.md; For governor (CPUfreq scaling governor) and epp (Energy-Performance Preference), see https://www.kernel.org/doc/html/latest/admin-guide/pm/intel_pstate.html
vm-boot-power-preferencesvm-boot-power-preferencesFalseFalseFor config details, see https://source.chromium.org/chromiumos/chromiumos/codesearch/+/main:src/platform2/resourced/README.md; For governor (CPUfreq scaling governor) and epp (Energy-Performance Preference), see https://www.kernel.org/doc/html/latest/admin-guide/pm/intel_pstate.html
web-rtc-power-preferencesweb-rtc-power-preferencesFalseFalseFor config details, see https://source.chromium.org/chromiumos/chromiumos/codesearch/+/main:src/platform2/resourced/README.md; For governor (CPUfreq scaling governor) and epp (Energy-Performance Preference), see https://www.kernel.org/doc/html/latest/admin-guide/pm/intel_pstate.html

arcvm-gaming-power-preferences

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
cpu-offlinecpu-offlineFalseFalseThe policy to offline CPUs to reduce power consumption. Mainly used by battery-saver mode (battery-saver-power-preferences). Empty by default and CPU won't be offlined.
cpufreq-disable-boostbooleanFalseFalse(Optional) Whether cpufreq boost mode will be disabled or not. Mainly used by WebRTC (video calls) and battery-saver mode (battery-saver-power-preferences) to reduce power consumption. Defaults to false, enabling cpufreq.
eppeppFalseFalse
governorgovernorFalseFalse

cpu-offline

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
halfhalfFalseGROUP(0)FalseOffline half of the cores.
small-coresmall-coreFalseGROUP(0)FalseOffline small cores.
smtsmtFalseGROUP(0)FalseOffline Simultaneous Multithreading (SMT).

half

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

small-core

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

smt

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

epp

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
balance-performancebalance-performanceFalseGROUP(0)False
balance-powerbalance-powerFalseGROUP(0)False
defaultdefaultFalseGROUP(0)False
performanceperformanceFalseGROUP(0)False
powerpowerFalseGROUP(0)False

balance-performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

balance-power

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

default

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

power

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

governor

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
conservativeconservativeFalseGROUP(0)False
ondemandondemandFalseGROUP(0)False
performanceperformanceFalseGROUP(0)False
powersavepowersaveFalseGROUP(0)False
schedutilschedutilFalseGROUP(0)False
userspaceuserspaceFalseGROUP(0)False

conservative

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

ondemand

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
powersave-biasintegerFalseFalse
sampling-rate-msintegerFalseFalse

performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

powersave

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

schedutil

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

userspace

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

battery-saver-power-preferences

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
cpu-offlinecpu-offlineFalseFalseThe policy to offline CPUs to reduce power consumption. Mainly used by battery-saver mode (battery-saver-power-preferences). Empty by default and CPU won't be offlined.
cpufreq-disable-boostbooleanFalseFalse(Optional) Whether cpufreq boost mode will be disabled or not. Mainly used by WebRTC (video calls) and battery-saver mode (battery-saver-power-preferences) to reduce power consumption. Defaults to false, enabling cpufreq.
eppeppFalseFalse
governorgovernorFalseFalse

cpu-offline

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
halfhalfFalseGROUP(0)FalseOffline half of the cores.
small-coresmall-coreFalseGROUP(0)FalseOffline small cores.
smtsmtFalseGROUP(0)FalseOffline Simultaneous Multithreading (SMT).

half

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

small-core

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

smt

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

epp

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
balance-performancebalance-performanceFalseGROUP(0)False
balance-powerbalance-powerFalseGROUP(0)False
defaultdefaultFalseGROUP(0)False
performanceperformanceFalseGROUP(0)False
powerpowerFalseGROUP(0)False

balance-performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

balance-power

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

default

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

power

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

governor

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
conservativeconservativeFalseGROUP(0)False
ondemandondemandFalseGROUP(0)False
performanceperformanceFalseGROUP(0)False
powersavepowersaveFalseGROUP(0)False
schedutilschedutilFalseGROUP(0)False
userspaceuserspaceFalseGROUP(0)False

conservative

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

ondemand

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
powersave-biasintegerFalseFalse
sampling-rate-msintegerFalseFalse

performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

powersave

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

schedutil

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

userspace

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

borealis-gaming-power-preferences

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
cpu-offlinecpu-offlineFalseFalseThe policy to offline CPUs to reduce power consumption. Mainly used by battery-saver mode (battery-saver-power-preferences). Empty by default and CPU won't be offlined.
cpufreq-disable-boostbooleanFalseFalse(Optional) Whether cpufreq boost mode will be disabled or not. Mainly used by WebRTC (video calls) and battery-saver mode (battery-saver-power-preferences) to reduce power consumption. Defaults to false, enabling cpufreq.
eppeppFalseFalse
governorgovernorFalseFalse

cpu-offline

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
halfhalfFalseGROUP(0)FalseOffline half of the cores.
small-coresmall-coreFalseGROUP(0)FalseOffline small cores.
smtsmtFalseGROUP(0)FalseOffline Simultaneous Multithreading (SMT).

half

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

small-core

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

smt

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

epp

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
balance-performancebalance-performanceFalseGROUP(0)False
balance-powerbalance-powerFalseGROUP(0)False
defaultdefaultFalseGROUP(0)False
performanceperformanceFalseGROUP(0)False
powerpowerFalseGROUP(0)False

balance-performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

balance-power

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

default

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

power

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

governor

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
conservativeconservativeFalseGROUP(0)False
ondemandondemandFalseGROUP(0)False
performanceperformanceFalseGROUP(0)False
powersavepowersaveFalseGROUP(0)False
schedutilschedutilFalseGROUP(0)False
userspaceuserspaceFalseGROUP(0)False

conservative

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

ondemand

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
powersave-biasintegerFalseFalse
sampling-rate-msintegerFalseFalse

performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

powersave

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

schedutil

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

userspace

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

default-power-preferences

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
cpu-offlinecpu-offlineFalseFalseThe policy to offline CPUs to reduce power consumption. Mainly used by battery-saver mode (battery-saver-power-preferences). Empty by default and CPU won't be offlined.
cpufreq-disable-boostbooleanFalseFalse(Optional) Whether cpufreq boost mode will be disabled or not. Mainly used by WebRTC (video calls) and battery-saver mode (battery-saver-power-preferences) to reduce power consumption. Defaults to false, enabling cpufreq.
eppeppFalseFalse
governorgovernorFalseFalse

cpu-offline

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
halfhalfFalseGROUP(0)FalseOffline half of the cores.
small-coresmall-coreFalseGROUP(0)FalseOffline small cores.
smtsmtFalseGROUP(0)FalseOffline Simultaneous Multithreading (SMT).

half

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

small-core

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

smt

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

epp

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
balance-performancebalance-performanceFalseGROUP(0)False
balance-powerbalance-powerFalseGROUP(0)False
defaultdefaultFalseGROUP(0)False
performanceperformanceFalseGROUP(0)False
powerpowerFalseGROUP(0)False

balance-performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

balance-power

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

default

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

power

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

governor

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
conservativeconservativeFalseGROUP(0)False
ondemandondemandFalseGROUP(0)False
performanceperformanceFalseGROUP(0)False
powersavepowersaveFalseGROUP(0)False
schedutilschedutilFalseGROUP(0)False
userspaceuserspaceFalseGROUP(0)False

conservative

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

ondemand

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
powersave-biasintegerFalseFalse
sampling-rate-msintegerFalseFalse

performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

powersave

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

schedutil

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

userspace

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

fullscreen-power-preferences

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
cpu-offlinecpu-offlineFalseFalseThe policy to offline CPUs to reduce power consumption. Mainly used by battery-saver mode (battery-saver-power-preferences). Empty by default and CPU won't be offlined.
cpufreq-disable-boostbooleanFalseFalse(Optional) Whether cpufreq boost mode will be disabled or not. Mainly used by WebRTC (video calls) and battery-saver mode (battery-saver-power-preferences) to reduce power consumption. Defaults to false, enabling cpufreq.
eppeppFalseFalse
governorgovernorFalseFalse

cpu-offline

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
halfhalfFalseGROUP(0)FalseOffline half of the cores.
small-coresmall-coreFalseGROUP(0)FalseOffline small cores.
smtsmtFalseGROUP(0)FalseOffline Simultaneous Multithreading (SMT).

half

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

small-core

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

smt

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

epp

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
balance-performancebalance-performanceFalseGROUP(0)False
balance-powerbalance-powerFalseGROUP(0)False
defaultdefaultFalseGROUP(0)False
performanceperformanceFalseGROUP(0)False
powerpowerFalseGROUP(0)False

balance-performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

balance-power

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

default

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

power

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

governor

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
conservativeconservativeFalseGROUP(0)False
ondemandondemandFalseGROUP(0)False
performanceperformanceFalseGROUP(0)False
powersavepowersaveFalseGROUP(0)False
schedutilschedutilFalseGROUP(0)False
userspaceuserspaceFalseGROUP(0)False

conservative

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

ondemand

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
powersave-biasintegerFalseFalse
sampling-rate-msintegerFalseFalse

performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

powersave

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

schedutil

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

userspace

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

vm-boot-power-preferences

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
cpu-offlinecpu-offlineFalseFalseThe policy to offline CPUs to reduce power consumption. Mainly used by battery-saver mode (battery-saver-power-preferences). Empty by default and CPU won't be offlined.
cpufreq-disable-boostbooleanFalseFalse(Optional) Whether cpufreq boost mode will be disabled or not. Mainly used by WebRTC (video calls) and battery-saver mode (battery-saver-power-preferences) to reduce power consumption. Defaults to false, enabling cpufreq.
eppeppFalseFalse
governorgovernorFalseFalse

cpu-offline

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
halfhalfFalseGROUP(0)FalseOffline half of the cores.
small-coresmall-coreFalseGROUP(0)FalseOffline small cores.
smtsmtFalseGROUP(0)FalseOffline Simultaneous Multithreading (SMT).

half

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

small-core

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

smt

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

epp

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
balance-performancebalance-performanceFalseGROUP(0)False
balance-powerbalance-powerFalseGROUP(0)False
defaultdefaultFalseGROUP(0)False
performanceperformanceFalseGROUP(0)False
powerpowerFalseGROUP(0)False

balance-performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

balance-power

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

default

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

power

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

governor

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
conservativeconservativeFalseGROUP(0)False
ondemandondemandFalseGROUP(0)False
performanceperformanceFalseGROUP(0)False
powersavepowersaveFalseGROUP(0)False
schedutilschedutilFalseGROUP(0)False
userspaceuserspaceFalseGROUP(0)False

conservative

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

ondemand

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
powersave-biasintegerFalseFalse
sampling-rate-msintegerFalseFalse

performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

powersave

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

schedutil

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

userspace

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

web-rtc-power-preferences

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
cpu-offlinecpu-offlineFalseFalseThe policy to offline CPUs to reduce power consumption. Mainly used by battery-saver mode (battery-saver-power-preferences). Empty by default and CPU won't be offlined.
cpufreq-disable-boostbooleanFalseFalse(Optional) Whether cpufreq boost mode will be disabled or not. Mainly used by WebRTC (video calls) and battery-saver mode (battery-saver-power-preferences) to reduce power consumption. Defaults to false, enabling cpufreq.
eppeppFalseFalse
governorgovernorFalseFalse

cpu-offline

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
halfhalfFalseGROUP(0)FalseOffline half of the cores.
small-coresmall-coreFalseGROUP(0)FalseOffline small cores.
smtsmtFalseGROUP(0)FalseOffline Simultaneous Multithreading (SMT).

half

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

small-core

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

smt

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
min-active-threadsintegerFalseFalseThe minimum number of active threads required. If not set, resourced sets default to 2.

epp

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
balance-performancebalance-performanceFalseGROUP(0)False
balance-powerbalance-powerFalseGROUP(0)False
defaultdefaultFalseGROUP(0)False
performanceperformanceFalseGROUP(0)False
powerpowerFalseGROUP(0)False

balance-performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

balance-power

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

default

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

power

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

governor

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
conservativeconservativeFalseGROUP(0)False
ondemandondemandFalseGROUP(0)False
performanceperformanceFalseGROUP(0)False
powersavepowersaveFalseGROUP(0)False
schedutilschedutilFalseGROUP(0)False
userspaceuserspaceFalseGROUP(0)False

conservative

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

ondemand

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
powersave-biasintegerFalseFalse
sampling-rate-msintegerFalseFalse

performance

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

powersave

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

schedutil

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

userspace

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

rmad

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
enabledbooleanFalseFalseWhether enable Shimless RMA.
has-cbibooleanFalseFalseWhether the device has CBI.
ssfcssfcFalseFalseConfigs to generate the SSFC value on a device.
use-legacy-custom-labelbooleanFalseFalseWhether use the legacy custom label key in VPD.

ssfc

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
component-type-configsarray - component-type-configsFalseFalseConfigs for each component type.
maskintegerFalseFalseSSFC bitmap mask for bits that should be preserved after RMA, e.g. configs that can only be set by the factory but not the RMA center. Minimum value: 0x0. Maximum value: 0xffffffff.

component-type-configs

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
component-typestringFalseFalseComponent type, e.g. gyroscope.
default-valueintegerFalseFalseDefault SSFC value if none of the component in
probeable-componentsarray - probeable-componentsFalseFalseMapping of probeable components to SSFC values.

probeable-components

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
identifierstringFalseFalseComponent name in the probe statement, e.g. gyroscope_1.
valueintegerFalseFalseSSFC value of the component. Minimum value: 0x0. Maximum value: 0xffffffff.

schedqos

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
defaultdefaultFalseFalseDefines settings that configure resourced based on schedqos. https://chromium.googlesource.com/chromiumos/config/+/main/proto/chromiumos/config/api/schedqos_config.proto

default

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
background-cpu-shareintegerFalseFalseThe cpu share of background cpu cgroup.
normal-cpu-shareintegerFalseFalseThe cpu share of normal cpu cgroup.
thread-backgroundthread-backgroundFalseFalseThread config for schedqos of each QoS state.
thread-balancedthread-balancedFalseFalseThread config for schedqos of each QoS state.
thread-ecothread-ecoFalseFalseThread config for schedqos of each QoS state.
thread-urgentthread-urgentFalseFalseThread config for schedqos of each QoS state.
thread-urgent-burstythread-urgent-burstyFalseFalseThread config for schedqos of each QoS state.
thread-urgent-bursty-clientthread-urgent-bursty-clientFalseFalseThread config for schedqos of each QoS state.
thread-urgent-bursty-serverthread-urgent-bursty-serverFalseFalseThread config for schedqos of each QoS state.
thread-utilitythread-utilityFalseFalseThread config for schedqos of each QoS state.

thread-background

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
cpuset-cgroupstringFalseFalseThe cpuset cgroup to use.
latency-sensitivebooleanFalseFalseWhether the thread is latency sensitive or not. The value (1 for true, 0 for false) is set to /proc/pid/task/tid/latency_sensitive.
niceintegerFalseFalseThe nice value for scheduler. Minimum value: -0x14. Maximum value: 0x13.
rt-priorityintegerFalseFalseThe priority on RT mode. Negative value means RT is disabled.
uclamp-minintegerFalseFalsePercentage of uclamp.min. Minimum value: 0x0. Maximum value: 0x64.

thread-balanced

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
cpuset-cgroupstringFalseFalseThe cpuset cgroup to use.
latency-sensitivebooleanFalseFalseWhether the thread is latency sensitive or not. The value (1 for true, 0 for false) is set to /proc/pid/task/tid/latency_sensitive.
niceintegerFalseFalseThe nice value for scheduler. Minimum value: -0x14. Maximum value: 0x13.
rt-priorityintegerFalseFalseThe priority on RT mode. Negative value means RT is disabled.
uclamp-minintegerFalseFalsePercentage of uclamp.min. Minimum value: 0x0. Maximum value: 0x64.

thread-eco

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
cpuset-cgroupstringFalseFalseThe cpuset cgroup to use.
latency-sensitivebooleanFalseFalseWhether the thread is latency sensitive or not. The value (1 for true, 0 for false) is set to /proc/pid/task/tid/latency_sensitive.
niceintegerFalseFalseThe nice value for scheduler. Minimum value: -0x14. Maximum value: 0x13.
rt-priorityintegerFalseFalseThe priority on RT mode. Negative value means RT is disabled.
uclamp-minintegerFalseFalsePercentage of uclamp.min. Minimum value: 0x0. Maximum value: 0x64.

thread-urgent

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
cpuset-cgroupstringFalseFalseThe cpuset cgroup to use.
latency-sensitivebooleanFalseFalseWhether the thread is latency sensitive or not. The value (1 for true, 0 for false) is set to /proc/pid/task/tid/latency_sensitive.
niceintegerFalseFalseThe nice value for scheduler. Minimum value: -0x14. Maximum value: 0x13.
rt-priorityintegerFalseFalseThe priority on RT mode. Negative value means RT is disabled.
uclamp-minintegerFalseFalsePercentage of uclamp.min. Minimum value: 0x0. Maximum value: 0x64.

thread-urgent-bursty

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
cpuset-cgroupstringFalseFalseThe cpuset cgroup to use.
latency-sensitivebooleanFalseFalseWhether the thread is latency sensitive or not. The value (1 for true, 0 for false) is set to /proc/pid/task/tid/latency_sensitive.
niceintegerFalseFalseThe nice value for scheduler. Minimum value: -0x14. Maximum value: 0x13.
rt-priorityintegerFalseFalseThe priority on RT mode. Negative value means RT is disabled.
uclamp-minintegerFalseFalsePercentage of uclamp.min. Minimum value: 0x0. Maximum value: 0x64.

thread-urgent-bursty-client

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
cpuset-cgroupstringFalseFalseThe cpuset cgroup to use.
latency-sensitivebooleanFalseFalseWhether the thread is latency sensitive or not. The value (1 for true, 0 for false) is set to /proc/pid/task/tid/latency_sensitive.
niceintegerFalseFalseThe nice value for scheduler. Minimum value: -0x14. Maximum value: 0x13.
rt-priorityintegerFalseFalseThe priority on RT mode. Negative value means RT is disabled.
uclamp-minintegerFalseFalsePercentage of uclamp.min. Minimum value: 0x0. Maximum value: 0x64.

thread-urgent-bursty-server

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
cpuset-cgroupstringFalseFalseThe cpuset cgroup to use.
latency-sensitivebooleanFalseFalseWhether the thread is latency sensitive or not. The value (1 for true, 0 for false) is set to /proc/pid/task/tid/latency_sensitive.
niceintegerFalseFalseThe nice value for scheduler. Minimum value: -0x14. Maximum value: 0x13.
rt-priorityintegerFalseFalseThe priority on RT mode. Negative value means RT is disabled.
uclamp-minintegerFalseFalsePercentage of uclamp.min. Minimum value: 0x0. Maximum value: 0x64.

thread-utility

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
cpuset-cgroupstringFalseFalseThe cpuset cgroup to use.
latency-sensitivebooleanFalseFalseWhether the thread is latency sensitive or not. The value (1 for true, 0 for false) is set to /proc/pid/task/tid/latency_sensitive.
niceintegerFalseFalseThe nice value for scheduler. Minimum value: -0x14. Maximum value: 0x13.
rt-priorityintegerFalseFalseThe priority on RT mode. Negative value means RT is disabled.
uclamp-minintegerFalseFalsePercentage of uclamp.min. Minimum value: 0x0. Maximum value: 0x64.

scheduler-tune

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
boost-arcvmnumberFalseFalse(Optional) Global scheduler‘s boost factor of the ARCVM vcores and host services. For normal architectures, the boost-arcvm is directly converted to % boost value, where 1.0 is 100%. For the little.Big architecture, the ARCVM will be boosted by a % value, calculated from the formula little-core-freq / big-core-freq * boost-arcvm. Besides boosting the scheduler for the VM by a % value, the cgroup’s uclamp.latency_sensitive attribute is enabled to further reduce the scheduling latency. Note - this is intended to be a temporary solution, which will be removed upon having the more appropriate scheduler improvements ready.
boost-top-appintegerFalseFalse(Optional) Scheduler's boost value(%) for ARCVM topmost applications. When top-app class application is running, ARCVM applies this value to scheduler attribute. Tasks with higher boost value are more likely to have higher operating power point even when the system is low-utilized. If it is not set, the default value will be calculated by the performance ratio of the highest performance core and the lowest performance core. So the recommended value is higher than that. 0 means no boost and is not recommended. Minimum value: 0x0. Maximum value: 0x64.
boost-urgentintegerFalseFalse(Optional) Scheduler's boost value(%) for urgent tasks. When an urgent thread is created, chrome applies this value to scheduler attribute. Tasks with higher boost value are more likely to have higher operating power point even when the system is low utilized. Minimum value: 0x0. Maximum value: 0x64.
cpuset-nonurgentstring^[0-9]+(-[0-9]+|(,[0-9]+)+)$FalseFalse(Optional) non-urgent task are only allowed to use given CPUs.
input-boostintegerFalseFalse(Optional) chromium kernel has a cpu-boost feature, which boosts CPUs for a short duration when user intraction is detected from input devices. This value specifies how much CPUs will be boosted. Minimum value: 0x0. Maximum value: 0x64.

spi-flash-transform

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription

swap

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
size-multipliernumberFalseFalseThe size of zram swap as a multiplier of the physical memory.

thermal

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
dptf-dvstringFalseFalseSystem image path to the .dv file containing DPTF (Dynamic Platform and Thermal Framework) settings.
filesarray - filesTrueTrue

files

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
destinationstringFalseTrueInstallation path for the file on the system image.
sourcestringFalseTrueSource of the file relative to the build system.

touch

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
filesarray - filesFalseTrue

files

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
destinationstringFalseTrueInstallation path for the file on the system image.
sourcestringFalseTrueSource of the file relative to the build system ${FILESDIR}
symlinkstringFalseTrueSymlink file that will be installed pointing to the destination.

typecd

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
mode-entry-dp-onlybooleanFalseFalseAP driven alternate mode entry on this system should be restricted to DisplayPort alternate mode.

ui

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
appsappsFalseFalse
ash-disabled-featuresarray - stringFalseTrueDisabled features passed to the Ash window manager and system UI. Each entry should be a string of the form FeatureName. If this property is not set, features will be determined by other cros_config properties. Serialized to a null byte separated string when written to configfs.img
ash-enabled-featuresarray - stringFalseTrueEnabled features passed to the Ash window manager and system UI. Each entry should be a string of the form FeatureName. If this property is not set, features will be determined by other cros_config properties. Serialized to a null byte separated string when written to configfs.img
extra-ash-flagsarray - stringFalseTrueSwitches passed to the Ash window manager and system UI. Each entry should be a string of the form --=, or -- for boolean switches. If this property is not set, flags will be determined by other cros_config properties. Serialized to a null byte separated string when written to configfs.img
handwriting-recognition-web-platform-apibooleanFalseFalseWhether the handwriting recognition web platform API is supported.
help-content-idstringFalseFalseIdentifier passed to the Showoff app to identify any device-specific help content to be displayed.
power-buttonpower-buttonFalseFalse
side-volume-buttonside-volume-buttonFalseFalseDefines the position of the side volume button. region indicates whether the button is at the side of the “screen” or “keyboard” of the device. side indicates which edge the button is anchored to while the device in landscape primary screen orientation. It can be “left”, “right”, “top”, “bottom”.

apps

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
extra-web-apps-dirstringFalseTrueSubdirectory of external web apps directory (/usr/share/google-chrome/extensions/web_apps) containing additional apps which should be installed on the device.

power-button

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
edgestringFalseFalse
positionstringFalseFalse

side-volume-button

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
regionstringFalseFalse
sidestringFalseFalse

uwb

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
has-uwbbooleanFalseFalseWhether the model has UWB equipped.

wifi

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
non-tablet-mode-power-table-ath10knon-tablet-mode-power-table-ath10kFalseath10kFalse[ath10k] WiFi power chain for use with QCA ath10k drivers. Limits in units of 0.25 dBm. 5g band power limit applies to all 5g bands.
tablet-mode-power-table-ath10ktablet-mode-power-table-ath10kFalseath10kFalse[ath10k] WiFi power chain for use with QCA ath10k drivers. Limits in units of 0.25 dBm. 5g band power limit applies to all 5g bands.
geo-offsets-eugeo-offsets-euFalsertwFalseOffsets which are applied to WiFi power limits depending on the current regulatory domain. Offsets in units of 0.125 dBm. The sum of a geo offset and any power limit to which it applies cannot exceed 255. When the current regulatory domain is unknown or has yet to be determined, the base transmit power limits are used without any geo offsets applied. ‘geo-offsets-fcc’ is used for regulatory domains which follow FCC guidelines, ‘geo-offsets-eu’ is used for regulatory domains which follow ETSI guidelines, and ‘geo-offsets-rest-of-world’ is used for regulatory domains which don't follow FCC or ETSI guidelines.
geo-offsets-fccgeo-offsets-fccFalsertwFalseOffsets which are applied to WiFi power limits depending on the current regulatory domain. Offsets in units of 0.125 dBm. The sum of a geo offset and any power limit to which it applies cannot exceed 255. When the current regulatory domain is unknown or has yet to be determined, the base transmit power limits are used without any geo offsets applied. ‘geo-offsets-fcc’ is used for regulatory domains which follow FCC guidelines, ‘geo-offsets-eu’ is used for regulatory domains which follow ETSI guidelines, and ‘geo-offsets-rest-of-world’ is used for regulatory domains which don't follow FCC or ETSI guidelines.
geo-offsets-rest-of-worldgeo-offsets-rest-of-worldFalsertwFalseOffsets which are applied to WiFi power limits depending on the current regulatory domain. Offsets in units of 0.125 dBm. The sum of a geo offset and any power limit to which it applies cannot exceed 255. When the current regulatory domain is unknown or has yet to be determined, the base transmit power limits are used without any geo offsets applied. ‘geo-offsets-fcc’ is used for regulatory domains which follow FCC guidelines, ‘geo-offsets-eu’ is used for regulatory domains which follow ETSI guidelines, and ‘geo-offsets-rest-of-world’ is used for regulatory domains which don't follow FCC or ETSI guidelines.
non-tablet-mode-power-table-rtwnon-tablet-mode-power-table-rtwFalsertwFalse[rtw] WiFi power chain for use with Realtek rtw88 or rtw89 drivers. Limits in units of 0.125 dBm for rtw88 and 0.25 dBm for rtw89. 5g band 2 (channels 5.35G-5.47G) power limit is not supported.
tablet-mode-power-table-rtwtablet-mode-power-table-rtwFalsertwFalse[rtw] WiFi power chain for use with Realtek rtw88 or rtw89 drivers. Limits in units of 0.125 dBm for rtw88 and 0.25 dBm for rtw89. 5g band 2 (channels 5.35G-5.47G) power limit is not supported.
eu-power-table-mtkeu-power-table-mtkFalsemtkFalse[mtk] WiFi power chain of regulatory domain for use with MediaTek mt7921 driver. Limits in units of 0.25 dBm, Offset in units of 0.25 dBm
fcc-power-table-mtkfcc-power-table-mtkFalsemtkFalse[mtk] WiFi power chain of regulatory domain for use with MediaTek mt7921 driver. Limits in units of 0.25 dBm, Offset in units of 0.25 dBm
non-tablet-mode-power-table-mtknon-tablet-mode-power-table-mtkFalsemtkFalse[mtk] WiFi power chain for use with MediaTek mt7921 driver. Limits in units of 0.25 dBm.
rest-of-world-power-table-mtkrest-of-world-power-table-mtkFalsemtkFalse[mtk] WiFi power chain of regulatory domain for use with MediaTek mt7921 driver. Limits in units of 0.25 dBm, Offset in units of 0.25 dBm
tablet-mode-power-table-mtktablet-mode-power-table-mtkFalsemtkFalse[mtk] WiFi power chain for use with MediaTek mt7921 driver. Limits in units of 0.25 dBm.
sar-filesar-fileFalseGROUP(3)False

non-tablet-mode-power-table-ath10k

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
limit-2gintegerFalseFalse2G band power limit (0.25dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-5gintegerFalseFalse5G band power limit (0.25dBm) Minimum value: 0x0. Maximum value: 0xff.

tablet-mode-power-table-ath10k

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
limit-2gintegerFalseFalse2G band power limit (0.25dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-5gintegerFalseFalse5G band power limit (0.25dBm) Minimum value: 0x0. Maximum value: 0xff.

geo-offsets-eu

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
offset-2gintegerFalseFalseValue to be added to the 2.4GHz WiFi band. (0.125 dBm) Minimum value: 0x0. Maximum value: 0xff.
offset-5gintegerFalseFalseValue to be added to all 5GHz WiFi bands. (0.125 dBm) Minimum value: 0x0. Maximum value: 0xff.
offset-6gintegerFalseFalseValue to be added to all 6GHz WiFi bands. (0.125 dBm) Minimum value: 0x0. Maximum value: 0xff.

geo-offsets-fcc

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
offset-2gintegerFalseFalseValue to be added to the 2.4GHz WiFi band. (0.125 dBm) Minimum value: 0x0. Maximum value: 0xff.
offset-5gintegerFalseFalseValue to be added to all 5GHz WiFi bands. (0.125 dBm) Minimum value: 0x0. Maximum value: 0xff.
offset-6gintegerFalseFalseValue to be added to all 6GHz WiFi bands. (0.125 dBm) Minimum value: 0x0. Maximum value: 0xff.

geo-offsets-rest-of-world

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
offset-2gintegerFalseFalseValue to be added to the 2.4GHz WiFi band. (0.125 dBm) Minimum value: 0x0. Maximum value: 0xff.
offset-5gintegerFalseFalseValue to be added to all 5GHz WiFi bands. (0.125 dBm) Minimum value: 0x0. Maximum value: 0xff.
offset-6gintegerFalseFalseValue to be added to all 6GHz WiFi bands. (0.125 dBm) Minimum value: 0x0. Maximum value: 0xff.

non-tablet-mode-power-table-rtw

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
limit-2gintegerFalseFalse2G band power limit: All 2G band channels. (0.125 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-5g-1integerFalseFalse5G band 1 power limit: 5.15G-5.35G channels. (0.125 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-5g-3integerFalseFalse5G band 3 power limit: 5.47G-5.725G channels. (0.125 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-5g-4integerFalseFalse5G band 4 power limit: 5.725G-5.95G channels. (0.125 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-6g-1integerFalseFalse6G band 1 power limit: 5.955G-6.155G channels. (0.125 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-6g-2integerFalseFalse6G band 1 power limit: 6.175G-6.415G channels. (0.125 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-6g-3integerFalseFalse6G band 1 power limit: 6.435G-6.515G channels. (0.125 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-6g-4integerFalseFalse6G band 1 power limit: 6.535G-6.695G channels. (0.125 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-6g-5integerFalseFalse6G band 1 power limit: 6.715G-6.855G channels. (0.125 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-6g-6integerFalseFalse6G band 1 power limit: 6.895G-7.115G channels. (0.125 dBm) Minimum value: 0x0. Maximum value: 0xff.

tablet-mode-power-table-rtw

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
limit-2gintegerFalseFalse2G band power limit: All 2G band channels. (0.125 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-5g-1integerFalseFalse5G band 1 power limit: 5.15G-5.35G channels. (0.125 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-5g-3integerFalseFalse5G band 3 power limit: 5.47G-5.725G channels. (0.125 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-5g-4integerFalseFalse5G band 4 power limit: 5.725G-5.95G channels. (0.125 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-6g-1integerFalseFalse6G band 1 power limit: 5.955G-6.155G channels. (0.125 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-6g-2integerFalseFalse6G band 1 power limit: 6.175G-6.415G channels. (0.125 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-6g-3integerFalseFalse6G band 1 power limit: 6.435G-6.515G channels. (0.125 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-6g-4integerFalseFalse6G band 1 power limit: 6.535G-6.695G channels. (0.125 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-6g-5integerFalseFalse6G band 1 power limit: 6.715G-6.855G channels. (0.125 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-6g-6integerFalseFalse6G band 1 power limit: 6.895G-7.115G channels. (0.125 dBm) Minimum value: 0x0. Maximum value: 0xff.

eu-power-table-mtk

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
limit-2gintegerFalseFalse2G band geo power limit. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-5gintegerFalseFalse5G band geo power limit. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-6gintegerFalseFalse6G band geo power limit. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
offset-2gintegerFalseFalseValue to be added to the 2.4GHz WiFi band. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
offset-5gintegerFalseFalseValue to be added to all 5GHz WiFi bands. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
offset-6gintegerFalseFalseValue to be added to all 6GHz WiFi bands. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.

fcc-power-table-mtk

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
limit-2gintegerFalseFalse2G band geo power limit. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-5gintegerFalseFalse5G band geo power limit. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-6gintegerFalseFalse6G band geo power limit. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
offset-2gintegerFalseFalseValue to be added to the 2.4GHz WiFi band. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
offset-5gintegerFalseFalseValue to be added to all 5GHz WiFi bands. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
offset-6gintegerFalseFalseValue to be added to all 6GHz WiFi bands. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.

non-tablet-mode-power-table-mtk

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
limit-2gintegerFalseFalse2G band power limit. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-5g-1integerFalseFalse5G band 1 power limit: 5.15G-5.35G frequency. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-5g-2integerFalseFalse5G band 2 power limit: 5.35G-5.47G frequency. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-5g-3integerFalseFalse5G band 3 power limit: 5.47G-5.725G frequency. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-5g-4integerFalseFalse5G band 4 power limit: 5.725G-5.95G frequency. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-6g-1integerFalseFalse6G band 1 power limit: 5.945G-6.165G frequency. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-6g-2integerFalseFalse6G band 2 power limit: 6.165G-6.405G frequency. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-6g-3integerFalseFalse6G band 3 power limit: 6.405G-6.525G frequency. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-6g-4integerFalseFalse6G band 4 power limit: 6.525G-6.705G frequency. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-6g-5integerFalseFalse6G band 5 power limit: 6.705G-6.865G frequency. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-6g-6integerFalseFalse6G band 6 power limit: 6.865G-7.125G frequency. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.

rest-of-world-power-table-mtk

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
limit-2gintegerFalseFalse2G band geo power limit. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-5gintegerFalseFalse5G band geo power limit. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-6gintegerFalseFalse6G band geo power limit. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
offset-2gintegerFalseFalseValue to be added to the 2.4GHz WiFi band. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
offset-5gintegerFalseFalseValue to be added to all 5GHz WiFi bands. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
offset-6gintegerFalseFalseValue to be added to all 6GHz WiFi bands. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.

tablet-mode-power-table-mtk

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
limit-2gintegerFalseFalse2G band power limit. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-5g-1integerFalseFalse5G band 1 power limit: 5.15G-5.35G frequency. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-5g-2integerFalseFalse5G band 2 power limit: 5.35G-5.47G frequency. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-5g-3integerFalseFalse5G band 3 power limit: 5.47G-5.725G frequency. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-5g-4integerFalseFalse5G band 4 power limit: 5.725G-5.95G frequency. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-6g-1integerFalseFalse6G band 1 power limit: 5.945G-6.165G frequency. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-6g-2integerFalseFalse6G band 2 power limit: 6.165G-6.405G frequency. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-6g-3integerFalseFalse6G band 3 power limit: 6.405G-6.525G frequency. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-6g-4integerFalseFalse6G band 4 power limit: 6.525G-6.705G frequency. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-6g-5integerFalseFalse6G band 5 power limit: 6.705G-6.865G frequency. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.
limit-6g-6integerFalseFalse6G band 6 power limit: 6.865G-7.125G frequency. (0.25 dBm) Minimum value: 0x0. Maximum value: 0xff.

sar-file

AttributeTypeRegExRequiredOneof GroupBuild-onlyDescription
build-pathstringTrueTrueSource of the file relative to the build system.
system-pathstringTrueFalseInstallation path for the file on the system image.

On the Device

At bootup, cros_configfs is executed to mount /usr/share/chromeos-config/configfs.img at /run/chromeos-config/private. The table of contents is scanned to match the device's identity to a matching configuration, and the corresponding directory then gets mounted (via a bind mount) to /run/chromeos-config/v1.

Identity Matching

Identity matching is done by comparing properties which come from /identity to the corresponding values from firmware. If properties are left unspecified in /identity, they will match any value from firmware, or even a missing value. There is one exception, if there is a custom_label_tag in VPD, the custom-label-tag in /identity should be matched no matter is it a missing value or not.

The first config with a matching identity is selected.

The files in the table below, exposed from firmware by the kernel, are used to compare the values from firmware. Strings are compared case-insensitive.

Property (from /identity)x86 fileARM file
frid/sys/devices/platform/chromeos_acpi/FRID or /sys/devices/platform/GGL0001:00/FRID or /sys/devices/platform/GOOG0016:00/FRID/proc/device-tree/firmware/chromeos/readonly-firmware-version
sku-id/sys/class/dmi/id/product_sku/proc/device-tree/firmware/coreboot/sku-id
customization-id/sys/firmware/vpd/ro/customization_id/sys/firmware/vpd/ro/customization_id
custom-label-tag/sys/firmware/vpd/ro/custom_label_tag/sys/firmware/vpd/ro/custom_label_tag
feature-device-type/sys/firmware/vpd/rw/feature_device_type/sys/firmware/vpd/rw/feature_device_type

Note: Prior to 2022, the VPD key for custom-label-tag was called whitelabel_tag. If /sys/firmware/vpd/ro/custom_label_tag does not exist, /sys/firmware/vpd/ro/whitelabel_tag is checked instead.

Note: feature_device_type, being stored in RW VPD, is at greater risk of corruption in shipped units. This is mitigated by enforcing that an “off” configuration with an otherwise-equivalent identity match is present for every identity with a non-“off” value, acting as a fallback configuration. Additionally, libsegmentation will calculate the expected value and repopulate it in RW VPD if necessary.

File Parsing Notes

All files are parsed as strings, except where mentioned below:

FRID files: Everything up to the first period (.) in the file is used.

/sys/class/dmi/id/product_sku: This file is parsed as scanf("sku%u", &sku_id).

/proc/device-tree/firmware/coreboot/sku-id: 4 bytes, parsed as a 32-bit network-endian integer.

Accessing the Config

The configuration can be read by any language or library simply by reading the corresponding file to the property. For example, to read /ui/power-button:edge from the configuration, you can simply read the contents of /run/chromeos-config/v1/ui/power-button/edge.

There is also the cros_config command line tool, which can cat these files for you, or libcros_config, which provides C++ bindings used widely across platform2 to read these files.

Usage Instructions

Adding and testing new properties

Before starting, cros_workon the following:

(chroot) $ cros_workon --host start chromeos-config-host
(chroot) $ cros_workon --board=BOARD start chromeos-config-bsp chromeos-config

To introduce a new property, first add its definition to the schema:

chromeos-config/cros_config_host/cros_config_schema.yaml

Then update generated files and the README.md automatically via (unit tests will check this):

src/platform2/chromeos-config/regen.py

You'll want to run ./regen.py when adding or changing the schema, power management preferences, or anything which modifies the outputs of cros_config_schema.

To install the updated schema, run:

(chroot) $ FEATURES=test sudo -E emerge chromeos-config-host

To use the new property, update your respective YAML source file. e.g. overlay-${BOARD}-private/chromeos-base/chromeos-config-bsp/files/model.yaml

To install the changes, run:

(chroot) $ emerge-${BOARD} chromeos-config-bsp chromeos-config

At this point the updated config is located at:

/build/${BOARD}/usr/share/chromeos-config/yaml/config.yaml

To query your new item run the test command in the chroot:

(chroot) $ cros_config_host -c /build/${BOARD}/usr/share/chromeos-config/yaml/config.yaml -m <MODEL> get </path/to/property> <property name>

For instance:

(chroot) $ cros_config_host -c /build/coral/usr/share/chromeos-config/yaml/config.yaml -m robo360 get /firmware key-id
(chroot) $ cros_config_host -c /build/coral/usr/share/chromeos-config/yaml/config.yaml list-models