From 071106ecf68c401173c58808b1cf5f68cc50d390 Mon Sep 17 00:00:00 2001
From: hc <hc@nodka.com>
Date: Fri, 05 Jan 2024 08:39:27 +0000
Subject: [PATCH] change wifi driver to cypress
---
kernel/drivers/input/keyboard/gpio_keys.c | 18 ++++++++++++++----
1 files changed, 14 insertions(+), 4 deletions(-)
diff --git a/kernel/drivers/input/keyboard/gpio_keys.c b/kernel/drivers/input/keyboard/gpio_keys.c
index f2d4e4d..725a196 100644
--- a/kernel/drivers/input/keyboard/gpio_keys.c
+++ b/kernel/drivers/input/keyboard/gpio_keys.c
@@ -28,6 +28,7 @@
#include <linux/of_irq.h>
#include <linux/spinlock.h>
#include <dt-bindings/input/gpio-keys.h>
+#include <trace/hooks/wakeupbypass.h>
struct gpio_button_data {
const struct gpio_keys_button *button;
@@ -958,11 +959,16 @@
struct gpio_keys_drvdata *ddata = dev_get_drvdata(dev);
struct input_dev *input = ddata->input;
int error;
+ int wakeup_bypass_enabled = 0;
+
+ trace_android_vh_wakeup_bypass(&wakeup_bypass_enabled);
if (device_may_wakeup(dev)) {
- error = gpio_keys_enable_wakeup(ddata);
- if (error)
- return error;
+ if (!wakeup_bypass_enabled) {
+ error = gpio_keys_enable_wakeup(ddata);
+ if (error)
+ return error;
+ }
} else {
mutex_lock(&input->mutex);
if (input->users)
@@ -978,9 +984,13 @@
struct gpio_keys_drvdata *ddata = dev_get_drvdata(dev);
struct input_dev *input = ddata->input;
int error = 0;
+ int wakeup_bypass_enabled = 0;
+
+ trace_android_vh_wakeup_bypass(&wakeup_bypass_enabled);
if (device_may_wakeup(dev)) {
- gpio_keys_disable_wakeup(ddata);
+ if (!wakeup_bypass_enabled)
+ gpio_keys_disable_wakeup(ddata);
} else {
mutex_lock(&input->mutex);
if (input->users)
--
Gitblit v1.6.2