summaryrefslogtreecommitdiff
path: root/zephyr/Kconfig.keyboard
diff options
context:
space:
mode:
authorJack Rosenthal <jrosenth@chromium.org>2021-11-04 12:11:58 -0600
committerCommit Bot <commit-bot@chromium.org>2021-11-05 04:22:34 +0000
commit252457d4b21f46889eebad61d4c0a65331919cec (patch)
tree01856c4d31d710b20e85a74c8d7b5836e35c3b98 /zephyr/Kconfig.keyboard
parent08f5a1e6fc2c9467230444ac9b582dcf4d9f0068 (diff)
downloadchrome-ec-release-R102-14695.B-ish.tar.gz
In the interest of making long-term branch maintenance incur as little technical debt on us as possible, we should not maintain any files on the branch we are not actually using. This has the added effect of making it extremely clear when merging CLs from the main branch when changes have the possibility to affect us. The follow-on CL adds a convenience script to actually pull updates from the main branch and generate a CL for the update. BUG=b:204206272 BRANCH=ish TEST=make BOARD=arcada_ish && make BOARD=drallion_ish Signed-off-by: Jack Rosenthal <jrosenth@chromium.org> Change-Id: I17e4694c38219b5a0823e0a3e55a28d1348f4b18 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3262038 Reviewed-by: Jett Rink <jettrink@chromium.org> Reviewed-by: Tom Hughes <tomhughes@chromium.org>
Diffstat (limited to 'zephyr/Kconfig.keyboard')
-rw-r--r--zephyr/Kconfig.keyboard177
1 files changed, 0 insertions, 177 deletions
diff --git a/zephyr/Kconfig.keyboard b/zephyr/Kconfig.keyboard
deleted file mode 100644
index 9ad7fb8316..0000000000
--- a/zephyr/Kconfig.keyboard
+++ /dev/null
@@ -1,177 +0,0 @@
-# Copyright 2021 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.
-
-menuconfig PLATFORM_EC_KEYBOARD
- bool "Keyboard support"
- select HAS_TASK_KEYSCAN
- default n if ARCH_POSIX
- default y
- help
- Enable compilation of support for scanning a keyboard and providing
- the resulting input to the AP over the host interface. This consists
- of a keyboard-scanning task which provides key scans via it calling
- keyboard_state_changed() (for i8042) or its client calling
- keyboard_scan_get_state() (for MKBP).
-
- Enabling this automatically enables HAS_TASK_KEYSCAN since keyboard
- scanning must run in its own task.
-
-if PLATFORM_EC_KEYBOARD
-
-choice "Protocol select"
- prompt "Select the keyboard protocol to use"
- help
- Select the keyboard protocol used to communicate key presses to the
- AP. PLATFORM_EC_KEYBOARD_PROTOCOL_8042 is supported by x86-compatible
- application processors, and PLATFORM_EC_KEYBOARD_PROTOCOL_MKBP is
- used for ARM application processors.
-
-config PLATFORM_EC_KEYBOARD_PROTOCOL_8042
- bool "i8042"
- select HAS_TASK_KEYPROTO
- help
- Use the i8042 protocol to communicate with the AP. This dates from the
- Intel 8042 keyboard controller chip released in 1976. It uses two-way
- communication via a few 8-bit registers, allowing key codes to be
- sent to the AP when keys are pressed and released.
-
- See here for docs: https://wiki.osdev.org/%228042%22_PS/2_Controller
-
-config PLATFORM_EC_KEYBOARD_PROTOCOL_MKBP
- bool "mkbp"
- help
- Use the MKBP protocol to communicate with the AP. This protocol is
- usually used on ARM-based platforms. It sends the raw scan code, like
- (row, col), to the AP and the kernel driver will map this scan code to
- a key.
-
-endchoice # PLATFORM_EC_KEYBOARD
-
-config PLATFORM_EC_KEYBOARD_KEYPAD
- bool "Support a numeric keypad"
- help
- Enable support for a keypad, a palm-sized keyboard section usually
- placed on the far right. This contains nuumber keys and also some
- commonly used symbols, to help speed up numeric data entry.
-
-config PLATFORM_EC_KEYBOARD_VIVALDI
- bool "Vivaldi keyboard support"
- depends on PLATFORM_EC_KEYBOARD_PROTOCOL_8042
- default y
- help
- Enable code for Vivaldi keyboard (standard for new Chromium OS
- devices). A Chromium OS device is Vivaldi compatible if the keyboard
- matrix complies with: go/vivaldi-matrix.
-
- Vivaldi code enables:
- - A response to EC_CMD_GET_KEYBD_CONFIG command.
- - Boards can specify their custom layout for top keys.
-
-choice "Power button interference"
- prompt "Select the impact of pressing the power button"
- help
- On some boards one of the keyboard-scan inputs is affected by pressing
- the power button. When the power button is pressed, that input needs
- to be ignored in that case.
-
-config PLATFORM_EC_KEYBOARD_PWRBTN_INDEPENDENT
- bool "No impact on keyboard-scan inputs"
- help
- Select this if pressing the power button does not affect any
- keyboard-scan inputs.
-
-config PLATFORM_EC_KEYBOARD_PWRBTN_ASSERTS_KSI2
- bool "Forces KSI2 to be asserted"
- help
- Enable this if KSI2 is stuck 'asserted' for all scan columns if the
- power button is held. We must be aware of this case in order to
- correctly handle recovery-mode key combinations.
-
-config PLATFORM_EC_KEYBOARD_PWRBTN_ASSERTS_KSI3
- bool "Forces KSI3 to be asserted"
- help
- Enable this if KSI3 is stuck 'asserted' for all scan columns if the
- power button is held. We must be aware of this case in order to
- correctly handle recovery-mode key combinations.
-
-endchoice # "Power button interference"
-
-config PLATFORM_EC_KEYBOARD_COL2_INVERTED
- bool "A mechanism for passing KSO2 to H1 which inverts the signal"
- help
- This option enables a mechanism for passing the column 2
- to H1 which inverts the signal. The signal passing through H1
- adds more delay. Need a larger delay value. Otherwise, pressing
- Refresh key will also trigger T key, which is in the next scanning
- column line. See http://b/156007029.
-
-config PLATFORM_EC_KEYBOARD_REFRESH_ROW3
- bool "Move the refresh key matrix to row 3 instead of row 2"
- help
- The Vivaldi keyboards have the refresh key on row 3 instead of row 2.
- The legacy keyboards with the assistant key also move the refresh key
- matrix to row 3. This is used by the boot key detection code to
- determine if the refresh key is held down at boot.
-
-config PLATFORM_EC_VOLUME_BUTTONS
- bool "Board has volume-up and volume-down buttons"
- help
- Enable this if the board has physical buttons for the volume controls.
- These are buttons controlled by GPIOs and are not part of the keyboard
- matrix.
-
- Your board must define GPIO_VOLUME_UP_L and GPIO_VOLUME_DOWN_L in
- gpio_map.h
-
-config PLATFORM_EC_CMD_BUTTON
- bool "Console command: button"
- help
- This command simulates button press. The buttons are like volume-up,
- volume-down, and recovery buttons.
-
-config PLATFORM_EC_CONSOLE_CMD_KEYBOARD
- bool "Console command: ksstate, kbpress, 8042"
- default y if PLATFORM_EC_KEYBOARD
- help
- Enable keyboard related console commands.
-
- ksstate - Show or toggle printing keyboard scan state
- kbpress - Simulate keypress
-
- If PLATFORM_EC_KEYBOARD_PROTOCOL_8042 is enabled, it includes 8042
- command which prints the state of the i8042 keyboard protocol and
- includes the following subcommands:
-
- codeset - Get/set keyboard codeset
- ctrlram - Get/set keyboard controller RAM
- internal - Show internal information
- kbd - Print or toggle keyboard info
- kblog - Print or toggle keyboard event log (current disabled)
- typematic - Get/set typematic delays
-
-choice
- prompt "Keyboard backlight"
- optional
- help
- Enable support for EC control of a keyboard backlight. This enables
- the "kblight" console command for manual control of the keyboard
- backlight. This also enables the EC_CMD_PWM_SET_KEYBOARD_BACKLIGHT and
- EC_CMD_PWM_GET_KEYBOARD_BACKLIGHT host commands for automatic control
- by the AP.
-
- TODO: support CONFIG_IO_EXPANDER_IT8801 driver which provides
- PWM keyboard support.
-
-config PLATFORM_EC_PWM_KBLIGHT
- bool "PWM keyboard backlight"
- depends on PLATFORM_EC_PWM
- help
- Enables a PWM-controlled keyboard backlight controlled by a PWM signal
- connected directly to the EC chipset. The board files must define
- the C reference PWM_CH_KBLIGHT to the PWM channel used for the
- keyboard backlight control.
-
-endchoice # Keyboard backlight
-
-endif # PLATFORM_EC_KEYBOARD