summaryrefslogtreecommitdiff
path: root/zephyr/Kconfig.keyboard
diff options
context:
space:
mode:
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