Re: [PATCH] media: davinci: vpif: add check for NULL handler

From: Laurent Pinchart
Date: Thu Aug 16 2012 - 11:12:56 EST


Hi Prabhakar,

Thanks for the patch.

On Thursday 16 August 2012 19:32:00 Prabhakar Lad wrote:
> From: Lad, Prabhakar <prabhakar.lad@xxxxxx>
>
> Signed-off-by: Lad, Prabhakar <prabhakar.lad@xxxxxx>
> Signed-off-by: Manjunath Hadli <manjunath.hadli@xxxxxx>
> Cc: Hans Verkuil <hans.verkuil@xxxxxxxxx>
> ---
> drivers/media/video/davinci/vpif_capture.c | 12 +++++++-----
> drivers/media/video/davinci/vpif_display.c | 14 ++++++++------
> 2 files changed, 15 insertions(+), 11 deletions(-)
>
> diff --git a/drivers/media/video/davinci/vpif_capture.c
> b/drivers/media/video/davinci/vpif_capture.c index 266025e..a87b7a5 100644
> --- a/drivers/media/video/davinci/vpif_capture.c
> +++ b/drivers/media/video/davinci/vpif_capture.c
> @@ -311,12 +311,14 @@ static int vpif_start_streaming(struct vb2_queue *vq,
> unsigned int count) }
>
> /* configure 1 or 2 channel mode */
> - ret = vpif_config_data->setup_input_channel_mode
> - (vpif->std_info.ycmux_mode);
> + if (vpif_config_data->setup_input_channel_mode) {
> + ret = vpif_config_data->setup_input_channel_mode
> + (vpif->std_info.ycmux_mode);
>
> - if (ret < 0) {
> - vpif_dbg(1, debug, "can't set vpif channel mode\n");
> - return ret;
> + if (ret < 0) {
> + vpif_dbg(1, debug, "can't set vpif channel mode\n");
> + return ret;
> + }

This change looks good to me. However, note that you will need to get rid of
board code callbacks at some point to implement device tree support. It would
be worth thinking about how to do so now.

> }
>
> /* Call vpif_set_params function to set the parameters and addresses */
> diff --git a/drivers/media/video/davinci/vpif_display.c
> b/drivers/media/video/davinci/vpif_display.c index e129c98..1e35f92 100644
> --- a/drivers/media/video/davinci/vpif_display.c
> +++ b/drivers/media/video/davinci/vpif_display.c
> @@ -280,12 +280,14 @@ static int vpif_start_streaming(struct vb2_queue *vq,
> unsigned int count) }
>
> /* clock settings */
> - ret =
> - vpif_config_data->set_clock(ch->vpifparams.std_info.ycmux_mode,
> - ch->vpifparams.std_info.hd_sd);
> - if (ret < 0) {
> - vpif_err("can't set clock\n");
> - return ret;
> + if (vpif_config_data->set_clock) {

Does the DaVinci platform use the common clock framework ? If so, a better fix
for this would be to pass a clock name through platform data instead of using
a callback function.

> + ret =
> + vpif_config_data->set_clock(ch->vpifparams.std_info.ycmux_mode,
> + ch->vpifparams.std_info.hd_sd);
> + if (ret < 0) {
> + vpif_err("can't set clock\n");
> + return ret;
> + }
> }
>
> /* set the parameters and addresses */
--
Regards,

Laurent Pinchart

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/