now that we are monitoring the return value from attach, make the
required changes to return proper value from its attach function.

Signed-off-by: Sudip Mukherjee <su...@vectorindia.org>
---
 drivers/pps/generators/pps_gen_parport.c | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/drivers/pps/generators/pps_gen_parport.c 
b/drivers/pps/generators/pps_gen_parport.c
index dcd39fb..499f410 100644
--- a/drivers/pps/generators/pps_gen_parport.c
+++ b/drivers/pps/generators/pps_gen_parport.c
@@ -190,18 +190,18 @@ static inline ktime_t next_intr_time(struct 
pps_generator_pp *dev)
                        dev->port_write_time + 3 * SAFETY_INTERVAL));
 }
 
-static void parport_attach(struct parport *port)
+static int parport_attach(struct parport *port)
 {
        if (attached) {
                /* we already have a port */
-               return;
+               return -EALREADY;
        }
 
        device.pardev = parport_register_device(port, KBUILD_MODNAME,
                        NULL, NULL, NULL, PARPORT_FLAG_EXCL, &device);
        if (!device.pardev) {
                pr_err("couldn't register with %s\n", port->name);
-               return;
+               return -ENODEV;
        }
 
        if (parport_claim_or_block(device.pardev) < 0) {
@@ -218,10 +218,11 @@ static void parport_attach(struct parport *port)
        device.timer.function = hrtimer_event;
        hrtimer_start(&device.timer, next_intr_time(&device), HRTIMER_MODE_ABS);
 
-       return;
+       return 0;
 
 err_unregister_dev:
        parport_unregister_device(device.pardev);
+       return -ENODEV;
 }
 
 static void parport_detach(struct parport *port)
-- 
1.8.1.2

_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to