As the possible failure of the devm_ioremap(), the return value could be NULL. Therefore it should be better to check it and print error message, return '-ENOMEM' error code. Signed-off-by: Li Qiong <liqiong@xxxxxxxxxxxx> Reviewed-by: Sergey Shtylyov <s.shtylyov@xxxxxx> --- v2: - add driver's name (pata_pxa) to subject. --- drivers/ata/pata_pxa.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/ata/pata_pxa.c b/drivers/ata/pata_pxa.c index 985f42c4fd70..cd1a8f37f920 100644 --- a/drivers/ata/pata_pxa.c +++ b/drivers/ata/pata_pxa.c @@ -228,6 +228,11 @@ static int pxa_ata_probe(struct platform_device *pdev) ap->ioaddr.bmdma_addr = devm_ioremap(&pdev->dev, dma_res->start, resource_size(dma_res)); + if (!ap->ioaddr.cmd_addr || !ap->ioaddr.ctl_addr || !ap->ioaddr.bmdma_addr) { + dev_err(&pdev->dev, "failed to map ap->ioaddr\n"); + return -ENOMEM; + } + /* * Adjust register offsets */ -- 2.11.0