tree: 08886ad06240bbf4885cb712d473c2a0855d5ba3 [path history] [tgz]
  1. bindings/
  2. docgen/
  3. brand_config.star
  4. build_metadata.star
  5. component.star
  6. config_bundle.star
  7. design.star
  8. device_brand.star
  9. dut.star
  10. flat_config.star
  11. generate.star
  12. hw_features.star
  13. hw_topology.star
  14. OWNERS
  15. partner.star
  16. portage.star
  17. program.star
  18. public_replication.star
  19. README.md
  20. sw_config.star
  21. system_image.star
  22. test_plan.star
  23. test_plan_v2.star
util/README.md

Config API Reference

Updating this Reference

This reference is automatically generated based on Starlark docstrings. If you change a Starlark util function, run util/docgen/generate.sh to regenerate. A few tips:

  • Templating is based on Go‘s text/template package. Usually, the contents this template file won’t need to be changed in order to regenerate.

  • Generation is based on docstrings, not the actual Starlark signatures. Thus, an “Args” section needs to be specified in the docstring in order for args to be picked up. Similarly, a “Returns” section needs to be specified in the docstring for returns to get picked up.

  • Specify “Required.” after an argument to make it a required argument in the generated documentation.

//config/util/brand_config.star

brand_config.create {#brand_config.create}

Builds a BrandConfig proto.

brand_config.create(
    # Required arguments.
    device_brand_id,

    # Optional arguments.
    wallpaper = None,
    regulatory_label = None,
    whitelabel_tag = None,
    help_content_id = None,
)

Arguments {#brand_config.create-args}

  • device_brand_id: A DeviceBrandId proto that is used to select a BrandConfig at runtime. Required.
  • wallpaper: Base filename of the default wallpaper to show.
  • regulatory_label: See chromeos-config readme
  • whitelabel_tag: “whitelabel_tag” value set in the VPD, used to select a BrandConfig at runtime. See https://chromeos.google.com/partner/dlm/docs/factory/vpd.html#field-whitelabel_tag.
  • help_content_id: help content identifier

Returns {#brand_config.create-returns}

A BrandConfig proto.

//config/util/component.star

comp.create_soc_family {#comp.create_soc_family}

Builds a Component.Soc.Family proto.

comp.create_soc_family()

comp.create_soc_model {#comp.create_soc_model}

Builds a Component proto for an Soc.

comp.create_soc_model()

comp.create_bt {#comp.create_bt}

Builds a Component proto for Bluetooth.

comp.create_bt()

comp.create_cellular {#comp.create_cellular}

Builds a Component proto for Cellular device.

comp.create_cellular()

comp.create_display_panel {#comp.create_display_panel}

Builds a Component.DisplayPanel proto for touchscreen.

comp.create_display_panel()

comp.create_touchscreen {#comp.create_touchscreen}

Builds a Component.Touch proto for touchscreen.

comp.create_touchscreen()

comp.create_touchpad {#comp.create_touchpad}

Builds a Component.Touch proto for touchpad.

comp.create_touchpad()

comp.create_wifi {#comp.create_wifi}

Builds a Component proto for Wifi.

comp.create_wifi()

comp.create_qual {#comp.create_qual}

Builds a Component.Qualification proto.

comp.create_qual()

comp.create_quals {#comp.create_quals}

Builds a Component.Qualification proto for each of component_ids.

comp.create_quals()

comp.create_amplifier {#comp.create_amplifier}

Builds a Component.Amplifier proto.

comp.create_amplifier()

comp.create_audio_codec {#comp.create_audio_codec}

Builds a Component.AudioCodec proto.

comp.create_audio_codec()

comp.create_battery {#comp.create_battery}

comp.create_battery()

comp.create_ec_flash_chip {#comp.create_ec_flash_chip}

Build a Component.FlashChip proto.

comp.create_ec_flash_chip()

comp.create_flash_chip {#comp.create_flash_chip}

Build a Component.FlashChip proto.

comp.create_flash_chip()

comp.create_embedded_controller {#comp.create_embedded_controller}

Build a Component.EmbeddedController proto.

comp.create_embedded_controller()

comp.create_storage_mmc {#comp.create_storage_mmc}

Build a Component.Storage proto for an MMC device.

comp.create_storage_mmc()

comp.create_tpm {#comp.create_tpm}

Build a Component.Tpm proto.

comp.create_tpm()

comp.create_usb {#comp.create_usb}

Builds a Interface.Usb proto.

comp.create_usb()

comp.create_pci {#comp.create_pci}

Builds a Interface.Pci proto.

comp.create_pci()

comp.append_battery {#comp.append_battery}

comp.append_battery()

comp.append_display_panel {#comp.append_display_panel}

comp.append_display_panel()

comp.append_touchpad {#comp.append_touchpad}

comp.append_touchpad()

comp.append_touchscreen {#comp.append_touchscreen}

comp.append_touchscreen()

//config/util/config_bundle.star

config_bundle.create {#config_bundle.create}

Builds a ConfigBundle proto.

config_bundle.create()

config_bundle.generate {#config_bundle.generate}

Serializes a ConfigBundle to a file.

A json proto is written. Note that there is some post processing done by the gen_config script to convert this json output into a json output that uses ints for encoding enums.

config_bundle.generate()

//config/util/design.star

design.append_configs {#design.append_configs}

Creates and appends new SW and HW configs.

Create new Software and Hardware Design Configuration with the specified properties and then append them to the sw_configs and hw_configs arrays respectively. This ensures that all IDs are consistent.

design.append_configs(
    # Required arguments.
    sw_configs,
    hw_configs,
    design_id,
    config_id,

    # Optional arguments.
    extra_hw_config_public_fields = None,
    extra_sw_config_public_fields = None,
    hardware_topology = None,
    firmware = None,
    firmware_build_config = None,
    firmware_info = None,
    bluetooth = None,
    power = None,
    audio = None,
    wifi = None,
    camera = None,
    health = None,
    ui = None,
    device_tree_compatible_match = None,
    smbios_name_match_override = None,
    frid = None,
)

Arguments {#design.append_configs-args}

  • sw_configs: An array to append the new SoftwareConfig to. Required.
  • hw_configs: An array to append the new Design.Config to. Required.
  • design_id: A DesignId to use for the Design.Config and SoftwareConfig. Required.
  • config_id: A str or int used to construct the DesignConfigId for the Design.Config and SoftwareConfig. Required.
  • extra_hw_config_public_fields: A list of str specifying fields on Design.Config that will be made public in addition to the default _DEFAULT_PUBLIC_HW_CONFIG_FIELDS. See PublicReplication proto for details.
  • extra_sw_config_public_fields: A list of str specifying fields on SoftwareConfig that will be made public in addition to the default _DEFAULT_PUBLIC_SW_CONFIG_FIELDS. See PublicReplication proto for details.
  • hardware_topology: A HardwareTopology to be used in the Design.Config.
  • firmware: A FirmwareConfig to be used in the SoftwareConfig.
  • firmware_build_config: A FirmwareBuildConfig to be used in the SoftwareConfig.
  • firmware_info: Information related to runtime firmware.
  • bluetooth: A BluetoothConfig to be used in the SoftwareConfig.
  • power: A PowerConfig to be used in the SoftwareConfig.
  • audio: An AudioConfig to be used in the SoftwareConfig. Can be either a single AudioConfig or a list of AudioConfigs.
  • wifi: A WifiConfig to be used in the SoftwareConfig.
  • camera: A CameraConfig to be used in the SoftwareConfig.
  • health: A HealthConfig to be used in the SoftwareConfig.
  • ui: A UiConfig to be used in the SoftwareConfig.
  • device_tree_compatible_match: For ARM platform, a str used for device_tree_compatible_match in IdentityScanConfig.
  • smbios_name_match_override: For x86 platform, a str used for smbios_name_match in IdentityScanConfig. If not specified, the string in DesignId is used. Note only one of device_tree_compatible_match and smbios_name_match_override can be specified.
  • frid: A str used for frid matching. Note: This will override device_tree_compatible_match and smbios_name_match_override.

design.create_constraint {#design.create_constraint}

Builds a Design.Config.Constraint proto.

design.create_constraint()

design.create_constraints {#design.create_constraints}

Builds a Design.Config.Constrain proto for each of hw_features.

design.create_constraints()

design.create_design_id {#design.create_design_id}

Builds a DesignId proto.

design.create_design_id()

design.create_design {#design.create_design}

Builds a Design proto.

design.create_design()

design.generate

Serializes a ConfigBundle to a file.

A json proto is written. Note that there is some post processing done by the gen_config script to convert this json output into a json output that uses ints for encoding enums.

design.generate()

//config/util/device_brand.star

device_brand.create {#device_brand.create}

Builds a DeviceBrand proto.

device_brand.create()

//config/util/hw_topology.star

hw_topo.create_design_features {#hw_topo.create_design_features}

Builds a HardwareFeatures proto with form_factor.

hw_topo.create_design_features()

hw_topo.create_features {#hw_topo.create_features}

Builds a HardwareFeatures proto for each of form_factors.

hw_topo.create_features()

hw_topo.create_screen {#hw_topo.create_screen}

Builds a Topology proto for a screen.

hw_topo.create_screen()

hw_topo.create_als_step {#hw_topo.create_als_step}

Builds a Component.AlsStep. lux_decrease_threshold: An int containing the sensor value below which the previous step should be considered. A value of None indicates negative infinity. lux_increase_threshold: An int containing the sensor value above which the next step should be considered. A value of None indicates infinity. ac_backlight_percent: A double containing the backlight brightness percentage to use at this step while on AC power. battery_backlight_percent: A double containing the backlight brightness percentage to use at this step while on battery power. If unset, defaults to the ac_backlight_percent value.

hw_topo.create_als_step()

hw_topo.create_form_factor {#hw_topo.create_form_factor}

Builds a Topology proto for a form factor.

hw_topo.create_form_factor(
    # Required arguments.
    form_factor,

    # Optional arguments.
    fw_configs = None,
    id = None,
    description = None,
)

Arguments {#hw_topo.create_form_factor-args}

  • form_factor: A FormFactorType enum. Required.
  • fw_configs: A list of FirmwareConfiguration protos for the form factor.
  • id: A string identifier for the Topology. If not passed, a default is provided based on form_factor.
  • description: An English description for the Topology. If not passed, a default is provided based on form_factor.

hw_topo.create_audio {#hw_topo.create_audio}

Builds a Topology proto for audio.

hw_topo.create_audio(
    # Optional arguments.
    id = None,
    description = None,
    codec = None,
    speaker_amp = None,
    headphone_codec = None,
    fw_configs = None,
    card_configs = None,
    cras_config = None,
)

Arguments {#hw_topo.create_audio-args}

  • id: A string identifier for the Topology.
  • description: An English description for the Topology.
  • codec: Deprecated.
  • speaker_amp: An Amplifier enum value specifying the speaker amplifier.
  • headphone_codec: An AudioCodec enum value specifying the jack codec.
  • fw_configs: A list of FirmwareConfiguration protos for this audio topology.
  • card_configs: A list of CardConfig protos specifying card configs to be installed and used for this audio topology.
  • cras_config: An AudioConfigStructure enum specifying how card-agnostic cras config files are structured. If unset, defaults to DESIGN if any card_configs are passed, otherwise NONE.

hw_topo.create_audio_card_config {#hw_topo.create_audio_card_config}

Builds a CardConfig proto for an audio card config.

hw_topo.create_audio_card_config(
    # Optional arguments.
    card_name = None,
    ucm_suffix = None,
    cras_config = None,
    ucm_config = None,
    sound_card_init_config = None,
)

Arguments {#hw_topo.create_audio_card_config-args}

  • card_name: A string. This should match the card used by ALSA, with an optional suffix starting with a dot, if a suffix representing hardware details, such as the speaker amplifier or jack codec is required. For example, “sof-rt5682.max98373”.
  • ucm_suffix: An optional format string used to generate the remainder of the UCM suffix not referring to audio components. If unset, the program-wide default suffix is used. The following placeholders may be used: {design}: The design name. {camera_count}: The number of cameras (usually 0, 1 or 2). {headset_codec}: The headset codec name (in lowercase) specified in the topology containing this card config. {speaker_amp}: The speaker amp name (in lowercase) specified in the topology containing this card config. {mic_description}: A description of the microphone topology, of the form {user_facing_mic_count}uf{world_facing_mic_count}wf, with components elided if their count is 0. {total_mic_count}: The total number of internal microphones. {user_facing_mic_count}: The number of internal user-facing microphones. {world_facing_mic_count}: The number of internal world-facing microphones. It is strongly recommended that any details of the speaker amplifier or jack codec not be included in this suffix - they should instead be included as part of card_name.
  • cras_config: An AudioConfigStructure enum specifying how cras config files are structured for this card. If unset, defaults to DESIGN.
  • ucm_config: An AudioConfigStructure enum specifying how ALSA UCM config files are structured for this card. If unset, defaults to DESIGN.
  • sound_card_init_config: An AudioConfigStructure enum specifying how sound card init config files are structured for this card. If unset, defaults to NONE.

hw_topo.override_audio {#hw_topo.override_audio}

hw_topo.override_audio()

hw_topo.create_stylus {#hw_topo.create_stylus}

Builds a Topology proto for a stylus.

hw_topo.create_stylus()

hw_topo.create_keyboard {#hw_topo.create_keyboard}

Builds a Topology proto for a keyboard.

hw_topo.create_keyboard(
    # Required arguments.
    backlight,
    pwr_btn_present,
    kb_type,

    # Optional arguments.
    numpad_present = None,
    fw_configs = None,
    id = None,
    description = None,
    backlight_user_steps = None,
)

Arguments {#hw_topo.create_keyboard-args}

  • backlight: True if a backlight is present. Required.
  • pwr_btn_present: True if a power button is present. Required.
  • kb_type: A KeyboardType enum. Required.
  • numpad_present: True if numeric pad is present.
  • fw_configs: A list of FirmwareConfiguration protos for the form factor.
  • id: A string identifier for the Topology. If not passed, a default is provided.
  • description: An English description for the Topology. If not passed, a default is provided.
  • backlight_user_steps: A list of doubles specifying the user-selectable backlight steps in increasing order, starting from 0. This controls the keyboard_backlight_user_steps powerd pref.
  • mcu_type: A KeyboardMcuType enum. Optional.

hw_topo.create_thermal {#hw_topo.create_thermal}

Builds a Topology proto for thermal.

hw_topo.create_thermal()

hw_topo.create_camera {#hw_topo.create_camera}

Builds a Topology proto for cameras.

hw_topo.create_camera(
    # Optional arguments.
    id = None,
    description = None,
    fw_configs = None,
    camera_devices = None,
)

Arguments {#hw_topo.create_camera-args}

  • id: A string identifier for the Topology.
  • description: An English description for the Topology.
  • fw_configs: A list of FirmwareConfiguration protos for the form factor.
  • camera_devices: A list of HardwareFeatures.Camera.Device protos.

hw_topo.create_sensor {#hw_topo.create_sensor}

Builds a Topology proto for accelerometer/gyroscrope/magnometer sensors.

hw_topo.create_sensor()

hw_topo.create_fingerprint {#hw_topo.create_fingerprint}

Builds a Topology proto for a fingerprint reader.

hw_topo.create_fingerprint()

hw_topo.create_proximity_sensor {#hw_topo.create_proximity_sensor}

Builds a Topology proto for proximity sensors.

hw_topo.create_proximity_sensor()

hw_topo.create_daughter_board {#hw_topo.create_daughter_board}

Builds a Topology proto for a daughter board.

hw_topo.create_daughter_board()

hw_topo.create_non_volatile_storage {#hw_topo.create_non_volatile_storage}

Builds a Topology proto for non-volatile storage.

hw_topo.create_non_volatile_storage()

hw_topo.create_wifi {#hw_topo.create_wifi}

Builds a Topology proto for a WiFi chip.

hw_topo.create_wifi()

hw_topo.create_cellular_board {#hw_topo.create_cellular_board}

Builds a Topology proto for a Cellular board.

hw_topo.create_cellular_board()

hw_topo.create_sd_reader {#hw_topo.create_sd_reader}

Builds a Topology proto for a SD reader.

hw_topo.create_sd_reader()

hw_topo.create_motherboard_usb {#hw_topo.create_motherboard_usb}

Builds a Topology proto for a motherboard.

hw_topo.create_motherboard_usb()

hw_topo.create_usbc_port {#hw_topo.create_usbc_port}

Builds a UsbC Port.

hw_topo.create_usbc_port(position = None, index_override = None)

Arguments {#hw_topo.create_usbc_port-args}

  • position: An optional topo_pb.HardwareFeatures.PortPosition indicating the position of this port on the side of the chassis it occupies. Required if more than one USB-C port is present on the same side of the chassis.
  • index_override: An optional int specifying the 0-indexed index of this port. For ports with this unset, the motherboard ports will be ordered before the daughter board ports, in the order they are specified, leaving gaps as needed for ports with an override set. If set, this value must be in the range [0, number_of_usb_c_ports).

hw_topo.create_bluetooth {#hw_topo.create_bluetooth}

Builds a Topology proto for bluetooth.

hw_topo.create_bluetooth()

hw_topo.create_barreljack {#hw_topo.create_barreljack}

Builds a Topology proto for barreljack.

hw_topo.create_barreljack()

hw_topo.create_power_supply {#hw_topo.create_power_supply}

Builds a Topology proto for power supply.

hw_topo.create_power_supply(
    # Optional arguments.
    id = None,
    description = None,
    bj_present = None,
    usb_min_ac_watts = None,
    fw_configs = None,
)

Arguments {#hw_topo.create_power_supply-args}

  • id: A string identifier for the Topology.
  • description: An English description for the Topology.
  • bj_present: A bool containing whether a barreljack power port is present
  • usb_min_ac_watts: The input power below which a warning should be shown to use a higher-power USB adapter.
  • fw_configs: A list of firmware configs implied by the Topology.

hw_topo.create_hardware_topology {#hw_topo.create_hardware_topology}

Builds a HardwareTopology proto from Topology protos.

hw_topo.create_hardware_topology()

hw_topo.create_power_button {#hw_topo.create_power_button}

Builds a Topology proto for a power button.

hw_topo.create_power_button(
    # Required arguments.
    region,
    edge,
    position,

    # Optional arguments.
    id = None,
    description = None,
)

Arguments {#hw_topo.create_power_button-args}

  • region: A HardwareFeatures.Button.Region enum. Required.
  • edge: A HardwareFeatures.Button.Edge enum. Required.
  • position: The percentage for button center position to the display‘s width/height in primary landscape screen orientation. If edge is LEFT or RIGHT, specifies the button’s center position as a fraction of region's height relative to the top of region. For TOP and BOTTOM, specifies the position as a fraction of region width relative to the left side of region. Must be in the range [0.0, 1.0]. Required.
  • id: A string identifier for the Topology. If not passed, a default is provided.
  • description: An English description for the Topology. If not passed, a default is provided.

hw_topo.create_volume_button {#hw_topo.create_volume_button}

Builds a Topology proto for a volume button.

hw_topo.create_volume_button(
    # Required arguments.
    region,
    edge,
    position,

    # Optional arguments.
    id = None,
    description = None,
)

Arguments {#hw_topo.create_volume_button-args}

  • region: A HardwareFeatures.Button.Region enum. Required.
  • edge: A HardwareFeatures.Button.Edge enum. Required.
  • position: The percentage for button center position to the display‘s width/height in primary landscape screen orientation. If edge is LEFT or RIGHT, specifies the button’s center position as a fraction of region's height relative to the top of region. For TOP and BOTTOM, specifies the position as a fraction of region width relative to the left side of region. Must be in the range [0.0, 1.0]. Required.
  • id: A string identifier for the Topology. If not passed, a default is provided.
  • description: An English description for the Topology. If not passed, a default is provided.

hw_topo.create_touch {#hw_topo.create_touch}

Builds a Topology proto for touch.

hw_topo.create_touch()

hw_topo.create_microphone_mute_switch {#hw_topo.create_microphone_mute_switch}

Builds a Topology proto for an microphone mute switch.

hw_topo.create_microphone_mute_switch(present = None)

Arguments {#hw_topo.create_microphone_mute_switch-args}

  • present: flag indicating whether the device has an microphone mute switch

hw_topo.create_hdmi {#hw_topo.create_hdmi}

Builds a Topology proto for HDMI.

hw_topo.create_hdmi()

hw_topo.create_hps {#hw_topo.create_hps}

Builds a Topology proto for HPS.

hw_topo.create_hps()

hw_topo.create_dp_converter {#hw_topo.create_dp_converter}

Builds a Topology proto for DisplayPort converters.

hw_topo.create_dp_converter()

hw_topo.create_poe {#hw_topo.create_poe}

Builds a Topology proto for PoE.

hw_topo.create_poe()

hw_topo.convert_to_hw_features {#hw_topo.convert_to_hw_features}

Converts a HardwareTopology proto to a HardwareFeatures proto.

hw_topo.convert_to_hw_features()

hw_topo.make_camera_device {#hw_topo.make_camera_device}

Builds a HardwareFeatures.Camera.Device proto.

hw_topo.make_camera_device()

hw_topo.make_fw_config {#hw_topo.make_fw_config}

Builds a HardwareFeatures.FirmwareConfiguration proto.

Takes a 32-bit mask for the field and an id. Shifts the id into the mask region and checks that the value fits within the bit mask.

hw_topo.make_fw_config()

hw_topo.create_ec {#hw_topo.create_ec}

Builds a Topology proto for an embedded controller.

hw_topo.create_ec(present = None, ec_type = None, id = None)

Arguments {#hw_topo.create_ec-args}

  • present: flag indicating whether the device has an EC at all
  • ec_type: An EmbeddedControllerType enum
  • id: A string identifier for the Topology. If not passed, a default is provided.

hw_topo.create_tpm {#hw_topo.create_tpm}

Builds a Topology proto for a trusted platform module.

hw_topo.create_tpm(tpm_type = None, id = None, fw_configs = None)

Arguments {#hw_topo.create_tpm-args}

  • tpm_type: A TrustedPlatformModuleType enum
  • id: A string identifier for the Topology. If not passed, a default is provided.
  • fw_configs: A list of FirmwareConfiguration protos for the tpm.

//config/util/partner.star

partner.create

Builds a Partner proto.

partner.create()

//config/util/program.star

program.create

Builds a Program proto.

program.create()

program.create_audio_config {#program.create_audio_config}

Builds an AudioConfig proto.

program.create_audio_config()

program.create_platform {#program.create_platform}

program.create_platform()

program.create_firmware_configuration_segment {#program.create_firmware_configuration_segment}

Builds a FirmwareConfigurationSegment proto.

program.create_firmware_configuration_segment()

program.create_design_config_id_segment {#program.create_design_config_id_segment}

Builds a DesignConfigIdSegment proto.

program.create_design_config_id_segment()

program.create_signer_config {#program.create_signer_config}

Builds a DeviceSignerConfig proto.

program.create_signer_config()

program.create_signer_config_by_brand {#program.create_signer_config_by_brand}

program.create_signer_config_by_brand()

program.create_signer_configs_by_brand {#program.create_signer_configs_by_brand}

program.create_signer_configs_by_brand()

program.create_signer_config_by_design {#program.create_signer_config_by_design}

program.create_signer_config_by_design()

program.create_signer_configs_by_design {#program.create_signer_configs_by_design}

program.create_signer_configs_by_design()

program.generate

Serializes a ConfigBundle to a file.

A json proto is written. Note that there is some post processing done by the gen_config script to convert this json output into a json output that uses ints for encoding enums.

program.generate()

//config/util/public_replication.star

public_replication.create {#public_replication.create}

Creates a PublicReplication proto.

public_replication.create(public_fields)

Arguments {#public_replication.create-args}

  • public_fields: A list of strings specifying fields that should be made public. See comment on the PublicReplication proto for semantics and example of how the proto works. Required.

Returns {#public_replication.create-returns}

A PublicReplication proto, None if public_fields evaluates to False.

//config/util/sw_config.star

sw_config.create_ath10k {#sw_config.create_ath10k}

Builds a WifiConfig proto for use with ath10k drivers.

sw_config.create_ath10k(non_tablet_mode_transmit_power_chain, tablet_mode_transmit_power_chain)

Arguments {#sw_config.create_ath10k-args}

  • non_tablet_mode_transmit_power_chain: non-tablet mode power chain. Required.
  • tablet_mode_transmit_power_chain: tablet mode power chain. Required.

sw_config.create_ath10k_power_chain {#sw_config.create_ath10k_power_chain}

Builds a TransmitPowerChain for ath10k drivers.

sw_config.create_ath10k_power_chain(limit_2g, limit_5g)

Arguments {#sw_config.create_ath10k_power_chain-args}

  • limit_2g: 2G band power limit (dBm). Required.
  • limit_5g: 5G band power limit (dBm). Required.

sw_config.create_audio {#sw_config.create_audio}

Builds an AudioConfig proto.

sw_config.create_audio()

sw_config.create_bluetooth {#sw_config.create_bluetooth}

Builds a BluetoothConfig proto.

sw_config.create_bluetooth()

sw_config.create_camera {#sw_config.create_camera}

Builds a CameraConfig proto.

sw_config.create_camera()

sw_config.create_fw_version {#sw_config.create_fw_version}

Builds a firmware Version proto.

If major_version is not specified, None is returned.

sw_config.create_fw_version()

sw_config.create_fw_payload {#sw_config.create_fw_payload}

Builds a FirmwarePayload proto.

sw_config.create_fw_payload()

sw_config.create_fw_config {#sw_config.create_fw_config}

Builds a FirmwareConfig proto.

sw_config.create_fw_config()

sw_config.create_fw_payloads_by_names {#sw_config.create_fw_payloads_by_names}

Builds a FirmwareConfig proto using common naming patterns.

sw_config.create_fw_payloads_by_names()

sw_config.create_fw_build_config {#sw_config.create_fw_build_config}

Builds a FirmwareBuildConfig proto.

sw_config.create_fw_build_config()

sw_config.create_fw_build_config_by_names {#sw_config.create_fw_build_config_by_names}

Builds a FirmwareBuildConfig proto using common naming patterns.

Build targets are set to be coreboot_name unless they are otherwise specified, e.g. depthcharge is set to coreboot_name unless depthcharge_name is specified. This function is provided as a convenience, as different firmware build targets often share the same name.

sw_config.create_fw_build_config_by_names()

sw_config.create_fw_build_targets {#sw_config.create_fw_build_targets}

Builds a Firmware.BuildTargets proto.

sw_config.create_fw_build_targets()

sw_config.create_health {#sw_config.create_health}

Builds a HealthConfig proto.

sw_config.create_health()

sw_config.create_power {#sw_config.create_power}

Builds a PowerConfig proto.

sw_config.create_power()

sw_config.create_intel_antenna_gain {#sw_config.create_intel_antenna_gain}

Builds AntennaGain for intel drivers.

sw_config.create_intel_antenna_gain(
    # Required arguments.
    ant_gain_5g_1,
    ant_gain_5g_2,
    ant_gain_5g_3,
    ant_gain_5g_4,

    # Optional arguments.
    ant_gain_2g = None,
    ant_gain_5g_5 = None,
    ant_gain_6g_1 = None,
    ant_gain_6g_2 = None,
    ant_gain_6g_3 = None,
    ant_gain_6g_4 = None,
    ant_gain_6g_5 = None,
)

Arguments {#sw_config.create_intel_antenna_gain-args}

  • ant_gain_2g: Antenna gain used for 2400MHz frequency.
  • ant_gain_5g_1: Antenna gain used for 5150–5350MHz frequency. Required.
  • ant_gain_5g_2: Antenna gain used for 5350–5470MHz frequency. Required.
  • ant_gain_5g_3: Antenna gain used for 5470–5725MHz frequency. Required.
  • ant_gain_5g_4: Antenna gain used for 5725–5950MHz frequency. Required.
  • ant_gain_5g_5: Antenna gain used for 5945–6165MHz frequency. Rev 1 & 2.
  • ant_gain_6g_1: Antenna gain used for 6165–6405MHz frequency. Rev 1 & 2.
  • ant_gain_6g_2: Antenna gain used for 6405–6525MHz frequency. Rev 1 & 2.
  • ant_gain_6g_3: Antenna gain used for 6525–6705MHz frequency. Rev 1 & 2.
  • ant_gain_6g_4: Antenna gain used for 6705–6865MHz frequency. Rev 1 & 2.
  • ant_gain_6g_5: Antenna gain used for 6865–7105MHz frequency. Rev 1 & 2.

sw_config.create_intel_antgain_table {#sw_config.create_intel_antgain_table}

Builds a antenna Gains for intel drivers.

sw_config.create_intel_antgain_table(
    # Optional arguments.
    ant_table_revision = None,
    ant_ppag_mode = None,
    ant_gain_chain_a = None,
    ant_gain_chain_b = None,
)

Arguments {#sw_config.create_intel_antgain_table-args}

  • ant_table_revision: Antenna gains table revision
  • ant_ppag_mode: Defines the mode of the ANT_gain control to be used.
  • ant_gain_chain_a: Defines the ANT_gain in dBi for chain A to be used.
  • ant_gain_chain_b: Defines the ANT_gain in dBi for chain B to be used.

sw_config.create_intel_dsm {#sw_config.create_intel_dsm}

Builds a DSM for intel drivers.

sw_config.create_intel_dsm(
    # Optional arguments.
    disable_active_sdr_channels = None,
    support_indonesia_5g_band = None,
    support_ultra_high_band = None,
    regulatory_configurations = None,
    uart_configurations = None,
    enablement_11ax = None,
    unii_4 = None,
)

Arguments {#sw_config.create_intel_dsm-args}

  • disable_active_sdr_channels: Allow OEMs to set ETSI 5.8GHz SRD Channels to Passive/Disabled.
  • support_indonesia_5g_band: Enable/Disable 5.15-5.35GHz band support in Indonesia.
  • support_ultra_high_band: Control the enablement of 6 GHz band.
  • regulatory_configurations: Regulatory special configurations enablements value.
  • uart_configurations: M.2 UART interface configuration.
  • enablement_11ax: Control enablement of 11ax on certificated modules.
  • unii_4: Control enablement of UNII-4 over certificate modules.

sw_config.create_intel_geo_offsets {#sw_config.create_intel_geo_offsets}

Builds a GeoOffsets for intel drivers.

sw_config.create_intel_geo_offsets(
    # Required arguments.
    max_2g,
    offset_2g_a,
    offset_2g_b,
    max_5g,
    offset_5g_a,
    offset_5g_b,

    # Optional arguments.
    max_6g = None,
    offset_6g_a = None,
    offset_6g_b = None,
)

Arguments {#sw_config.create_intel_geo_offsets-args}

  • max_2g: Defines the 2.4 GHz upper value for the allowed power to not be crossed by applying the Geo offset. Required.
  • offset_2g_a: Value to be added to the 2.4GHz WiFi band for chain a. (0.125 dBm) Required.
  • offset_2g_b: Value to be added to the 2.4GHz WiFi band for chain b. (0.125 dBm) Required.
  • max_5g: Defines the 5 GHz upper value for the allowed power to not be crossed by applying the Geo offset. Required.
  • offset_5g_a: Value to be added to 5GHz WiFi bands for chain a. (0.125 dBm) Required.
  • offset_5g_b: Value to be added to 5GHz WiFi bands for chain b. (0.125 dBm) Required.
  • max_6g: Defines the 6 GHz upper value for the allowed power to not be crossed by applying the Geo offset. Rev 1 & 2.
  • offset_6g_a: Value to be added to 6GHz WiFi bands for chain a. (0.125 dBm) Rev 1 & 2.
  • offset_6g_b: Value to be added to 6GHz WiFi bands for chain b. (0.125 dBm) Rev 1 & 2.

sw_config.create_intel_offsets_table {#sw_config.create_intel_offsets_table}

Builds a Geo Offsets proto for use with intel drivers.

sw_config.create_intel_offsets_table(
    # Optional arguments.
    wgds_revision = None,
    fcc_offsets = None,
    eu_offsets = None,
    other_offsets = None,
)

Arguments {#sw_config.create_intel_offsets_table-args}

  • wgds_revision: Geo delta table revision,
  • fcc_offsets: Offsets used for regulatory domains that follow FCC guidelines.
  • eu_offsets: Offsets used for regulatory domains that follow ESTI guidelines.
  • other_offsets: Offsets for regulatory domains that don't follow FCC or ETSI guidelines.

sw_config.create_intel_power_chain {#sw_config.create_intel_power_chain}

Builds a TransmitPowerChain for intel drivers.

sw_config.create_intel_power_chain(
    # Required arguments.
    limit_2g,
    limit_5g_1,
    limit_5g_2,
    limit_5g_3,
    limit_5g_4,

    # Optional arguments.
    limit_5g_5 = None,
    limit_6g_1 = None,
    limit_6g_2 = None,
    limit_6g_3 = None,
    limit_6g_4 = None,
    limit_6g_5 = None,
)

Arguments {#sw_config.create_intel_power_chain-args}

  • limit_2g: 2G band power limit: All 2G band channels. (0.125 dBm). Required.
  • limit_5g_1: 5G band 1 power limit: 5.15G-5.35G channels. (0.125 dBm). Required.
  • limit_5g_2: 5G band 2 power limit: 5.35G-5.47G channels. (0.125 dBm). Required.
  • limit_5g_3: 5G band 3 power limit: 5.47G-5.725G channels. (0.125 dBm). Required.
  • limit_5g_4: 5G band 4 power limit: 5.725G-5.95G channels. (0.125 dBm). Required.
  • limit_5g_5: 5G band 5 power limit: 5.95G-6.165G channels. (0.125 dBm). Rev 1 & 2.
  • limit_6g_1: 6G band 1 power limit: 6.165G-6.405G channels. (0.125 dBm). Rev 1 & 2.
  • limit_6g_2: 6G band 2 power limit: 6.405G-6.525G channels. (0.125 dBm). Rev 1 & 2.
  • limit_6g_3: 6G band 3 power limit: 6.525G-6.705G channels. (0.125 dBm). Rev 1 & 2.
  • limit_6g_4: 6G band 4 power limit: 6.705G-6.865G channels. (0.125 dBm). Rev 1 & 2.
  • limit_6g_5: 6G band 5 power limit: 6.865G-7.105G channels. (0.125 dBm). Rev 1 & 2.

sw_config.create_intel_sar_table {#sw_config.create_intel_sar_table}

Builds a SarTable proto for use with intel drivers.

sw_config.create_intel_sar_table(
    # Optional arguments.
    sar_table_revision = None,
    tablet_mode_transmit_power_chain_a = None,
    tablet_mode_transmit_power_chain_b = None,
    non_tablet_mode_transmit_power_chain_a = None,
    non_tablet_mode_transmit_power_chain_b = None,
    cdb_tablet_mode_transmit_power_chain_a = None,
    cdb_tablet_mode_transmit_power_chain_b = None,
    cdb_non_tablet_mode_transmit_power_chain_a = None,
    cdb_non_tablet_mode_transmit_power_chain_b = None,
)

Arguments {#sw_config.create_intel_sar_table-args}

  • sar_table_revision: SAR table revision.
  • tablet_mode_transmit_power_chain_a: Tablet mode power chain for chain a.
  • tablet_mode_transmit_power_chain_b: Tablet mode power chain for chain b.
  • non_tablet_mode_transmit_power_chain_a: Non-tablet mode power chain for chain a.
  • non_tablet_mode_transmit_power_chain_b: Non-tablet mode power chain for chain b.
  • cdb_tablet_mode_transmit_power_chain_a: Tablet mode concurrency dual band power chain for chain a.
  • cdb_tablet_mode_transmit_power_chain_b: Tablet mode concurrency dual band power chain for chain b.
  • cdb_non_tablet_mode_transmit_power_chain_a: Non-tablet mode concurrency dual band power chain for chain a.
  • cdb_non_tablet_mode_transmit_power_chain_b: Non-tablet mode concurrency dual band power chain for chain b.

sw_config.create_intel_sar_avg_table {#sw_config.create_intel_sar_avg_table}

Builds a wifi time average SAR proto for use with intel drivers.

sw_config.create_intel_sar_avg_table(
    # Optional arguments.
    wtas_revision = None,
    tas_selection = None,
    tas_list_size = None,
    deny_list_entry_1 = None,
    deny_list_entry_2 = None,
    deny_list_entry_3 = None,
    deny_list_entry_4 = None,
    deny_list_entry_5 = None,
    deny_list_entry_6 = None,
    deny_list_entry_7 = None,
    deny_list_entry_8 = None,
    deny_list_entry_9 = None,
    deny_list_entry_10 = None,
    deny_list_entry_11 = None,
    deny_list_entry_12 = None,
    deny_list_entry_13 = None,
    deny_list_entry_14 = None,
    deny_list_entry_15 = None,
    deny_list_entry_16 = None,
)

Arguments {#sw_config.create_intel_sar_avg_table-args}

  • wtas_revision: Wifi time average SAR version.
  • tas_selection: Enable/disable the TAS feature.
  • tas_list_size: Represents the number of blocked countries that are not approved by the OEM to support this feature, even if that feature is enabled.
  • deny_list_entry_1: ISO country code 1 to block.
  • deny_list_entry_2: ISO country code 2 to block.
  • deny_list_entry_3: ISO country code 3 to block.
  • deny_list_entry_4: ISO country code 4 to block.
  • deny_list_entry_5: ISO country code 5 to block.
  • deny_list_entry_6: ISO country code 6 to block.
  • deny_list_entry_7: ISO country code 7 to block.
  • deny_list_entry_8: ISO country code 8 to block.
  • deny_list_entry_9: ISO country code 9 to block.
  • deny_list_entry_10: ISO country code 10 to block.
  • deny_list_entry_11: ISO country code 11 to block.
  • deny_list_entry_12: ISO country code 12 to block.
  • deny_list_entry_13: ISO country code 13 to block.
  • deny_list_entry_14: ISO country code 14 to block.
  • deny_list_entry_15: ISO country code 15 to block.
  • deny_list_entry_16: ISO country code 16 to block.

sw_config.create_intel_wifi {#sw_config.create_intel_wifi}

Builds a IntelConfig proto for use with intel drivers.

sw_config.create_intel_wifi(
    # Optional arguments.
    sar_table = None,
    wgds_table = None,
    ant_table = None,
    wtas_table = None,
    dsm = None,
)

Arguments {#sw_config.create_intel_wifi-args}

  • sar_table: SarTable proto for use with intel driver.
  • wgds_table: Geo Offsets proto for use with intel driver.
  • ant_table: Antenna Gains for use with intel driver.
  • wtas_table: Time average SAR for use with intel driver.
  • dsm: Device specific methods return values for intel driver.

sw_config.create_mtk_geo_power_chain {#sw_config.create_mtk_geo_power_chain}

Builds a GeoTransmitPowerChain for mtk drivers.

sw_config.create_mtk_geo_power_chain(
    # Required arguments.
    limit_2g,
    limit_5g,
    offset_2g,
    offset_5g,
)

Arguments {#sw_config.create_mtk_geo_power_chain-args}

  • limit_2g: 2G band geo power limit. (0.25 dBm). Required.
  • limit_5g: 5G band geo power limit. (0.25 dBm). Required.
  • offset_2g: Value to be added to the 2.4GHz WiFi band. (0.25 dBm). Required.
  • offset_5g: Value to be added to all 5GHz WiFi bands. (0.25 dBm). Required.

sw_config.create_mtk_power_chain {#sw_config.create_mtk_power_chain}

Builds a TransmitPowerChain for mtk drivers.

sw_config.create_mtk_power_chain(
    # Required arguments.
    limit_2g,
    limit_5g_1,
    limit_5g_2,
    limit_5g_3,
    limit_5g_4,
)

Arguments {#sw_config.create_mtk_power_chain-args}

  • limit_2g: 2G band power limit. (0.25 dBm). Required.
  • limit_5g_1: 5G band 1 power limit: 5.15G-5.35G frequency. (0.25 dBm). Required.
  • limit_5g_2: 5G band 2 power limit: 5.35G-5.47G frequency. (0.25 dBm). Required.
  • limit_5g_3: 5G band 3 power limit: 5.47G-5.725G frequency. (0.25 dBm). Required.
  • limit_5g_4: 5G band 4 power limit: 5.725G-5.95G frequency. (0.25 dBm). Required.

sw_config.create_mtk_wifi {#sw_config.create_mtk_wifi}

Builds a WifiConfig proto for use with mtk drivers.

sw_config.create_mtk_wifi(
    # Required arguments.
    non_tablet_mode_transmit_power_chain,
    tablet_mode_transmit_power_chain,

    # Optional arguments.
    fcc_transmit_power_chain = None,
    eu_transmit_power_chain = None,
    other_transmit_power_chain = None,
)

Arguments {#sw_config.create_mtk_wifi-args}

  • non_tablet_mode_transmit_power_chain: non-tablet mode power chain. Required.
  • tablet_mode_transmit_power_chain: tablet mode power chain. Required.
  • fcc_transmit_power_chain: power chain for regulatory domains that follow FCC guidelines.
  • eu_transmit_power_chain: power chain for regulatory domains that follow ESTI guidelines.
  • other_transmit_power_chain: power chain for regulatory domains that don't follow FCC or ETSI guidelines.

sw_config.create_rtw88 {#sw_config.create_rtw88}

Builds a WifiConfig proto for use with rtw88 drivers.

sw_config.create_rtw88(
    # Required arguments.
    non_tablet_mode_transmit_power_chain,
    tablet_mode_transmit_power_chain,

    # Optional arguments.
    fcc_offsets = None,
    eu_offsets = None,
    other_offsets = None,
)

Arguments {#sw_config.create_rtw88-args}

  • non_tablet_mode_transmit_power_chain: non-tablet mode power chain. Required.
  • tablet_mode_transmit_power_chain: tablet mode power chain. Required.
  • fcc_offsets: Offsets used for regulatory domains that follow FCC guidelines
  • eu_offsets: Offsets used for regulatory domains that follow ESTI guidelines
  • other_offsets: Offsets for regulatory domains that don't follow FCC or ETSI guidelines

sw_config.create_rtw88_geo_offsets {#sw_config.create_rtw88_geo_offsets}

Builds a GeoOffsets from rtw88 drivers.

sw_config.create_rtw88_geo_offsets(offset_2g, offset_5g)

Arguments {#sw_config.create_rtw88_geo_offsets-args}

  • offset_2g: Value to be added to the 2.4GHz WiFi band. (0.125 dBm) Required.
  • offset_5g: Value to be added to all 5GHz WiFi bands. (0.125 dBm) Required.

sw_config.create_rtw88_power_chain {#sw_config.create_rtw88_power_chain}

Builds a TransmitPowerChain for rtw88 drivers.

sw_config.create_rtw88_power_chain(
    # Required arguments.
    limit_2g,
    limit_5g_1,
    limit_5g_3,
    limit_5g_4,
)

Arguments {#sw_config.create_rtw88_power_chain-args}

  • limit_2g: 2G band power limit: All 2G band channels. (0.125 dBm). Required.
  • limit_5g_1: 5G band 1 power limit: 5.15G-5.35G channels. (0.125 dBm). Required.
  • limit_5g_3: 5G band 3 power limit: 5.47G-5.725G channels. (0.125 dBm). Required.
  • limit_5g_4: 5G band 4 power limit: 5.725G-5.95G channels. (0.125 dBm). Required.

sw_config.create_rtw89 {#sw_config.create_rtw89}

Builds a WifiConfig proto for use with rtw89 drivers.

sw_config.create_rtw89(
    # Required arguments.
    non_tablet_mode_transmit_power_chain,
    tablet_mode_transmit_power_chain,

    # Optional arguments.
    fcc_offsets = None,
    eu_offsets = None,
    other_offsets = None,
)

Arguments {#sw_config.create_rtw89-args}

  • non_tablet_mode_transmit_power_chain: non-tablet mode power chain. Required.
  • tablet_mode_transmit_power_chain: tablet mode power chain. Required.
  • fcc_offsets: Offsets used for regulatory domains that follow FCC guidelines
  • eu_offsets: Offsets used for regulatory domains that follow ESTI guidelines
  • other_offsets: Offsets for regulatory domains that don't follow FCC or ETSI guidelines

sw_config.create_rtw89_geo_offsets {#sw_config.create_rtw89_geo_offsets}

Builds a GeoOffsets from rtw89 drivers.

sw_config.create_rtw89_geo_offsets(offset_2g, offset_5g)

Arguments {#sw_config.create_rtw89_geo_offsets-args}

  • offset_2g: Value to be added to the 2.4GHz WiFi band. (0.25 dBm) Required.
  • offset_5g: Value to be added to all 5GHz WiFi bands. (0.25 dBm) Required.

sw_config.create_rtw89_power_chain {#sw_config.create_rtw89_power_chain}

Builds a TransmitPowerChain for rtw89 drivers.

sw_config.create_rtw89_power_chain(
    # Required arguments.
    limit_2g,
    limit_5g_1,
    limit_5g_3,
    limit_5g_4,
)

Arguments {#sw_config.create_rtw89_power_chain-args}

  • limit_2g: 2G band power limit: All 2G band channels. (0.25 dBm). Required.
  • limit_5g_1: 5G band 1 power limit: 5.15G-5.35G channels. (0.25 dBm). Required.
  • limit_5g_3: 5G band 3 power limit: 5.47G-5.725G channels. (0.25 dBm). Required.
  • limit_5g_4: 5G band 4 power limit: 5.725G-5.95G channels. (0.25 dBm). Required.

sw_config.create_ui {#sw_config.create_ui}

sw_config.create_ui()

sw_config.create_usb {#sw_config.create_usb}

sw_config.create_usb()

sw_config.make_resolution {#sw_config.make_resolution}

sw_config.make_resolution()