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

dmaengine: tegra: Fix uninitialized variable usage

Initialize slave_bw in dma_prep*() functions as the parameter is not
set for DMA_MEM_TO_MEM case in get_transfer_param(). Though the case
may never occur, initializing it avoids warning from certain static
checkers

Fixes: ee17028009d4 ("dmaengine: tegra: Add tegra gpcdma driver")
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Akhil R <akhilrajeev@nvidia.com>
Link: https://lore.kernel.org/r/20220426101913.43335-2-akhilrajeev@nvidia.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>

authored by

Akhil R and committed by
Vinod Koul
39b930be 099a9a94

+4 -4
+4 -4
drivers/dma/tegra186-gpc-dma.c
··· 984 984 { 985 985 struct tegra_dma_channel *tdc = to_tegra_dma_chan(dc); 986 986 unsigned int max_dma_count = tdc->tdma->chip_data->max_dma_count; 987 + enum dma_slave_buswidth slave_bw = DMA_SLAVE_BUSWIDTH_UNDEFINED; 987 988 u32 csr, mc_seq, apb_ptr = 0, mmio_seq = 0; 988 - enum dma_slave_buswidth slave_bw; 989 989 struct tegra_dma_sg_req *sg_req; 990 990 struct tegra_dma_desc *dma_desc; 991 991 struct scatterlist *sg; ··· 1102 1102 size_t period_len, enum dma_transfer_direction direction, 1103 1103 unsigned long flags) 1104 1104 { 1105 + enum dma_slave_buswidth slave_bw = DMA_SLAVE_BUSWIDTH_UNDEFINED; 1106 + u32 csr, mc_seq, apb_ptr = 0, mmio_seq = 0, burst_size; 1107 + unsigned int max_dma_count, len, period_count, i; 1105 1108 struct tegra_dma_channel *tdc = to_tegra_dma_chan(dc); 1106 1109 struct tegra_dma_desc *dma_desc; 1107 1110 struct tegra_dma_sg_req *sg_req; 1108 - enum dma_slave_buswidth slave_bw; 1109 - u32 csr, mc_seq, apb_ptr = 0, mmio_seq = 0, burst_size; 1110 - unsigned int max_dma_count, len, period_count, i; 1111 1111 dma_addr_t mem = buf_addr; 1112 1112 int ret; 1113 1113