# Copyright 2018 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

# Initial value just for style purposes.
USE=""

USE="${USE} cros_ec"
USE="${USE} hatch"

# Enable unibuild
USE="${USE} unibuild"

# Enable diagnostics for cros_healthd
USE="${USE} diagnostics"

# Enable Ambient Light Sensor
USE="${USE} als"

# Enable biometrics support
USE="${USE} biod"

# Include the goodix firmware updating tool
INPUT_DEVICES="goodix"

# Include the g2touch firmware updating tool
INPUT_DEVICES="${INPUT_DEVICES} g2touch"

# Include the elan_i2chid firmware updating tool
INPUT_DEVICES="${INPUT_DEVICES} elan_i2chid"

# Include the wacom firmware updating tool
INPUT_DEVICES="${INPUT_DEVICES} wacom"

# Avoid inhibiting the keyboard (which reports events from side buttons).
USE="${USE} keyboard_includes_side_buttons"

# Enable background blur.
USE="${USE} background_blur"

# Enable next (up)rev of wpa_supplicant
USE="${USE} wpa_supplicant_next"

# Intel HrP2 wifi firmware
LINUX_FIRMWARE="${LINUX_FIRMWARE} iwlwifi-QuZ"
