# 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} kukui"

USE="${USE} bootimage"

# TODO(chromium:1033815): Deprecate detachable_ui.
USE="${USE} detachable legacy_menu_ui detachable_ui"

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

# Building EC
USE="${USE} cros_ec"

USE="${USE} touch_centric_device"

USE="${USE} shelf-hotseat"

USE="${USE} webui-tab-strip"

USE="${USE} on_device_assistant"

EC_FIRMWARE="kukui"

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

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

# Uncomment these lines to activate the serial port.
# Enable kernel serial drivers
USE="${USE} pcserial"
# Declare set of enabled consoles
TTY_CONSOLE="ttyS0"
