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

... in the error path in dspxfr_image().

Signed-off-by: Takashi Iwai <tiwai@suse.de>
diff --git a/sound/pci/hda/patch_ca0132.c b/sound/pci/hda/patch_ca0132.c
index ee2b9c6..cc6c8a5 100644
--- a/sound/pci/hda/patch_ca0132.c
+++ b/sound/pci/hda/patch_ca0132.c
@@ -2167,7 +2167,7 @@
 /*
  * 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 @@
 	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 @@
 		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;
 		}
 	}