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

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

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

# WiFi driver firmware
LINUX_FIRMWARE="${LINUX_FIRMWARE} iwlwifi-7265 iwlwifi-7265D"

# BT driver firmware
LINUX_FIRMWARE="${LINUX_FIRMWARE} ibt-hw"

# DSP firmware
LINUX_FIRMWARE="${LINUX_FIRMWARE} fw_sst"

# QCA Wifi and BT
LINUX_FIRMWARE="${LINUX_FIRMWARE} ath10k qca-bt"

# Enable DPTF
USE="${USE} dptf"

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

# Enable TPM2
USE="${USE} -tpm tpm2"

# Include prebuilt (&signed) CR50 FW
USE="${USE} cr50_onboard"

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