# Copyright 2017 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.

# Use LLVM amdgpu target when building LLVM.
LLVM_TARGETS="AMDGPU"

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

# QCA Wifi and BT
LINUX_FIRMWARE="${LINUX_FIRMWARE} ath10k_qca6174a-5 qca6174a-5-bt"

# Enable Intel Wi-Fi 6 AX200
LINUX_FIRMWARE="${LINUX_FIRMWARE} iwlwifi-cc"

# Google USBPD peripheral firmwares
# LINUX_FIRMWARE="${LINUX_FIRMWARE} cros-pd"

USE="${USE} zork"

# Allow Chrome to use Tablet mode
USE="${USE} touchview"

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

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

# Use ext4 crypto
# USE="${USE} direncryption"

USE="${USE} unibuild"

USE="${USE} arc"

# Ability to run guest VMs.
USE="${USE} kvm_host -crosvm-wl-dmabuf crosvm-gpu virtio_gpu"

# Add ec firmware.
USE="${USE} cros_ec"

# Add EC logging
USE="${USE} eclog"

# With amdgpu support.
USE="${USE} builtin_fw_amdgpu"

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

# Include the kernel in the base image.
USE="${USE} include_vmlinuz"

# Enable NVMe utility
USE="${USE} nvme"

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