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

USE="${USE} nautilus"
USE="${USE} cros_ec"

# Disable ACPI AC device
USE="${USE} -acpi_ac"

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

# WiFi driver, BT driver, and USBPD peripheral firmwares
LINUX_FIRMWARE="${LINUX_FIRMWARE} iwlwifi-7265D iwlwifi-7265 ibt-hw cros-pd"

# Add Intel Camera IMGU ipu3-fw.bin
LINUX_FIRMWARE="${LINUX_FIRMWARE} ipu3_fw"

# Build EC firmware from source
EC_FIRMWARE="nautilus"

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

USE="${USE} -tpm tpm2 cr50_onboard"

USE="${USE} arc"

# Add keyboard
USE="${USE} keyboard_includes_side_buttons"

# Disable touchpad wakeup since it can't be turned off dynamically when the
# system is converted to tablet mode while it's suspended.
USE="${USE} -touchpad_wakeup"

# Add Touchview to get chromeos-accelerometer-init.
USE="${USE} touchview"

# Add internal_stylus.
USE="${USE} internal_stylus"

# To get wacom_flash
INPUT_DEVICES="wacom"

# Comment these lines to disable the serial port.
#TTY_CONSOLE="ttyS0"
#USE="${USE} pcserial"
