]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
ASoC: qcom: q6apm-dai: Use guard() for spin locks
authorSrinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com>
Thu, 23 Oct 2025 10:24:42 +0000 (11:24 +0100)
committerMark Brown <broonie@kernel.org>
Wed, 5 Nov 2025 13:28:33 +0000 (13:28 +0000)
Clean up the code using guard() for spin locks.
No functional changes, just cleanup.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com>
Link: https://patch.msgid.link/20251023102444.88158-19-srinivas.kandagatla@oss.qualcomm.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/qcom/qdsp6/q6apm-dai.c

index 786ab3222515c3ad2e8fcc582af984bcb2655d0a..aaeeadded7aacee5f76363e48731415f4281d390 100644 (file)
@@ -151,33 +151,28 @@ static void event_handler_compr(uint32_t opcode, uint32_t token,
 {
        struct q6apm_dai_rtd *prtd = priv;
        struct snd_compr_stream *substream = prtd->cstream;
-       unsigned long flags;
        uint32_t wflags = 0;
        uint64_t avail;
        uint32_t bytes_written, bytes_to_write;
        bool is_last_buffer = false;
 
+       guard(spinlock_irqsave)(&prtd->lock);
        switch (opcode) {
        case APM_CLIENT_EVENT_CMD_EOS_DONE:
-               spin_lock_irqsave(&prtd->lock, flags);
                if (prtd->notify_on_drain) {
                        snd_compr_drain_notify(prtd->cstream);
                        prtd->notify_on_drain = false;
                } else {
                        prtd->state = Q6APM_STREAM_STOPPED;
                }
-               spin_unlock_irqrestore(&prtd->lock, flags);
                break;
        case APM_CLIENT_EVENT_DATA_WRITE_DONE:
-               spin_lock_irqsave(&prtd->lock, flags);
                bytes_written = token >> APM_WRITE_TOKEN_LEN_SHIFT;
                prtd->copied_total += bytes_written;
                snd_compr_fragment_elapsed(substream);
 
-               if (prtd->state != Q6APM_STREAM_RUNNING) {
-                       spin_unlock_irqrestore(&prtd->lock, flags);
+               if (prtd->state != Q6APM_STREAM_RUNNING)
                        break;
-               }
 
                avail = prtd->bytes_received - prtd->bytes_sent;
 
@@ -202,7 +197,6 @@ static void event_handler_compr(uint32_t opcode, uint32_t token,
                                audioreach_shared_memory_send_eos(prtd->graph);
                }
 
-               spin_unlock_irqrestore(&prtd->lock, flags);
                break;
        default:
                break;
@@ -583,14 +577,12 @@ static int q6apm_dai_compr_pointer(struct snd_soc_component *component,
 {
        struct snd_compr_runtime *runtime = stream->runtime;
        struct q6apm_dai_rtd *prtd = runtime->private_data;
-       unsigned long flags;
        uint64_t temp_copied_total;
 
-       spin_lock_irqsave(&prtd->lock, flags);
+       guard(spinlock_irqsave)(&prtd->lock);
        tstamp->copied_total = prtd->copied_total;
        temp_copied_total = tstamp->copied_total;
        tstamp->byte_offset = do_div(temp_copied_total, prtd->pcm_size);
-       spin_unlock_irqrestore(&prtd->lock, flags);
 
        return 0;
 }
@@ -633,11 +625,9 @@ static int q6apm_dai_compr_ack(struct snd_soc_component *component, struct snd_c
 {
        struct snd_compr_runtime *runtime = stream->runtime;
        struct q6apm_dai_rtd *prtd = runtime->private_data;
-       unsigned long flags;
 
-       spin_lock_irqsave(&prtd->lock, flags);
+       guard(spinlock_irqsave)(&prtd->lock);
        prtd->bytes_received += count;
-       spin_unlock_irqrestore(&prtd->lock, flags);
 
        return count;
 }
@@ -762,7 +752,6 @@ static int q6apm_compr_copy(struct snd_soc_component *component,
        struct snd_compr_runtime *runtime = stream->runtime;
        struct q6apm_dai_rtd *prtd = runtime->private_data;
        void *dstn;
-       unsigned long flags;
        size_t copy;
        u32 wflags = 0;
        u32 app_pointer;
@@ -797,7 +786,7 @@ static int q6apm_compr_copy(struct snd_soc_component *component,
                        return -EFAULT;
        }
 
-       spin_lock_irqsave(&prtd->lock, flags);
+       guard(spinlock_irqsave)(&prtd->lock);
        bytes_in_flight = prtd->bytes_received - prtd->copied_total;
 
        if (prtd->next_track) {
@@ -820,8 +809,6 @@ static int q6apm_compr_copy(struct snd_soc_component *component,
                prtd->bytes_sent += bytes_to_write;
        }
 
-       spin_unlock_irqrestore(&prtd->lock, flags);
-
        return count;
 }