diff options
Diffstat (limited to 'drivers/gpu/drm/tilcdc')
| -rw-r--r-- | drivers/gpu/drm/tilcdc/tilcdc_drv.c | 19 | 
1 files changed, 4 insertions, 15 deletions
diff --git a/drivers/gpu/drm/tilcdc/tilcdc_drv.c b/drivers/gpu/drm/tilcdc/tilcdc_drv.c index 23bf16f596f6..cd5eefa06060 100644 --- a/drivers/gpu/drm/tilcdc/tilcdc_drv.c +++ b/drivers/gpu/drm/tilcdc/tilcdc_drv.c @@ -182,9 +182,6 @@ static void tilcdc_fini(struct drm_device *dev)  	if (priv->clk)  		clk_put(priv->clk); -	if (priv->mmio) -		iounmap(priv->mmio); -  	if (priv->wq)  		destroy_workqueue(priv->wq); @@ -201,7 +198,6 @@ static int tilcdc_init(const struct drm_driver *ddrv, struct device *dev)  	struct platform_device *pdev = to_platform_device(dev);  	struct device_node *node = dev->of_node;  	struct tilcdc_drm_private *priv; -	struct resource *res;  	u32 bpp = 0;  	int ret; @@ -226,17 +222,10 @@ static int tilcdc_init(const struct drm_driver *ddrv, struct device *dev)  		goto init_failed;  	} -	res = platform_get_resource(pdev, IORESOURCE_MEM, 0); -	if (!res) { -		dev_err(dev, "failed to get memory resource\n"); -		ret = -EINVAL; -		goto init_failed; -	} - -	priv->mmio = ioremap(res->start, resource_size(res)); -	if (!priv->mmio) { -		dev_err(dev, "failed to ioremap\n"); -		ret = -ENOMEM; +	priv->mmio = devm_platform_ioremap_resource(pdev, 0); +	if (IS_ERR(priv->mmio)) { +		dev_err(dev, "failed to request / ioremap\n"); +		ret = PTR_ERR(priv->mmio);  		goto init_failed;  	}  | 
