Commit 8ae3124b authored by Takashi Iwai's avatar Takashi Iwai

ALSA: hda/ca0132 - Fix possible invalid DMA channel deallocation

... in the error path in dspxfr_image().
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent 549e8292
......@@ -2167,7 +2167,7 @@ static const struct dsp_image_seg *get_next_seg_ptr(
/*
* CA0132 chip DSP transfer stuffs. For DSP download.
*/
#define INVALID_DMA_CHANNEL (~0UL)
#define INVALID_DMA_CHANNEL (~0U)
/*
* Program a list of address/data pairs via the ChipIO widget.
......@@ -2431,7 +2431,7 @@ static int dspxfr_image(struct hda_codec *codec,
dma_engine->buf_size = (ovly ? DSP_DMA_WRITE_BUFLEN_OVLY :
DSP_DMA_WRITE_BUFLEN_INIT) * 2;
dma_chan = 0;
dma_chan = ovly ? INVALID_DMA_CHANNEL : 0;
status = codec_set_converter_format(codec, WIDGET_CHIP_CTRL,
hda_format, &response);
......@@ -2453,7 +2453,7 @@ static int dspxfr_image(struct hda_codec *codec,
status = dspio_alloc_dma_chan(codec, &dma_chan);
if (status < 0) {
snd_printdd(KERN_ERR "alloc dmachan fail");
dma_chan = (unsigned int)INVALID_DMA_CHANNEL;
dma_chan = INVALID_DMA_CHANNEL;
goto exit;
}
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment