提交 b97a6216 编写于 作者: A Alexander Shiyan 提交者: Mauro Carvalho Chehab

[media] media: mx2-emmaprp: Cleanup internal structure

There are no need to store resource struct and IRQ in the driver
internal structure.
This patch remove these fields and improve error handling by using
proper return codes from devm_ioremap_resource() and devm_request_irq().
Signed-off-by: NAlexander Shiyan <shc_work@mail.ru>
Signed-off-by: NKamil Debski <k.debski@samsung.com>
Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
上级 e933cefa
...@@ -207,10 +207,8 @@ struct emmaprp_dev { ...@@ -207,10 +207,8 @@ struct emmaprp_dev {
struct mutex dev_mutex; struct mutex dev_mutex;
spinlock_t irqlock; spinlock_t irqlock;
int irq_emma;
void __iomem *base_emma; void __iomem *base_emma;
struct clk *clk_emma_ahb, *clk_emma_ipg; struct clk *clk_emma_ahb, *clk_emma_ipg;
struct resource *res_emma;
struct v4l2_m2m_dev *m2m_dev; struct v4l2_m2m_dev *m2m_dev;
struct vb2_alloc_ctx *alloc_ctx; struct vb2_alloc_ctx *alloc_ctx;
...@@ -901,9 +899,8 @@ static int emmaprp_probe(struct platform_device *pdev) ...@@ -901,9 +899,8 @@ static int emmaprp_probe(struct platform_device *pdev)
{ {
struct emmaprp_dev *pcdev; struct emmaprp_dev *pcdev;
struct video_device *vfd; struct video_device *vfd;
struct resource *res_emma; struct resource *res;
int irq_emma; int irq, ret;
int ret;
pcdev = devm_kzalloc(&pdev->dev, sizeof(*pcdev), GFP_KERNEL); pcdev = devm_kzalloc(&pdev->dev, sizeof(*pcdev), GFP_KERNEL);
if (!pcdev) if (!pcdev)
...@@ -920,12 +917,10 @@ static int emmaprp_probe(struct platform_device *pdev) ...@@ -920,12 +917,10 @@ static int emmaprp_probe(struct platform_device *pdev)
if (IS_ERR(pcdev->clk_emma_ahb)) if (IS_ERR(pcdev->clk_emma_ahb))
return PTR_ERR(pcdev->clk_emma_ahb); return PTR_ERR(pcdev->clk_emma_ahb);
irq_emma = platform_get_irq(pdev, 0); res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
res_emma = platform_get_resource(pdev, IORESOURCE_MEM, 0); pcdev->base_emma = devm_ioremap_resource(&pdev->dev, res);
if (irq_emma < 0 || res_emma == NULL) { if (IS_ERR(pcdev->base_emma))
dev_err(&pdev->dev, "Missing platform resources data\n"); return PTR_ERR(pcdev->base_emma);
return -ENODEV;
}
ret = v4l2_device_register(&pdev->dev, &pcdev->v4l2_dev); ret = v4l2_device_register(&pdev->dev, &pcdev->v4l2_dev);
if (ret) if (ret)
...@@ -952,20 +947,11 @@ static int emmaprp_probe(struct platform_device *pdev) ...@@ -952,20 +947,11 @@ static int emmaprp_probe(struct platform_device *pdev)
platform_set_drvdata(pdev, pcdev); platform_set_drvdata(pdev, pcdev);
pcdev->base_emma = devm_ioremap_resource(&pdev->dev, res_emma); irq = platform_get_irq(pdev, 0);
if (IS_ERR(pcdev->base_emma)) { ret = devm_request_irq(&pdev->dev, irq, emmaprp_irq, 0,
ret = PTR_ERR(pcdev->base_emma); dev_name(&pdev->dev), pcdev);
goto rel_vdev; if (ret)
}
pcdev->irq_emma = irq_emma;
pcdev->res_emma = res_emma;
if (devm_request_irq(&pdev->dev, pcdev->irq_emma, emmaprp_irq,
0, MEM2MEM_NAME, pcdev) < 0) {
ret = -ENODEV;
goto rel_vdev; goto rel_vdev;
}
pcdev->alloc_ctx = vb2_dma_contig_init_ctx(&pdev->dev); pcdev->alloc_ctx = vb2_dma_contig_init_ctx(&pdev->dev);
if (IS_ERR(pcdev->alloc_ctx)) { if (IS_ERR(pcdev->alloc_ctx)) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册