mirror of
https://github.com/torvalds/linux.git
synced 2026-11-07 06:17:02 +01:00
ALSA/ASoC: use assign_bit() where applicable
Convert open-coded if/else with set_bit/clear_bit and their
non-atomic __set_bit/__clear_bit variants to the assign_bit/__assign_bit
API.
Done with Coccinelle semantic patch:
// set_bit -> clear_bit => assign_bit
@@
expression cond, bit, addr;
@@
-if (cond)
- set_bit(bit, addr);
-else
- clear_bit(bit, addr);
+assign_bit(bit, addr, cond);
// clear_bit -> set_bit => assign_bit
@@
expression cond, bit, addr;
@@
-if (cond)
- clear_bit(bit, addr);
-else
- set_bit(bit, addr);
+assign_bit(bit, addr, !cond);
// __set_bit -> __clear_bit => __assign_bit
@@
expression cond, bit, addr;
@@
-if (cond)
- __set_bit(bit, addr);
-else
- __clear_bit(bit, addr);
+__assign_bit(bit, addr, cond);
// __clear_bit -> __set_bit => __assign_bit
@@
expression cond, bit, addr;
@@
-if (cond)
- __clear_bit(bit, addr);
-else
- __set_bit(bit, addr);
+__assign_bit(bit, addr, !cond);
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Acked-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Link: https://patch.msgid.link/20260918141532.3022761-1-peng.fan@oss.nxp.com
This commit is contained in:
parent
3109ede2c3
commit
fc6b1d74ff
|
|
@ -183,10 +183,7 @@ static void snd_serial_generic_input_trigger(struct snd_rawmidi_substream *subst
|
|||
{
|
||||
struct snd_serial_generic *drvdata = substream->rmidi->card->private_data;
|
||||
|
||||
if (up)
|
||||
set_bit(SERIAL_MODE_INPUT_TRIGGERED, &drvdata->filemode);
|
||||
else
|
||||
clear_bit(SERIAL_MODE_INPUT_TRIGGERED, &drvdata->filemode);
|
||||
assign_bit(SERIAL_MODE_INPUT_TRIGGERED, &drvdata->filemode, up);
|
||||
}
|
||||
|
||||
static int snd_serial_generic_output_open(struct snd_rawmidi_substream *substream)
|
||||
|
|
@ -230,10 +227,7 @@ static void snd_serial_generic_output_trigger(struct snd_rawmidi_substream *subs
|
|||
{
|
||||
struct snd_serial_generic *drvdata = substream->rmidi->card->private_data;
|
||||
|
||||
if (up)
|
||||
set_bit(SERIAL_MODE_OUTPUT_TRIGGERED, &drvdata->filemode);
|
||||
else
|
||||
clear_bit(SERIAL_MODE_OUTPUT_TRIGGERED, &drvdata->filemode);
|
||||
assign_bit(SERIAL_MODE_OUTPUT_TRIGGERED, &drvdata->filemode, up);
|
||||
|
||||
if (up)
|
||||
snd_serial_generic_tx_wakeup(drvdata);
|
||||
|
|
|
|||
|
|
@ -70,10 +70,7 @@ void snd_hdac_display_power(struct hdac_bus *bus, unsigned int idx, bool enable)
|
|||
dev_dbg(bus->dev, "display power %s\n", str_enable_disable(enable));
|
||||
|
||||
guard(mutex)(&bus->lock);
|
||||
if (enable)
|
||||
set_bit(idx, &bus->display_power_status);
|
||||
else
|
||||
clear_bit(idx, &bus->display_power_status);
|
||||
assign_bit(idx, &bus->display_power_status, enable);
|
||||
|
||||
if (!acomp || !acomp->ops)
|
||||
return;
|
||||
|
|
|
|||
|
|
@ -781,9 +781,6 @@ EXPORT_SYMBOL_GPL(snd_hdac_bus_free_stream_pages);
|
|||
*/
|
||||
void snd_hdac_bus_link_power(struct hdac_device *codec, bool enable)
|
||||
{
|
||||
if (enable)
|
||||
set_bit(codec->addr, &codec->bus->codec_powered);
|
||||
else
|
||||
clear_bit(codec->addr, &codec->bus->codec_powered);
|
||||
assign_bit(codec->addr, &codec->bus->codec_powered, enable);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(snd_hdac_bus_link_power);
|
||||
|
|
|
|||
|
|
@ -1379,10 +1379,7 @@ static int tas675x_mute_stream(struct snd_soc_dai *dai, int mute, int direction)
|
|||
int ret;
|
||||
|
||||
if (direction == SNDRV_PCM_STREAM_CAPTURE) {
|
||||
if (mute)
|
||||
clear_bit(dai->id, &tas->active_capture_dais);
|
||||
else
|
||||
set_bit(dai->id, &tas->active_capture_dais);
|
||||
assign_bit(dai->id, &tas->active_capture_dais, !mute);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
@ -1391,10 +1388,7 @@ static int tas675x_mute_stream(struct snd_soc_dai *dai, int mute, int direction)
|
|||
* The TAS675x has two playback DAIs (main audio and LLP).
|
||||
* Only transition to SLEEP when ALL are muted.
|
||||
*/
|
||||
if (mute)
|
||||
clear_bit(dai->id, &tas->active_playback_dais);
|
||||
else
|
||||
set_bit(dai->id, &tas->active_playback_dais);
|
||||
assign_bit(dai->id, &tas->active_playback_dais, !mute);
|
||||
|
||||
/* Last playback stream */
|
||||
if (mute && !READ_ONCE(tas->active_playback_dais)) {
|
||||
|
|
|
|||
|
|
@ -1280,10 +1280,7 @@ static void snd_usbmidi_input_trigger(struct snd_rawmidi_substream *substream,
|
|||
{
|
||||
struct snd_usb_midi *umidi = substream->rmidi->private_data;
|
||||
|
||||
if (up)
|
||||
set_bit(substream->number, &umidi->input_triggered);
|
||||
else
|
||||
clear_bit(substream->number, &umidi->input_triggered);
|
||||
assign_bit(substream->number, &umidi->input_triggered, up);
|
||||
}
|
||||
|
||||
static const struct snd_rawmidi_ops snd_usbmidi_output_ops = {
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user