[PATCH] i2c: ismt: Remove useless DMA-32 fallback configuration

Christophe JAILLET posted 1 patch 4 years, 5 months ago
drivers/i2c/busses/i2c-ismt.c | 7 ++-----
1 file changed, 2 insertions(+), 5 deletions(-)
[PATCH] i2c: ismt: Remove useless DMA-32 fallback configuration
Posted by Christophe JAILLET 4 years, 5 months ago
As stated in [1], dma_set_mask() with a 64-bit mask never fails if
dev->dma_mask is non-NULL.
So, if it fails, the 32 bits case will also fail for the same reason.


Simplify code and remove some dead code accordingly.

[1]: https://lkml.org/lkml/2021/6/7/398

Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
---
 drivers/i2c/busses/i2c-ismt.c | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/drivers/i2c/busses/i2c-ismt.c b/drivers/i2c/busses/i2c-ismt.c
index f4820fd3dc13..951f3511afaa 100644
--- a/drivers/i2c/busses/i2c-ismt.c
+++ b/drivers/i2c/busses/i2c-ismt.c
@@ -920,11 +920,8 @@ ismt_probe(struct pci_dev *pdev, const struct pci_device_id *id)
 
 	err = dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(64));
 	if (err) {
-		err = dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(32));
-		if (err) {
-			dev_err(&pdev->dev, "dma_set_mask fail\n");
-			return -ENODEV;
-		}
+		dev_err(&pdev->dev, "dma_set_mask fail\n");
+		return -ENODEV;
 	}
 
 	err = ismt_dev_init(priv);
-- 
2.32.0

Re: [PATCH] i2c: ismt: Remove useless DMA-32 fallback configuration
Posted by Wolfram Sang 3 years, 10 months ago
On Sun, Jan 09, 2022 at 01:29:45PM +0100, Christophe JAILLET wrote:
> As stated in [1], dma_set_mask() with a 64-bit mask never fails if
> dev->dma_mask is non-NULL.
> So, if it fails, the 32 bits case will also fail for the same reason.
> 
> 
> Simplify code and remove some dead code accordingly.
> 
> [1]: https://lkml.org/lkml/2021/6/7/398
> 
> Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>

Sorry, this fell a bit through the cracks.

Applied to for-next now, thanks!

Re: [PATCH] i2c: ismt: Remove useless DMA-32 fallback configuration
Posted by Wolfram Sang 4 years, 4 months ago
On Sun, Jan 09, 2022 at 01:29:45PM +0100, Christophe JAILLET wrote:
> As stated in [1], dma_set_mask() with a 64-bit mask never fails if
> dev->dma_mask is non-NULL.
> So, if it fails, the 32 bits case will also fail for the same reason.
> 
> 
> Simplify code and remove some dead code accordingly.
> 
> [1]: https://lkml.org/lkml/2021/6/7/398
> 
> Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>

Seth, Neil, do you agree?

> ---
>  drivers/i2c/busses/i2c-ismt.c | 7 ++-----
>  1 file changed, 2 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/i2c/busses/i2c-ismt.c b/drivers/i2c/busses/i2c-ismt.c
> index f4820fd3dc13..951f3511afaa 100644
> --- a/drivers/i2c/busses/i2c-ismt.c
> +++ b/drivers/i2c/busses/i2c-ismt.c
> @@ -920,11 +920,8 @@ ismt_probe(struct pci_dev *pdev, const struct pci_device_id *id)
>  
>  	err = dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(64));
>  	if (err) {
> -		err = dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(32));
> -		if (err) {
> -			dev_err(&pdev->dev, "dma_set_mask fail\n");
> -			return -ENODEV;
> -		}
> +		dev_err(&pdev->dev, "dma_set_mask fail\n");
> +		return -ENODEV;
>  	}
>  
>  	err = ismt_dev_init(priv);
> -- 
> 2.32.0
> 
Re: [PATCH] i2c: ismt: Remove useless DMA-32 fallback configuration
Posted by Seth Heasley 4 years, 2 months ago
On Mon, 2022-02-07 at 15:31 +0100, Wolfram Sang wrote:
> On Sun, Jan 09, 2022 at 01:29:45PM +0100, Christophe JAILLET wrote:
> > As stated in [1], dma_set_mask() with a 64-bit mask never fails if
> > dev->dma_mask is non-NULL.
> > So, if it fails, the 32 bits case will also fail for the same
> > reason.
> > 
> > 
> > Simplify code and remove some dead code accordingly.
> > 
> > [1]: https://lkml.org/lkml/2021/6/7/398
> > 
> > Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Reviewed-by: Seth Heasley <seth.heasley@intel.com>
> 
> Seth, Neil, do you agree?

Yes, I agree this change makes sense.

> 
> > ---
> >  drivers/i2c/busses/i2c-ismt.c | 7 ++-----
> >  1 file changed, 2 insertions(+), 5 deletions(-)
> > 
> > diff --git a/drivers/i2c/busses/i2c-ismt.c
> > b/drivers/i2c/busses/i2c-ismt.c
> > index f4820fd3dc13..951f3511afaa 100644
> > --- a/drivers/i2c/busses/i2c-ismt.c
> > +++ b/drivers/i2c/busses/i2c-ismt.c
> > @@ -920,11 +920,8 @@ ismt_probe(struct pci_dev *pdev, const struct
> > pci_device_id *id)
> >  
> >  	err = dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(64));
> >  	if (err) {
> > -		err = dma_set_mask_and_coherent(&pdev->dev,
> > DMA_BIT_MASK(32));
> > -		if (err) {
> > -			dev_err(&pdev->dev, "dma_set_mask fail\n");
> > -			return -ENODEV;
> > -		}
> > +		dev_err(&pdev->dev, "dma_set_mask fail\n");
> > +		return -ENODEV;
> >  	}
> >  
> >  	err = ismt_dev_init(priv);
> > -- 
> > 2.32.0
> >