]> Git Repo - linux.git/blobdiff - drivers/fpga/ts73xx-fpga.c
mfd: cros-ec: Increase maximum mkbp event size
[linux.git] / drivers / fpga / ts73xx-fpga.c
index f6a96b42e2ca00b0a47c68f50cf03cdc1b3ec582..08efd1895b1bd1d85a04cafbe5d036ea66b41d59 100644 (file)
@@ -116,7 +116,9 @@ static int ts73xx_fpga_probe(struct platform_device *pdev)
 {
        struct device *kdev = &pdev->dev;
        struct ts73xx_fpga_priv *priv;
+       struct fpga_manager *mgr;
        struct resource *res;
+       int ret;
 
        priv = devm_kzalloc(kdev, sizeof(*priv), GFP_KERNEL);
        if (!priv)
@@ -131,13 +133,25 @@ static int ts73xx_fpga_probe(struct platform_device *pdev)
                return PTR_ERR(priv->io_base);
        }
 
-       return fpga_mgr_register(kdev, "TS-73xx FPGA Manager",
-                                &ts73xx_fpga_ops, priv);
+       mgr = fpga_mgr_create(kdev, "TS-73xx FPGA Manager",
+                             &ts73xx_fpga_ops, priv);
+       if (!mgr)
+               return -ENOMEM;
+
+       platform_set_drvdata(pdev, mgr);
+
+       ret = fpga_mgr_register(mgr);
+       if (ret)
+               fpga_mgr_free(mgr);
+
+       return ret;
 }
 
 static int ts73xx_fpga_remove(struct platform_device *pdev)
 {
-       fpga_mgr_unregister(&pdev->dev);
+       struct fpga_manager *mgr = platform_get_drvdata(pdev);
+
+       fpga_mgr_unregister(mgr);
 
        return 0;
 }
This page took 0.03189 seconds and 4 git commands to generate.