From 037d1964af30fa316bf4a95785770d5227158c19 Mon Sep 17 00:00:00 2001 From: chenlj2 Date: Thu, 20 Oct 2022 13:50:04 +0800 Subject: [PATCH] dlkm:optimise pen probe & report function need report pen status after pen is enable solve kernel panic issue when phone startup sometimes Change-Id: I8ea796fc71ccdb5853e10e600e2093c9ee3fa3ab Signed-off-by: chenlj2 Reviewed-on: https://gerrit.mot.com/2409191 SME-Granted: SME Approvals Granted SLTApproved: Slta Waiver Tested-by: Jira Key Reviewed-by: Jianqiu Huang Reviewed-by: Tao Sun Submit-Approved: Jira Key --- drivers/misc/pen/bu520xx_pen.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/misc/pen/bu520xx_pen.c b/drivers/misc/pen/bu520xx_pen.c index 513b2461236b..c3eaf09e4369 100644 --- a/drivers/misc/pen/bu520xx_pen.c +++ b/drivers/misc/pen/bu520xx_pen.c @@ -297,6 +297,10 @@ static void pen_report_function(struct work_struct *dat) int counter, status = 0, initial_status; pen_dbg_func_in(); + if (!hall_sensor_dev->enable) { + pen_info("[%s] pen isn't enable,don't report.\n", DRIVER_NAME); + return; + } initial_status = hall_sensor_dev->status; for (counter = 0;counter < 3;counter++){ msleep(50); @@ -422,7 +426,7 @@ static int bu520xx_pen_probe(struct platform_device *pdev) } spin_lock_init(&hall_sensor_dev->mHallSensorLock); - hall_sensor_dev->enable = 1; + hall_sensor_dev->enable = 0; //set gpio hall_sensor_dev->gpio = of_get_named_gpio_flags(np,