Re: [PATCH v2 1/1] pps: generators: pps_gen_parport: Switch to use module_parport_driver()

From: Rodolfo Giometti
Date: Wed Oct 06 2021 - 02:54:57 EST


On 01/10/21 17:03, Andy Shevchenko wrote:
> Switch to use module_parport_driver() to reduce boilerplate code.
>
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>

Acked-by: Rodolfo Giometti <giometti@xxxxxxxxxxxx>

> ---
> v2: remove useless message (Greg), Cc to the original (hopefully) author
> drivers/pps/generators/pps_gen_parport.c | 42 ++++--------------------
> 1 file changed, 7 insertions(+), 35 deletions(-)
>
> diff --git a/drivers/pps/generators/pps_gen_parport.c b/drivers/pps/generators/pps_gen_parport.c
> index 6a1af7664f3b..fba6c490977c 100644
> --- a/drivers/pps/generators/pps_gen_parport.c
> +++ b/drivers/pps/generators/pps_gen_parport.c
> @@ -20,8 +20,6 @@
> #include <linux/hrtimer.h>
> #include <linux/parport.h>
>
> -#define DRVDESC "parallel port PPS signal generator"
> -
> #define SIGNAL 0
> #define NO_SIGNAL PARPORT_CONTROL_STROBE
>
> @@ -180,6 +178,11 @@ static void parport_attach(struct parport *port)
> {
> struct pardev_cb pps_cb;
>
> + if (send_delay > SEND_DELAY_MAX) {
> + pr_err("delay value should be not greater then %d\n", SEND_DELAY_MAX);
> + return -EINVAL;
> + }
> +
> if (attached) {
> /* we already have a port */
> return;
> @@ -231,39 +234,8 @@ static struct parport_driver pps_gen_parport_driver = {
> .detach = parport_detach,
> .devmodel = true,
> };
> -
> -/* module staff */
> -
> -static int __init pps_gen_parport_init(void)
> -{
> - int ret;
> -
> - pr_info(DRVDESC "\n");
> -
> - if (send_delay > SEND_DELAY_MAX) {
> - pr_err("delay value should be not greater"
> - " then %d\n", SEND_DELAY_MAX);
> - return -EINVAL;
> - }
> -
> - ret = parport_register_driver(&pps_gen_parport_driver);
> - if (ret) {
> - pr_err("unable to register with parport\n");
> - return ret;
> - }
> -
> - return 0;
> -}
> -
> -static void __exit pps_gen_parport_exit(void)
> -{
> - parport_unregister_driver(&pps_gen_parport_driver);
> - pr_info("hrtimer avg error is %ldns\n", hrtimer_error);
> -}
> -
> -module_init(pps_gen_parport_init);
> -module_exit(pps_gen_parport_exit);
> +module_parport_driver(pps_gen_parport_driver);
>
> MODULE_AUTHOR("Alexander Gordeev <lasaine@xxxxxxxxxxxxx>");
> -MODULE_DESCRIPTION(DRVDESC);
> +MODULE_DESCRIPTION("parallel port PPS signal generator");
> MODULE_LICENSE("GPL");
>


--
GNU/Linux Solutions e-mail: giometti@xxxxxxxxxxxx
Linux Device Driver giometti@xxxxxxxx
Embedded Systems phone: +39 349 2432127
UNIX programming skype: rodolfo.giometti