sound/pci/asihpi: Convert timers to use timer_setup()
PATCH 1/1 sound/pci/asihpi: Convert timers to use timer_setup()
In preparation for unconditionally passing the struct timer_list pointer to all timer callbacks, switch to using the new timer_setup() and from_timer() to pass the timer pointer explicitly.
Cc Jaroslav Kysela <[email protected]>
Cc Takashi Iwai <[email protected]>
Cc Thomas Gleixner <[email protected]>
Signed-off-by Kees Cook <[email protected]>
---
This requires commit 686fef928bba ("timer: Prepare to change timer callback argument type") in v4.14-rc3, but should be otherwise stand-alone.
--- sound/pci/asihpi/asihpi.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-)
sound/pci/asihpi/asihpi.c +5 -7
@@ -749,9 +749,9 @@ static inline unsigned int modulo_min(unsigned int a, unsigned int b,/** Timer function, equivalent to interrupt service routine for cards */ -static void snd_card_asihpi_timer_function (unsigned long data) +static void snd_card_asihpi_timer_function (struct timer_list *t) { -struct snd_card_asihpi_pcm *dpcm = (struct snd_card_asihpi_pcm *)data; +struct snd_card_asihpi_pcm *dpcm =from_timer (dpcm, t, timer);struct snd_pcm_substream *substream = dpcm->substream;struct snd_card_asihpi *card =snd_pcm_substream_chip (substream);struct snd_pcm_runtime *runtime;
@@ -948,7 +948,7 @@ static void snd_card_asihpi_int_task(unsigned long data) asihpi = (struct snd_card_asihpi *)a->snd_card->private_data;if (asihpi->llmode_streampriv)snd_card_asihpi_timer_function ( - (unsigned long )asihpi->llmode_streampriv); + &asihpi->llmode_streampriv->timer); }static void snd_card_asihpi_isr (struct hpi_adapter *a)
@@ -1059,8 +1059,7 @@ static int snd_card_asihpi_playback_open(struct snd_pcm_substream *substream)If internal and other stream playing, can't switch */ -setup_timer (&dpcm->timer, snd_card_asihpi_timer_function, - (unsigned long ) dpcm); +timer_setup (&dpcm->timer, snd_card_asihpi_timer_function,0 ); dpcm->substream = substream; runtime->private_data = dpcm; runtime->private_free = snd_card_asihpi_runtime_free;
@@ -1240,8 +1239,7 @@ static int snd_card_asihpi_capture_open(struct snd_pcm_substream *substream)if (err)return -EIO ; -setup_timer (&dpcm->timer, snd_card_asihpi_timer_function, - (unsigned long ) dpcm); +timer_setup (&dpcm->timer, snd_card_asihpi_timer_function,0 ); dpcm->substream = substream; runtime->private_data = dpcm; runtime->private_free = snd_card_asihpi_runtime_free;
Signature · 6 lines
2.7.4 -- Kees Cook Pixel Security