Re: [PATCHv5 2/4] wiegand: add Wiegand bus driver

From: Martin Zaťovič
Date: Thu Aug 24 2023 - 08:54:24 EST


On Thu, Aug 24, 2023 at 01:40:35PM +0200, Greg KH wrote:
> On Thu, Aug 24, 2023 at 01:10:13PM +0200, Martin Zaťovič wrote:
> > +static inline void wiegand_controller_put(void *ptr)
>
> Why is this a void *? It should be "struct wiegand_controller *"

It is a void* because it is being passed to devm_add_action_or_reset()
and this function only accepts a pointer to a function that accepts a void*
parameter. I am not sure if there is a way around it.

>
> Please never use void * if at all possible.
>
> > +static inline void wiegand_unregister_driver(struct wiegand_driver *wdrv)
> > +{
> > + if (wdrv)
>
> How could this ever be true?
>
> > + driver_unregister(&wdrv->driver);
> > +}
> > +
> > +static inline struct wiegand_driver *to_wiegand_driver(struct device_driver *drv)
> > +{
> > + return drv ? container_of(drv, struct wiegand_driver, driver) : NULL;
>
> How could drv be NULL?
>
> And you should make this a const *, right?

Will fix the other issues. Thank you!

>
> thanks,
>
> greg k-h