]> git.karo-electronics.de Git - linux-beck.git/commitdiff
[media] media: blackfin: ppi: Pass device pointer to request peripheral pins
authorSonic Zhang <sonic.zhang@analog.com>
Wed, 23 Jul 2014 09:57:14 +0000 (06:57 -0300)
committerMauro Carvalho Chehab <m.chehab@samsung.com>
Sat, 26 Jul 2014 20:12:30 +0000 (17:12 -0300)
if the pinctrl driver is enabled.

Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
Acked-by: Scott Jiang <scott.jiang.linux@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
drivers/media/platform/blackfin/bfin_capture.c
drivers/media/platform/blackfin/ppi.c
include/media/blackfin/ppi.h

index 6ef986657dda2300aaa73ae3aa4595307dc7604c..7c70d51044178f5067e5eca8e1606084a3447644 100644 (file)
@@ -939,7 +939,7 @@ static int bcap_probe(struct platform_device *pdev)
 
        bcap_dev->cfg = config;
 
-       bcap_dev->ppi = ppi_create_instance(config->ppi_info);
+       bcap_dev->ppi = ppi_create_instance(pdev, config->ppi_info);
        if (!bcap_dev->ppi) {
                v4l2_err(pdev->dev.driver, "Unable to create ppi\n");
                ret = -ENODEV;
index 15e9c2bac2b1bfeabba84e6236bbc6781fa2ab49..90c4a936e3ae6689f72fb05163fda42e62eeb682 100644 (file)
@@ -19,6 +19,7 @@
 
 #include <linux/module.h>
 #include <linux/slab.h>
+#include <linux/platform_device.h>
 
 #include <asm/bfin_ppi.h>
 #include <asm/blackfin.h>
@@ -307,7 +308,8 @@ static void ppi_update_addr(struct ppi_if *ppi, unsigned long addr)
        set_dma_start_addr(ppi->info->dma_ch, addr);
 }
 
-struct ppi_if *ppi_create_instance(const struct ppi_info *info)
+struct ppi_if *ppi_create_instance(struct platform_device *pdev,
+                       const struct ppi_info *info)
 {
        struct ppi_if *ppi;
 
@@ -315,14 +317,14 @@ struct ppi_if *ppi_create_instance(const struct ppi_info *info)
                return NULL;
 
        if (peripheral_request_list(info->pin_req, KBUILD_MODNAME)) {
-               pr_err("request peripheral failed\n");
+               dev_err(&pdev->dev, "request peripheral failed\n");
                return NULL;
        }
 
        ppi = kzalloc(sizeof(*ppi), GFP_KERNEL);
        if (!ppi) {
                peripheral_free_list(info->pin_req);
-               pr_err("unable to allocate memory for ppi handle\n");
+               dev_err(&pdev->dev, "unable to allocate memory for ppi handle\n");
                return NULL;
        }
        ppi->ops = &ppi_ops;
index d0697f4edf87e4a336ddf1cb5a1263fd75931667..61a283f2bd4b79e8e3009e78d155cf4d3d000cbc 100644 (file)
@@ -91,6 +91,7 @@ struct ppi_if {
        void *priv;
 };
 
-struct ppi_if *ppi_create_instance(const struct ppi_info *info);
+struct ppi_if *ppi_create_instance(struct platform_device *pdev,
+                       const struct ppi_info *info);
 void ppi_delete_instance(struct ppi_if *ppi);
 #endif