From 313d899ea76a728046c194ded35c2d20909cb707 Mon Sep 17 00:00:00 2001 From: huangcm <1263938474@qq.com> Date: Mon, 10 Mar 2025 02:49:38 +0000 Subject: [PATCH] fix(touchscreen): fix ft8756 .i to .h --- longan/kernel/linux-4.9/drivers/rtc/rtc-hym8563.c | 18 ++++++++++++++---- 1 files changed, 14 insertions(+), 4 deletions(-) diff --git a/longan/kernel/linux-4.9/drivers/rtc/rtc-hym8563.c b/longan/kernel/linux-4.9/drivers/rtc/rtc-hym8563.c index e5ad527..db5f872 100644 --- a/longan/kernel/linux-4.9/drivers/rtc/rtc-hym8563.c +++ b/longan/kernel/linux-4.9/drivers/rtc/rtc-hym8563.c @@ -438,10 +438,10 @@ { struct hym8563 *hym8563 = (struct hym8563 *)dev_id; struct i2c_client *client = hym8563->client; - struct mutex *lock = &hym8563->rtc->ops_lock; + //struct mutex *lock = &hym8563->rtc->ops_lock; int data, ret; - mutex_lock(lock); + //mutex_lock(lock); /* Clear the alarm flag */ @@ -461,7 +461,7 @@ } out: - mutex_unlock(lock); + //mutex_unlock(lock); return IRQ_HANDLED; } @@ -529,7 +529,13 @@ { struct hym8563 *hym8563; int ret; - + struct rtc_time tm = { + .tm_year = 2024 - 1900, + .tm_mon = 7, + .tm_mday = 23, + .tm_wday = 5, + .tm_hour = 13, + }; hym8563 = devm_kzalloc(&client->dev, sizeof(*hym8563), GFP_KERNEL); if (!hym8563) return -ENOMEM; @@ -565,6 +571,10 @@ hym8563->valid = !(ret & HYM8563_SEC_VL); dev_dbg(&client->dev, "rtc information is %s\n", hym8563->valid ? "valid" : "invalid"); + if (!hym8563->valid) { + dev_err(&client->dev, "rtc use default time !!!\n"); + hym8563_rtc_set_time(&client->dev, &tm); + } hym8563->rtc = devm_rtc_device_register(&client->dev, client->name, &hym8563_rtc_ops, THIS_MODULE); -- Gitblit v1.6.2