diff options
author | Sudip Mukherjee <sudipm.mukherjee@gmail.com> | 2018-01-28 23:22:09 +0000 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2018-03-14 17:53:06 +0100 |
commit | b857cacd748e524d5603ddbbe630bdcfb74bd3f6 (patch) | |
tree | 620ba3e43c9d927e556954b668c59bcfe06ca98f /drivers/pps/generators | |
parent | fb56d97df70e7c29c4072c02d1d756641891cee9 (diff) |
pps: generator: use new parport device model
Modify pps generator driver to use the new parallel port device model.
Signed-off-by: Sudip Mukherjee <sudipm.mukherjee@gmail.com>
Acked-by: Rodolfo Giometti <giometti@enneenne.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/pps/generators')
-rw-r--r-- | drivers/pps/generators/pps_gen_parport.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/drivers/pps/generators/pps_gen_parport.c b/drivers/pps/generators/pps_gen_parport.c index 51cfde6afffd..7fd36cac063b 100644 --- a/drivers/pps/generators/pps_gen_parport.c +++ b/drivers/pps/generators/pps_gen_parport.c @@ -192,13 +192,18 @@ static inline ktime_t next_intr_time(struct pps_generator_pp *dev) static void parport_attach(struct parport *port) { + struct pardev_cb pps_cb; + if (attached) { /* we already have a port */ return; } - device.pardev = parport_register_device(port, KBUILD_MODNAME, - NULL, NULL, NULL, PARPORT_FLAG_EXCL, &device); + memset(&pps_cb, 0, sizeof(pps_cb)); + pps_cb.private = &device; + pps_cb.flags = PARPORT_FLAG_EXCL; + device.pardev = parport_register_dev_model(port, KBUILD_MODNAME, + &pps_cb, 0); if (!device.pardev) { pr_err("couldn't register with %s\n", port->name); return; @@ -236,8 +241,9 @@ static void parport_detach(struct parport *port) static struct parport_driver pps_gen_parport_driver = { .name = KBUILD_MODNAME, - .attach = parport_attach, + .match_port = parport_attach, .detach = parport_detach, + .devmodel = true, }; /* module staff */ |