[PATCH v2] media: exynos4-is: Add missed check for pinctrl_lookup_state()

Sylwester Nawrocki s.nawrocki at samsung.com
Mon Aug 10 05:31:30 EDT 2020


Hi,

On 28.05.2020 08:41, Chuhong Yuan wrote:
> fimc_md_get_pinctrl() misses a check for pinctrl_lookup_state().
> Add the missed check to fix it.
> 
> Fixes: 4163851f7b99 ("[media] s5p-fimc: Use pinctrl API for camera ports configuration]") 
> Signed-off-by: Chuhong Yuan <hslester96 at gmail.com>
> ---
> Changes in v2:
>   - Add fixes tag.
> 
>  drivers/media/platform/exynos4-is/media-dev.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/drivers/media/platform/exynos4-is/media-dev.c b/drivers/media/platform/exynos4-is/media-dev.c
> index 9aaf3b8060d5..9c31d950cddf 100644
> --- a/drivers/media/platform/exynos4-is/media-dev.c
> +++ b/drivers/media/platform/exynos4-is/media-dev.c
> @@ -1270,6 +1270,9 @@ static int fimc_md_get_pinctrl(struct fimc_md *fmd)
>  
>  	pctl->state_idle = pinctrl_lookup_state(pctl->pinctrl,
>  					PINCTRL_STATE_IDLE);
> +	if (IS_ERR(pctl->state_idle))
> +		return PTR_ERR(pctl->state_idle);

Unfortunately this is not correct, with that change the driver currently 
fails to initialize. The "idle" pinctrl state is optional and might not 
be specified in DT, as explained in the DT binding documentation added
by the patch you mentioned in the "Fixes" tag.
Actually the "idle" state is now not used in any mainline dts, I will 
post a patch that removes related code in the driver.

-- 
Thanks,
Sylwester



More information about the linux-arm-kernel mailing list