summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWendly Li <wendlyli@google.com>2023-03-13 11:21:09 +0000
committerWendly Li <wendlyli@google.com>2023-03-13 11:23:50 +0000
commitd50a9d70148ab42cdd66e4baa27167432fd1efbe (patch)
treedbe9054693f558747759a61122cefd0e2e1d73a4
parentee621fa7537cea0a6efafce7ac42f15867366b8d (diff)
downloadgoodix_touch-d50a9d70148ab42cdd66e4baa27167432fd1efbe.tar.gz
touch/goodix: Support for reporting driver status
Bug: 273149008 Test: build pass Change-Id: I9c54ee9a559e4dfb8c71eab31e07a55a887ecb77 Signed-off-by: Wendly Li <wendlyli@google.com>
-rw-r--r--goodix_ts_core.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/goodix_ts_core.c b/goodix_ts_core.c
index 5afdf01..df5dc51 100644
--- a/goodix_ts_core.c
+++ b/goodix_ts_core.c
@@ -1192,6 +1192,13 @@ static int gti_selftest(void *private_data, struct gti_selftest_cmd *cmd)
return driver_test_selftest(cmd->buffer);
}
+static int gti_get_context_driver(void *private_data,
+ struct gti_context_driver_cmd *cmd)
+{
+ /* There is no context from this driver. */
+ return 0;
+}
+
#endif
/* prosfs create */
@@ -1909,6 +1916,12 @@ void goodix_ts_report_status(struct goodix_ts_core *core_data,
&status_data);
}
+ if (st->water_change) {
+ goog_notify_fw_status_changed(core_data->gti,
+ st->water_sta ? GTI_FW_STATUS_WATER_ENTER :
+ GTI_FW_STATUS_WATER_EXIT, &status_data);
+ }
+
if (st->noise_lv_change) {
status_data.noise_level = st->noise_lv;
goog_notify_fw_status_changed(core_data->gti, GTI_FW_STATUS_NOISE_MODE,
@@ -2927,6 +2940,7 @@ int goodix_ts_stage2_init(struct goodix_ts_core *cd)
options->reset = gti_reset;
options->ping = gti_ping;
options->selftest = gti_selftest;
+ options->get_context_driver = gti_get_context_driver;
cd->gti = goog_touch_interface_probe(
cd, cd->bus->dev, cd->input_dev, gti_default_handler, options);