Modify spi-butterfly driver to use the new parallel port device model.

Signed-off-by: Sudip Mukherjee <[email protected]>
---

Only change is in the module loading part. It has been tested by
inserting and removing the module repeatedly, tested with unbind also.

 drivers/spi/spi-butterfly.c | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/drivers/spi/spi-butterfly.c b/drivers/spi/spi-butterfly.c
index f16ef7f..22a31e4 100644
--- a/drivers/spi/spi-butterfly.c
+++ b/drivers/spi/spi-butterfly.c
@@ -189,6 +189,7 @@ static void butterfly_attach(struct parport *p)
        struct butterfly        *pp;
        struct spi_master       *master;
        struct device           *dev = p->physport->dev;
+       struct pardev_cb        butterfly_cb;
 
        if (butterfly || !dev)
                return;
@@ -221,9 +222,9 @@ static void butterfly_attach(struct parport *p)
         * parport hookup
         */
        pp->port = p;
-       pd = parport_register_device(p, "spi_butterfly",
-                                    NULL, NULL, NULL,
-                                    0 /* FLAGS */, pp);
+       memset(&butterfly_cb, 0, sizeof(butterfly_cb));
+       butterfly_cb.private = pp;
+       pd = parport_register_dev_model(p, "spi_butterfly", &butterfly_cb, 0);
        if (!pd) {
                status = -ENOMEM;
                goto clean0;
@@ -321,8 +322,9 @@ static void butterfly_detach(struct parport *p)
 
 static struct parport_driver butterfly_driver = {
        .name =         "spi_butterfly",
-       .attach =       butterfly_attach,
+       .match_port =   butterfly_attach,
        .detach =       butterfly_detach,
+       .devmodel = true,
 };
 
 static int __init butterfly_init(void)
-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-spi" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to