summaryrefslogtreecommitdiff
path: root/zephyr/shim/chip/it8xxx2/keyboard_raw.c
diff options
context:
space:
mode:
authorPeter Marheine <pmarheine@chromium.org>2023-02-16 00:14:21 +0000
committerPeter Marheine <pmarheine@chromium.org>2023-02-16 00:14:21 +0000
commitf43d6df6f2860dbe8ec15aebdc28890771ad7897 (patch)
tree6877eff7016f9979e46017ea5221a16d36344304 /zephyr/shim/chip/it8xxx2/keyboard_raw.c
parentdce247e97903a2464ff8884106bffa43587c1dcb (diff)
parent0849542c72359150a357945c010dca6b5a213633 (diff)
downloadchrome-ec-firmware-nissa-15217.126.B-main.tar.gz
Merge remote-tracking branch cros/main into firmware-nissa-15217.B-mainfirmware-nissa-15217.126.B-main
Generated by: ./util/update_release_branch.py --zephyr --board nissa firmware- nissa-15217.B-main Relevant changes: git log --oneline dce247e979..0849542c72 -- zephyr/program/nissa util/getversion.sh 0849542c72 zephyr: add sleep property for keyboard factory test 5825d894b9 nissa: disable PLATFORM_EC_TCPC_INTERRUPT 25a400690f yavikso: Update fan table version 3 9263f14536 zephyr: remove shi node and add references to shi0 b40c6970d3 Craask: Charger limit for 65w adapter 6fd2d3ea6c zephyr: add comments for tcpc driver 00986ffb1c zephyr: move usbc interrupt handler to shim 2508094b14 yaviks: reduce RW image size (64KB) 55b6aaf52f yaviks: enable keyboard factory test 4786d1eac6 nissa: Add ocpc init function to Nissa boards 2ae1083638 zephyr: cros_kb: set KSI/KSO kbs mode by pinctrl driver d415f4665a yaviks: Fix OCPC Vsys overshooting 93f9d42a7c zephyr: config: drop few more redundant options BRANCH=None BUG=b:254148652 b:260762509 b:265220075 b:268273712 b:265763662 BUG=b:253557900 b:254148652 b:269212593 b:267404783 b:262352202 TEST=`make -j buildall` Force-Relevant-Builds: all Change-Id: I195dd82af114180b611f9afd1465a69f7f43d417 Signed-off-by: Peter Marheine <pmarheine@chromium.org>
Diffstat (limited to 'zephyr/shim/chip/it8xxx2/keyboard_raw.c')
-rw-r--r--zephyr/shim/chip/it8xxx2/keyboard_raw.c27
1 files changed, 21 insertions, 6 deletions
diff --git a/zephyr/shim/chip/it8xxx2/keyboard_raw.c b/zephyr/shim/chip/it8xxx2/keyboard_raw.c
index 5fe99b7efa..442b51a59a 100644
--- a/zephyr/shim/chip/it8xxx2/keyboard_raw.c
+++ b/zephyr/shim/chip/it8xxx2/keyboard_raw.c
@@ -6,6 +6,7 @@
/* Functions needed by keyboard scanner module for Chrome EC */
#include "drivers/cros_kb_raw.h"
+#include "gpio_it8xxx2.h"
#include "keyboard_raw.h"
#include <zephyr/device.h>
@@ -15,13 +16,27 @@
#include <soc.h>
/**
- * Return true if the current value of the given input GPIO port is zero
+ * Return true if the current value of the given gpioksi/gpioksoh/gpioksol
+ * port is zero
*/
int keyboard_raw_is_input_low(int port, int id)
{
- /*
- * TODO: implement for factory testing KSI and KSO pin as GPIO
- * function.
- */
- return 0;
+ const struct device *dev;
+
+ switch ((enum gpio_port_to_node)port) {
+ case GPIO_KSI:
+ dev = DEVICE_DT_GET(DT_NODELABEL(gpioksi));
+ break;
+ case GPIO_KSOH:
+ dev = DEVICE_DT_GET(DT_NODELABEL(gpioksoh));
+ break;
+ case GPIO_KSOL:
+ dev = DEVICE_DT_GET(DT_NODELABEL(gpioksol));
+ break;
+ default:
+ printk("Error port number %d, return 0\n", port);
+ return 0;
+ }
+
+ return (gpio_pin_get_raw(dev, id) == 0);
}