Re: [PATCH v1 1/1] pps: clients: parport: Switch to use module_parport_driver()

From: Rodolfo Giometti
Date: Tue May 11 2021 - 03:12:08 EST


On 10/05/21 16:13, Andy Shevchenko wrote:
> Switch to use module_parport_driver() to reduce boilerplate code.
>
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
> ---
> drivers/pps/clients/pps_parport.c | 42 ++++++-------------------------
> 1 file changed, 8 insertions(+), 34 deletions(-)
>
> diff --git a/drivers/pps/clients/pps_parport.c b/drivers/pps/clients/pps_parport.c
> index 7a41fb7b0dec..42f93d4c6ee3 100644
> --- a/drivers/pps/clients/pps_parport.c
> +++ b/drivers/pps/clients/pps_parport.c
> @@ -22,8 +22,6 @@
> #include <linux/parport.h>
> #include <linux/pps_kernel.h>
>
> -#define DRVDESC "parallel port PPS client"
> -
> /* module parameters */
>
> #define CLEAR_WAIT_MAX 100
> @@ -138,6 +136,12 @@ static void parport_attach(struct parport *port)
> .dev = NULL
> };
>
> + if (clear_wait > CLEAR_WAIT_MAX) {
> + pr_err("clear_wait value should be not greater then %d\n",
> + CLEAR_WAIT_MAX);
> + return;
> + }
> +

Why do you need to do so? Maybe a comment would be welcomed.

> device = kzalloc(sizeof(struct pps_client_pp), GFP_KERNEL);
> if (!device) {
> pr_err("memory allocation failed, not attaching\n");
> @@ -214,38 +218,8 @@ static struct parport_driver pps_parport_driver = {
> .detach = parport_detach,
> .devmodel = true,
> };
> -
> -/* module staff */
> -
> -static int __init pps_parport_init(void)
> -{
> - int ret;
> -
> - pr_info(DRVDESC "\n");
> -
> - if (clear_wait > CLEAR_WAIT_MAX) {
> - pr_err("clear_wait value should be not greater"
> - " then %d\n", CLEAR_WAIT_MAX);
> - return -EINVAL;
> - }
> -
> - ret = parport_register_driver(&pps_parport_driver);
> - if (ret) {
> - pr_err("unable to register with parport\n");
> - return ret;
> - }
> -
> - return 0;
> -}
> -
> -static void __exit pps_parport_exit(void)
> -{
> - parport_unregister_driver(&pps_parport_driver);
> -}
> -
> -module_init(pps_parport_init);
> -module_exit(pps_parport_exit);
> +module_parport_driver(pps_parport_driver);
>
> MODULE_AUTHOR("Alexander Gordeev <lasaine@xxxxxxxxxxxxx>");
> -MODULE_DESCRIPTION(DRVDESC);
> +MODULE_DESCRIPTION("parallel port PPS client");
> MODULE_LICENSE("GPL");
>

Ciao,

Rodolfo

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