[PATCH] video: ipuv3: imx-pd: Fix crash if node does not contain "timings" property

Sascha Hauer s.hauer at pengutronix.de
Thu Jul 7 00:28:53 PDT 2016


On Thu, Jul 07, 2016 at 10:15:06AM +0300, Alexander Shiyan wrote:
> This patch fix the system crash if DT node does not contain "timings" property.
> 
> software interrupt
> pc : [<97f31078>]    lr : [<97f3103c>]
> sp : 97fefed8  ip : 97fefed0  fp : 00000000
> r10: 00000000  r9 : 97fe4000  r8 : 95ff6b40
> r7 : 96038024  r6 : 67660005  r5 : 96034f64  r4 : 96038024
> r3 : 00000000  r2 : 00000020  r1 : 0000000a  r0 : 00000009
> Flags: nZCv  IRQs off  FIQs off  Mode SVC_32
> [<97f31078>] (imx_pd_ioctl+0x64/0xa0) from [<97f2dacc>] (vpl_ioctl+0xb0/0xf0)
> [<97f2dacc>] (vpl_ioctl+0xb0/0xf0) from [<97f3026c>] (ipufb_probe+0x230/0x2c8)
> [<97f3026c>] (ipufb_probe+0x230/0x2c8) from [<97f0d164>] (platform_probe+0x10/0x14)
> [<97f0d164>] (platform_probe+0x10/0x14) from [<97f0c9f4>] (device_probe+0x38/0xb0)
> [<97f0c9f4>] (device_probe+0x38/0xb0) from [<97f0cab0>] (match.part.1+0x44/0x50)
> [<97f0cab0>] (match.part.1+0x44/0x50) from [<97f0cd98>] (register_driver+0x90/0xc8)
> [<97f0cd98>] (register_driver+0x90/0xc8) from [<97f00d74>] (start_barebox+0x28/0xf0)
> [<97f00d74>] (start_barebox+0x28/0xf0) from [<97f664a0>] (barebox_non_pbl_start+0x12c/0x154)
> [<97f664a0>] (barebox_non_pbl_start+0x12c/0x154) from [<97f00004>] (__bare_init_start+0x0/0x10)
> 
> [<97f65cd0>] (unwind_backtrace+0x0/0x8c) from [<97f01190>] (panic+0x28/0x38)
> [<97f01190>] (panic+0x28/0x38) from [<97f661cc>] (do_exception+0x10/0x14)
> [<97f661cc>] (do_exception+0x10/0x14) from [<97f66204>] (do_software_interrupt+0
> 
> Signed-off-by: Alexander Shiyan <shc_work at mail.ru>
> ---
>  drivers/video/imx-ipu-v3/imx-pd.c | 3 +++
>  1 file changed, 3 insertions(+)

You can squash this into the patch adding parallel display support and
send it to the list. This file is not mainline ;)

Sascha

> 
> diff --git a/drivers/video/imx-ipu-v3/imx-pd.c b/drivers/video/imx-ipu-v3/imx-pd.c
> index 12cad8f..50f6de5 100644
> --- a/drivers/video/imx-ipu-v3/imx-pd.c
> +++ b/drivers/video/imx-ipu-v3/imx-pd.c
> @@ -49,6 +49,9 @@ static int imx_pd_ioctl(struct vpl *vpl, unsigned int port,
>  		return 0;
>  
>  	case VPL_GET_VIDEOMODES:
> +		if (!imx_pd->timings)
> +			return -ENODATA;
> +
>  		timings = data;
>  
>  		timings->num_modes   = imx_pd->timings->num_modes;
> -- 
> 2.4.9
> 
> 
> _______________________________________________
> barebox mailing list
> barebox at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/barebox
> 

-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |



More information about the barebox mailing list