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

ALSA: es1938: 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/20250829144342.4290-31-tiwai@suse.de

+10 -18
+10 -18
sound/pci/es1938.c
··· 237 237 * -----------------------------------------------------------------*/ 238 238 static void snd_es1938_mixer_write(struct es1938 *chip, unsigned char reg, unsigned char val) 239 239 { 240 - unsigned long flags; 241 - spin_lock_irqsave(&chip->mixer_lock, flags); 240 + guard(spinlock_irqsave)(&chip->mixer_lock); 242 241 outb(reg, SLSB_REG(chip, MIXERADDR)); 243 242 outb(val, SLSB_REG(chip, MIXERDATA)); 244 - spin_unlock_irqrestore(&chip->mixer_lock, flags); 245 243 dev_dbg(chip->card->dev, "Mixer reg %02x set to %02x\n", reg, val); 246 244 } 247 245 ··· 249 251 static int snd_es1938_mixer_read(struct es1938 *chip, unsigned char reg) 250 252 { 251 253 int data; 252 - unsigned long flags; 253 - spin_lock_irqsave(&chip->mixer_lock, flags); 254 + 255 + guard(spinlock_irqsave)(&chip->mixer_lock); 254 256 outb(reg, SLSB_REG(chip, MIXERADDR)); 255 257 data = inb(SLSB_REG(chip, MIXERDATA)); 256 - spin_unlock_irqrestore(&chip->mixer_lock, flags); 257 258 dev_dbg(chip->card->dev, "Mixer reg %02x now is %02x\n", reg, data); 258 259 return data; 259 260 } ··· 263 266 static int snd_es1938_mixer_bits(struct es1938 *chip, unsigned char reg, 264 267 unsigned char mask, unsigned char val) 265 268 { 266 - unsigned long flags; 267 269 unsigned char old, new, oval; 268 - spin_lock_irqsave(&chip->mixer_lock, flags); 270 + 271 + guard(spinlock_irqsave)(&chip->mixer_lock); 269 272 outb(reg, SLSB_REG(chip, MIXERADDR)); 270 273 old = inb(SLSB_REG(chip, MIXERDATA)); 271 274 oval = old & mask; ··· 276 279 "Mixer reg %02x was %02x, set to %02x\n", 277 280 reg, old, new); 278 281 } 279 - spin_unlock_irqrestore(&chip->mixer_lock, flags); 280 282 return oval; 281 283 } 282 284 ··· 318 322 * -----------------------------------------------------------------*/ 319 323 static void snd_es1938_write(struct es1938 *chip, unsigned char reg, unsigned char val) 320 324 { 321 - unsigned long flags; 322 - spin_lock_irqsave(&chip->reg_lock, flags); 325 + guard(spinlock_irqsave)(&chip->reg_lock); 323 326 snd_es1938_write_cmd(chip, reg); 324 327 snd_es1938_write_cmd(chip, val); 325 - spin_unlock_irqrestore(&chip->reg_lock, flags); 326 328 dev_dbg(chip->card->dev, "Reg %02x set to %02x\n", reg, val); 327 329 } 328 330 ··· 330 336 static unsigned char snd_es1938_read(struct es1938 *chip, unsigned char reg) 331 337 { 332 338 unsigned char val; 333 - unsigned long flags; 334 - spin_lock_irqsave(&chip->reg_lock, flags); 339 + 340 + guard(spinlock_irqsave)(&chip->reg_lock); 335 341 snd_es1938_write_cmd(chip, ESS_CMD_READREG); 336 342 snd_es1938_write_cmd(chip, reg); 337 343 val = snd_es1938_get_byte(chip); 338 - spin_unlock_irqrestore(&chip->reg_lock, flags); 339 344 dev_dbg(chip->card->dev, "Reg %02x now is %02x\n", reg, val); 340 345 return val; 341 346 } ··· 345 352 static int snd_es1938_bits(struct es1938 *chip, unsigned char reg, unsigned char mask, 346 353 unsigned char val) 347 354 { 348 - unsigned long flags; 349 355 unsigned char old, new, oval; 350 - spin_lock_irqsave(&chip->reg_lock, flags); 356 + 357 + guard(spinlock_irqsave)(&chip->reg_lock); 351 358 snd_es1938_write_cmd(chip, ESS_CMD_READREG); 352 359 snd_es1938_write_cmd(chip, reg); 353 360 old = snd_es1938_get_byte(chip); ··· 359 366 dev_dbg(chip->card->dev, "Reg %02x was %02x, set to %02x\n", 360 367 reg, old, new); 361 368 } 362 - spin_unlock_irqrestore(&chip->reg_lock, flags); 363 369 return oval; 364 370 } 365 371