fimc-is: Fail device open when called from udev
authorMarek Szyprowski <m.szyprowski@samsung.com>
Thu, 13 Aug 2015 12:52:20 +0000 (14:52 +0200)
committerMarek Szyprowski <m.szyprowski@samsung.com>
Fri, 27 Apr 2018 08:25:07 +0000 (10:25 +0200)
This workaround avoids driver state change on system boot when udev checks
all video nodes.

Change-Id: I13f16b109251010f138f97943ab180c5003cf6b9
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
drivers/media/platform/exynos/fimc-is/fimc-is-video-companion.c

index 5ea30cd123e221802f9771e44cbb24566e9a9ff5..5ea07c1f6eaff5f9b5bae4cb58b3f99be9f82f54 100644 (file)
@@ -128,6 +128,10 @@ static int fimc_is_comp_video_open(struct file *file)
        struct platform_device *fimc_is_pdev;
        struct fimc_is_core *core;
 
+       /* HACK: ugly workaround to prevent systemd/udev messing in driver state */
+       if (strcmp("v4l_id", current->comm) == 0)
+               return -EINVAL;
+
        fimc_is_pdev = to_platform_device(fimc_is_dev);
        exynos_fimc_is_cfg_cam_clk(fimc_is_pdev);