On Thu, Jan 31, 2013 at 12:37:04PM +0530, Sachin Kamat wrote: > Use the newly introduced devm_ioremap_resource() instead of > devm_request_and_ioremap() which provides more consistent error handling. > > Signed-off-by: Sachin Kamat > Cc: Vinod Koul > Cc: Thierry Reding > Cc: Greg Kroah-Hartman > --- > This change is based against linux-next tree (20130128). > This change however introduces the followign sparse warning: > drivers/dma/pl330.c:2883:22: warning: incorrect type in argument 1 (different address spaces) > drivers/dma/pl330.c:2883:22: expected void const *ptr > drivers/dma/pl330.c:2883:22: got void [noderef] *base > drivers/dma/pl330.c:2884:34: warning: incorrect type in argument 1 (different address spaces) > drivers/dma/pl330.c:2884:34: expected void const *ptr > drivers/dma/pl330.c:2884:34: got void [noderef] *base > --- > drivers/dma/pl330.c | 7 ++++--- > 1 files changed, 4 insertions(+), 3 deletions(-) > > diff --git a/drivers/dma/pl330.c b/drivers/dma/pl330.c > index 316a43e..142fe4d 100644 > --- a/drivers/dma/pl330.c > +++ b/drivers/dma/pl330.c > @@ -25,6 +25,7 @@ > #include > #include > #include > +#include > > #include "dmaengine.h" > #define PL330_MAX_CHAN 8 > @@ -2878,9 +2879,9 @@ pl330_probe(struct amba_device *adev, const struct amba_id *id) > pi->mcbufsz = pdat ? pdat->mcbuf_sz : 0; > > res = &adev->res; > - pi->base = devm_request_and_ioremap(&adev->dev, res); > - if (!pi->base) > - return -ENXIO; > + pi->base = devm_ioremap_resource(&adev->dev, res); > + if (IS_ERR(pi->base)) > + return PTR_ERR(pi->base); > > amba_set_drvdata(adev, pdmac); > Reviewed-by: Thierry Reding