[PATCH 2/4] staging: vc04_services: avoid the use of typedef for function pointers

Greg KH gregkh at linuxfoundation.org
Mon Dec 20 22:19:45 PST 2021


On Mon, Dec 20, 2021 at 06:29:12PM -0300, Gaston Gonzalez wrote:
> Replace typedef bm2835_mmal_v4l2_ctrl_cb with equivalent declaration to
> better align with the linux kernel coding style.
> 
> Signed-off-by: Gaston Gonzalez <gascoar at gmail.com>
> ---
>  .../vc04_services/bcm2835-camera/controls.c   | 76 +++++++++----------
>  1 file changed, 35 insertions(+), 41 deletions(-)
> 
> diff --git a/drivers/staging/vc04_services/bcm2835-camera/controls.c b/drivers/staging/vc04_services/bcm2835-camera/controls.c
> index b096a12387f7..7782742396fc 100644
> --- a/drivers/staging/vc04_services/bcm2835-camera/controls.c
> +++ b/drivers/staging/vc04_services/bcm2835-camera/controls.c
> @@ -65,13 +65,6 @@ enum bm2835_mmal_ctrl_type {
>  	MMAL_CONTROL_TYPE_CLUSTER, /* special cluster entry */
>  };
>  
> -struct bm2835_mmal_v4l2_ctrl;
> -
> -typedef	int(bm2835_mmal_v4l2_ctrl_cb)(
> -				struct bm2835_mmal_dev *dev,
> -				struct v4l2_ctrl *ctrl,
> -				const struct bm2835_mmal_v4l2_ctrl *mmal_ctrl);

Function pointer typedefs are ok, if they are needed.

> -
>  struct bm2835_mmal_v4l2_ctrl {
>  	u32 id; /* v4l2 control identifier */
>  	enum bm2835_mmal_ctrl_type type;
> @@ -84,7 +77,8 @@ struct bm2835_mmal_v4l2_ctrl {
>  	u64 step; /* step size of the control */
>  	const s64 *imenu; /* integer menu array */
>  	u32 mmal_id; /* mmal parameter id */
> -	bm2835_mmal_v4l2_ctrl_cb *setter;
> +	int (*bm2835_mmal_v4l2_ctrl_cb)(struct bm2835_mmal_dev *dev, struct v4l2_ctrl *ctrl,
> +					const struct bm2835_mmal_v4l2_ctrl *mmal_ctrl);

No need to rename this function pointer, why not keep it at "setter"?
That would make this patch much smaller and more obvious.

thanks,

greg k-h



More information about the linux-arm-kernel mailing list