Re: [PATCH 07/25] scsi: hisi_sas: add ioremap for device HW

Arnd Bergmann
2015-10-12T15:21:53Z

On Monday 12 October 2015 23:20:19 John Garry wrote:
> +int hisi_sas_ioremap(struct hisi_hba *hisi_hba)
> +{
> + struct platform_device *pdev = hisi_hba->pdev;
> + struct device *dev = &pdev->dev;
> + struct resource *res;
> +
> + res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> + hisi_hba->regs = devm_ioremap(dev,
> + res->start,
> + resource_size(res));
> + if (!hisi_hba->regs)
> + return -ENOMEM;
> +
> + res = platform_get_resource(pdev, IORESOURCE_MEM, 1);
> + hisi_hba->ctrl_regs = devm_ioremap(dev,
> + res->start,
> + resource_size(res));
> + if (!hisi_hba->ctrl_regs)
> + return -ENOMEM;
> +
> + return 0;
> +}
>
> static const struct of_device_id sas_of_match[] = {
>

Better use devm_ioremap_resource() here, which registers the resource so they
are checked for conflicts and listed in /proc/iomem.

Arnd