From 17acb1efa67ead4871342f28ea32d9dcff9cabee Mon Sep 17 00:00:00 2001 From: Konstantin Makariev Date: Fri, 15 Apr 2022 17:03:00 -0500 Subject: [PATCH] drv8424_mmi: status & position show methods Added sysfs_notify call and make status & position show methods waiting for updated values Change-Id: Ib19dd3e362a70b6c5217821a46a2f3eb679452ac Signed-off-by: Konstantin Makariev Reviewed-on: https://gerrit.mot.com/2244143 SME-Granted: SME Approvals Granted SLTApproved: Slta Waiver Tested-by: Jira Key Reviewed-by: Qing Chang Submit-Approved: Jira Key --- drivers/misc/drv8424/drv8424.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/misc/drv8424/drv8424.c b/drivers/misc/drv8424/drv8424.c index 7182cf70e919..dbbeb9728881 100644 --- a/drivers/misc/drv8424/drv8424.c +++ b/drivers/misc/drv8424/drv8424.c @@ -761,7 +761,6 @@ static int moto_drv8424_drive_sequencer(motor_device* md) if(atomic_read(&md->stepping)) { motor_control* mc = &md->mc; - sysfs_notify(&md->dev->kobj, NULL, "status"); LOGD("Status updated: status %d\n", atomic_read(&md->status)); GPIO_OUTPUT_DIR(mc->ptable[MOTOR_STEP], md->level); atomic_inc(&md->step_count); @@ -831,7 +830,6 @@ static __ref int motor_kthread(void *arg) atomic_set(&md->status, value); moto_drv8424_cmd_push(md, CMD_STATUS, 0); - sysfs_notify(&md->dev->kobj, NULL, "status"); LOGD("Status updated: status %d, position %d\n", atomic_read(&md->status), atomic_read(&md->position)); @@ -936,12 +934,14 @@ static void motor_cmd_work(struct work_struct *work) enable_irq(md->fault_irq); break; case CMD_STATUS: + sysfs_notify(&md->dev->kobj, NULL, "status"); md->status_update_ready = true; - wake_up_interruptible(&md->status_wait); + wake_up(&md->status_wait); break; case CMD_POSITION: + sysfs_notify(&md->dev->kobj, NULL, "position"); md->position_update_ready = true; - wake_up_interruptible(&md->position_wait); + wake_up(&md->position_wait); break; case CMD_POLL: if (atomic_read(&md->destination) > 0) {