Browse Source

[media] s5p-fimc: Fix setup of initial links to FIMC entities

This patch fixes regression introduced in commit
4af813108b880e96a4b8b01e162f950a4aaa2475. Missing pointers
to the sensor subdevs are restored along with subdev callback
notifications to a corresponding FIMC instance driver.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Sylwester Nawrocki 13 years ago
parent
commit
5d33ee92ac
1 changed files with 4 additions and 1 deletions
  1. 4 1
      drivers/media/platform/s5p-fimc/fimc-mdevice.c

+ 4 - 1
drivers/media/platform/s5p-fimc/fimc-mdevice.c

@@ -617,6 +617,7 @@ static int __fimc_md_create_flite_source_links(struct fimc_md *fmd)
  */
 static int fimc_md_create_links(struct fimc_md *fmd)
 {
+	struct v4l2_subdev *csi_sensors[2] = { NULL };
 	struct v4l2_subdev *sensor, *csis;
 	struct s5p_fimc_isp_info *pdata;
 	struct fimc_sensor_info *s_info;
@@ -659,6 +660,7 @@ static int fimc_md_create_links(struct fimc_md *fmd)
 				  sensor->entity.name, csis->entity.name);
 
 			source = NULL;
+			csi_sensors[pdata->mux_id] = sensor;
 			break;
 
 		case FIMC_ITU_601...FIMC_ITU_656:
@@ -684,9 +686,10 @@ static int fimc_md_create_links(struct fimc_md *fmd)
 			continue;
 		source = &fmd->csis[i].sd->entity;
 		pad = CSIS_PAD_SOURCE;
+		sensor = csi_sensors[i];
 
 		link_mask = 1 << fimc_id++;
-		ret = __fimc_md_create_fimc_sink_links(fmd, source, NULL,
+		ret = __fimc_md_create_fimc_sink_links(fmd, source, sensor,
 						       pad, link_mask);
 	}