The branch main has been updated by mav:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=a8f80c0c16c7fb38c46ddccd7e1b06dc46c407b1

commit a8f80c0c16c7fb38c46ddccd7e1b06dc46c407b1
Author:     Alexander Motin <m...@freebsd.org>
AuthorDate: 2023-12-27 00:28:56 +0000
Commit:     Alexander Motin <m...@freebsd.org>
CommitDate: 2023-12-27 00:28:56 +0000

    iichid(4): Unify two taskqueue tasks
    
    taskqueue_enqueue_timeout(0) is equivalent to taskqueue_enqueue(),
    so no need to create a separate periodic_task and event_task to run
    exactly the same handler.
    
    MFC after:      1 month
---
 sys/dev/iicbus/iichid.c | 17 +++++++----------
 1 file changed, 7 insertions(+), 10 deletions(-)

diff --git a/sys/dev/iicbus/iichid.c b/sys/dev/iicbus/iichid.c
index 84f624f9bb09..0752521f3884 100644
--- a/sys/dev/iicbus/iichid.c
+++ b/sys/dev/iicbus/iichid.c
@@ -182,8 +182,7 @@ struct iichid_softc {
        bool                    callout_setup;          /* iicbus lock */
        uint8_t                 *dup_buf;
        struct taskqueue        *taskqueue;
-       struct timeout_task     periodic_task;          /* iicbus lock */
-       struct task             event_task;
+       struct timeout_task     sampling_task;          /* iicbus lock */
 #endif
 
        struct task             suspend_task;
@@ -520,7 +519,7 @@ iichid_cmd_set_report(struct iichid_softc* sc, const void 
*buf,
 
 #ifdef IICHID_SAMPLING
 static void
-iichid_event_task(void *context, int pending)
+iichid_sampling_task(void *context, int pending)
 {
        struct iichid_softc *sc;
        device_t parent;
@@ -566,7 +565,7 @@ rearm:
                        rate = sc->sampling_rate_slow;
                else
                        rate = sc->sampling_rate_fast;
-               taskqueue_enqueue_timeout_sbt(sc->taskqueue, &sc->periodic_task,
+               taskqueue_enqueue_timeout_sbt(sc->taskqueue, &sc->sampling_task,
                    SBT_1S / MAX(rate, 1), 0, C_PREL(2));
        }
 out:
@@ -742,7 +741,7 @@ iichid_reset_callout(struct iichid_softc *sc)
        sc->missing_samples = sc->sampling_hysteresis;
        sc->dup_samples = 0;
        sc->dup_size = 0;
-       taskqueue_enqueue(sc->taskqueue, &sc->event_task);
+       taskqueue_enqueue_timeout(sc->taskqueue, &sc->sampling_task, 0);
 
        return (0);
 }
@@ -752,7 +751,7 @@ iichid_teardown_callout(struct iichid_softc *sc)
 {
 
        sc->callout_setup = false;
-       taskqueue_cancel_timeout(sc->taskqueue, &sc->periodic_task, NULL);
+       taskqueue_cancel_timeout(sc->taskqueue, &sc->sampling_task, NULL);
        DPRINTF(sc, "tore callout down\n");
 }
 
@@ -1135,12 +1134,10 @@ iichid_attach(device_t dev)
 
        TASK_INIT(&sc->suspend_task, 0, iichid_suspend_task, sc);
 #ifdef IICHID_SAMPLING
-       TASK_INIT(&sc->event_task, 0, iichid_event_task, sc);
-       /* taskqueue_create can't fail with M_WAITOK mflag passed. */
        sc->taskqueue = taskqueue_create("iichid_tq", M_WAITOK | M_ZERO,
            taskqueue_thread_enqueue, &sc->taskqueue);
-       TIMEOUT_TASK_INIT(sc->taskqueue, &sc->periodic_task, 0,
-           iichid_event_task, sc);
+       TIMEOUT_TASK_INIT(sc->taskqueue, &sc->sampling_task, 0,
+           iichid_sampling_task, sc);
 
        sc->sampling_rate_slow = -1;
        sc->sampling_rate_fast = IICHID_SAMPLING_RATE_FAST;

Reply via email to