[PATCH] dmaengine: imx-sdma: Fix: Remove 'always true' comparison

Schrempf Frieder frieder.schrempf at kontron.de
Mon Jun 22 11:29:55 EDT 2020


On 21.06.20 17:57, Fabio Estevam wrote:
> event_id0 is defined as 'unsigned int', so it is always greater or
> equal to zero.
> 
> Remove the unneeded comparisons to fix the following W=1 build
> warning:
> 
> drivers/dma/imx-sdma.c: In function 'sdma_free_chan_resources':
> drivers/dma/imx-sdma.c:1334:23: warning: comparison of unsigned expression >= 0 is always true [-Wtype-limits]
> 1334 |  if (sdmac->event_id0 >= 0)
> |                       ^~
> drivers/dma/imx-sdma.c: In function 'sdma_config':
> drivers/dma/imx-sdma.c:1635:23: warning: comparison of unsigned expression >= 0 is always true [-Wtype-limits]
> 1635 |  if (sdmac->event_id0 >= 0) {
> |
> 
> Fixes: 25962e1a7f1d ("dmaengine: imx-sdma: Fix the event id check to include RX event for UART6")
> Reported-by: kernel test robot <lkp at intel.com>
> Signed-off-by: Fabio Estevam <festevam at gmail.com>

Thanks!

Reviewed-by: Frieder Schrempf <frieder.schrempf at kontron.de>

> ---
>   drivers/dma/imx-sdma.c | 11 ++++-------
>   1 file changed, 4 insertions(+), 7 deletions(-)
> 
> diff --git a/drivers/dma/imx-sdma.c b/drivers/dma/imx-sdma.c
> index 91774039ae5d..270992c4fe47 100644
> --- a/drivers/dma/imx-sdma.c
> +++ b/drivers/dma/imx-sdma.c
> @@ -1331,8 +1331,7 @@ static void sdma_free_chan_resources(struct dma_chan *chan)
>   
>   	sdma_channel_synchronize(chan);
>   
> -	if (sdmac->event_id0 >= 0)
> -		sdma_event_disable(sdmac, sdmac->event_id0);
> +	sdma_event_disable(sdmac, sdmac->event_id0);
>   	if (sdmac->event_id1)
>   		sdma_event_disable(sdmac, sdmac->event_id1);
>   
> @@ -1632,11 +1631,9 @@ static int sdma_config(struct dma_chan *chan,
>   	memcpy(&sdmac->slave_config, dmaengine_cfg, sizeof(*dmaengine_cfg));
>   
>   	/* Set ENBLn earlier to make sure dma request triggered after that */
> -	if (sdmac->event_id0 >= 0) {
> -		if (sdmac->event_id0 >= sdmac->sdma->drvdata->num_events)
> -			return -EINVAL;
> -		sdma_event_enable(sdmac, sdmac->event_id0);
> -	}
> +	if (sdmac->event_id0 >= sdmac->sdma->drvdata->num_events)
> +		return -EINVAL;
> +	sdma_event_enable(sdmac, sdmac->event_id0);
>   
>   	if (sdmac->event_id1) {
>   		if (sdmac->event_id1 >= sdmac->sdma->drvdata->num_events)
> 


More information about the linux-arm-kernel mailing list