Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ALSA: portman2x4: Use guard() for spin locks

Clean up the code using guard() for spin locks.

Merely code refactoring, and no behavior change.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Link: https://patch.msgid.link/20250829150026.6379-13-tiwai@suse.de

+3 -9
+3 -9
sound/drivers/portman2x4.c
··· 496 496 int up) 497 497 { 498 498 struct portman *pm = substream->rmidi->private_data; 499 - unsigned long flags; 500 499 501 - spin_lock_irqsave(&pm->reg_lock, flags); 500 + guard(spinlock_irqsave)(&pm->reg_lock); 502 501 if (up) 503 502 pm->mode[substream->number] |= PORTMAN2X4_MODE_INPUT_TRIGGERED; 504 503 else 505 504 pm->mode[substream->number] &= ~PORTMAN2X4_MODE_INPUT_TRIGGERED; 506 - spin_unlock_irqrestore(&pm->reg_lock, flags); 507 505 } 508 506 509 507 static void snd_portman_midi_output_trigger(struct snd_rawmidi_substream *substream, 510 508 int up) 511 509 { 512 510 struct portman *pm = substream->rmidi->private_data; 513 - unsigned long flags; 514 511 unsigned char byte; 515 512 516 - spin_lock_irqsave(&pm->reg_lock, flags); 513 + guard(spinlock_irqsave)(&pm->reg_lock); 517 514 if (up) { 518 515 while ((snd_rawmidi_transmit(substream, &byte, 1) == 1)) 519 516 portman_write_midi(pm, substream->number, byte); 520 517 } 521 - spin_unlock_irqrestore(&pm->reg_lock, flags); 522 518 } 523 519 524 520 static const struct snd_rawmidi_ops snd_portman_midi_output = { ··· 586 590 unsigned char midivalue = 0; 587 591 struct portman *pm = ((struct snd_card*)userdata)->private_data; 588 592 589 - spin_lock(&pm->reg_lock); 593 + guard(spinlock)(&pm->reg_lock); 590 594 591 595 /* While any input data is waiting */ 592 596 while ((portman_read_status(pm) & INT_REQ) == INT_REQ) { ··· 613 617 } 614 618 615 619 } 616 - 617 - spin_unlock(&pm->reg_lock); 618 620 } 619 621 620 622 static void snd_portman_attach(struct parport *p)