# 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.
LINUX_FIRMWARE=""
USE=""

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

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

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

# Onboard Ethernet RTL8168h/8111h firmware patch
LINUX_FIRMWARE="${LINUX_FIRMWARE} rtl8168h-2"

USE="${USE} ac_only -display_backlight -internal_mic -internal_speaker"
USE="${USE} -subpixel_rendering -tpm tpm2"

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

USE="${USE} cros_ec cr50_onboard"

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

# Add NVMe support"
USE="${USE} nvme"

# Enable VMs
USE="${USE} kvm_host crosvm-gpu virtio_gpu"

# Add CEC support
USE="${USE} cec"

# Add DP-CEC support
USE="${USE} dp_cec"

# Non Chromebook device, smart dim is disabled.
USE="${USE} -smartdim"
