media: dw100: Convert to platform remove callback returning voidThe .remove() callback for a platform driver returns an int which makesmany driver authors wrongly assume it's possible to do error
media: dw100: Convert to platform remove callback returning voidThe .remove() callback for a platform driver returns an int which makesmany driver authors wrongly assume it's possible to do error handling byreturning an error code. However the value returned is (mostly) ignoredand this typically results in resource leaks. To improve here there is aquest to make the remove callback return void. In the first step of thisquest all drivers are converted to .remove_new() which already returnsvoid.Trivially convert this driver from always returning zero in the removecallback to the void returning variant.Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>Reviewed-by: Xavier Roumegue <xavier.roumegue@oss.nxp.com>Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
show more ...
media: dw100: use devm_platform_get_and_ioremap_resource()Convert platform_get_resource(), devm_ioremap_resource() to a singlecall to devm_platform_get_and_ioremap_resource(), as this is exactlyw
media: dw100: use devm_platform_get_and_ioremap_resource()Convert platform_get_resource(), devm_ioremap_resource() to a singlecall to devm_platform_get_and_ioremap_resource(), as this is exactlywhat this function does.Signed-off-by: Ye Xingchen <ye.xingchen@zte.com.cn>Reviewed-by: Xavier Roumegue <xavier.roumegue@oss.nxp.com>Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
media: dw100: Add a missing unwind goto in dw100_probe()In case the IRQ allocation returns an error in dw100_probe(), the pmruntime is not disabled before to return.Add the missing unwind goto o
media: dw100: Add a missing unwind goto in dw100_probe()In case the IRQ allocation returns an error in dw100_probe(), the pmruntime is not disabled before to return.Add the missing unwind goto on the error handling path of the IRQallocation request.Reported-by: kernel test robot <lkp@intel.com>Reported-by: Dan Carpenter <error27@gmail.com>Signed-off-by: Xavier Roumegue <xavier.roumegue@oss.nxp.com>Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
media: v4l2-ctrls: drop 'elems' argument from control type ops.The type ops for equal, init and validate have an elems argument,but this can be taken from struct v4l2_ctrl: ctrl->elems forequal a
media: v4l2-ctrls: drop 'elems' argument from control type ops.The type ops for equal, init and validate have an elems argument,but this can be taken from struct v4l2_ctrl: ctrl->elems forequal and init, and ctrl->new_elems for validate (since you arevalidating a new control value).So drop this argument and update all callers.Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
media: dw100: Fix an error handling path in dw100_probe()After a successful call to media_device_init() it is safer to callmedia_device_cleanup().Add the missing call in the error handling path
media: dw100: Fix an error handling path in dw100_probe()After a successful call to media_device_init() it is safer to callmedia_device_cleanup().Add the missing call in the error handling path of the probe, as alreadydone in the remove function.[hverkuil: fixed a typo in the commit log]Fixes: bd090d4d995a ("media: dw100: Add i.MX8MP dw100 dewarper driver")Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
media: dw100: Add i.MX8MP dw100 dewarper driverAdd a V4L2 mem-to-mem driver for the Vivante DW100 Dewarp Processor IPcore found on i.MX8MP SoC.The processor core applies a programmable geometric
media: dw100: Add i.MX8MP dw100 dewarper driverAdd a V4L2 mem-to-mem driver for the Vivante DW100 Dewarp Processor IPcore found on i.MX8MP SoC.The processor core applies a programmable geometrical transformation oninput images to correct distorsion introduced by lenses.The transformation function is exposed as a grid map with 16x16 pixelmacroblocks indexed using X, Y vertex coordinates.The dewarping map can be set from application through a dedicated v4l2control. If not set or invalid, the driver computes an identity mapprior to starting the processing engine.The driver supports scaling, cropping and pixel format conversion.Signed-off-by: Xavier Roumegue <xavier.roumegue@oss.nxp.com>Reviewed-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>