linux/drivers/media/video/s5p-fimc
Sylwester Nawrocki ecd9acbf54 [media] s5p-fimc: Handle sub-device interdependencies using deferred probing
In this driver there are several entities associated with separate
platform or I2C client devices, which may get probed in random order.

When the platform device bound to the media device driver is probed
all other entity drivers need to be already in place and initialized.
If any of them is not, fail the media device probe and return an error
indicating we need to be retried once any new driver gets registered.
The media device driver probe will not succeed until there are available
all needed sub-drivers, as specified in the platform data.

While at it, make sure the s5p-csis module (MIPI-CSI receiver driver)
does not get unloaded when in use, by guarding its usage with
try_module_get/module_put.

This patch is a prerequisite for adding the device tree support.
It now also allows again to unbind/bind the driver at runtime from
user space via sysfs.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2012-04-10 15:25:25 -03:00
..
Makefile [media] s5p-fimc: Add the media device driver 2011-09-06 17:35:52 -03:00
fimc-capture.c [media] s5p-fimc: Simplify locking by removing the context data structure spinlock 2012-04-10 15:23:28 -03:00
fimc-core.c [media] s5p-fimc: Handle sub-device interdependencies using deferred probing 2012-04-10 15:25:25 -03:00
fimc-core.h [media] s5p-fimc: Remove unneeded fields from struct fimc_dev 2012-04-10 15:24:20 -03:00
fimc-mdevice.c [media] s5p-fimc: Handle sub-device interdependencies using deferred probing 2012-04-10 15:25:25 -03:00
fimc-mdevice.h [media] s5p-fimc: Add the media device driver 2011-09-06 17:35:52 -03:00
fimc-reg.c [media] s5p-fimc: Don't use platform data for CSI data alignment configuration 2012-04-10 15:22:26 -03:00
mipi-csis.c [media] s5p-fimc: Handle sub-device interdependencies using deferred probing 2012-04-10 15:25:25 -03:00
mipi-csis.h [media] s5p-csis: Enable v4l subdev device node 2011-12-30 14:39:54 -02:00
regs-fimc.h [media] s5p-fimc: Add support for alpha component configuration 2011-12-30 14:06:14 -02:00