{
int ret = 0;
struct fimc_is_group *group = NULL;
- struct fimc_is_group *child_group;
struct fimc_is_device_sensor *sensor;
+#ifndef ENABLE_SENSOR_VC_FUNCTION
+ struct fimc_is_group *child_group;
struct devicemgr_sensor_tag_data *tag_data;
u32 stream;
+#endif
int i;
switch (type) {
case FIMC_IS_DEVICE_SENSOR:
sensor = (struct fimc_is_device_sensor *)device;
group = &sensor->group_sensor;
- child_group = GET_HEAD_GROUP_IN_DEVICE(FIMC_IS_DEVICE_ISCHAIN, group);
- stream = group->instance;
if (!test_bit(FIMC_IS_SENSOR_STAND_ALONE, &sensor->state) && sensor->ischain) {
ret = fimc_is_ischain_start_wrap(sensor->ischain, group);
}
}
+#ifndef ENABLE_SENSOR_VC_FUNCTION
+ child_group = GET_HEAD_GROUP_IN_DEVICE(FIMC_IS_DEVICE_ISCHAIN, group);
+ stream = group->instance;
+
/* Only in case of OTF case, used tasklet. */
if (sensor->ischain && child_group) {
for (i = 0; i < TAG_DATA_MAX; i++) {
tasklet_init(&devicemgr->tasklet_sensor_tag[stream][i], tasklet_sensor_tag, (unsigned long)tag_data);
}
}
+#endif
break;
case FIMC_IS_DEVICE_ISCHAIN:
break;
{
int ret = 0;
struct fimc_is_group *group = NULL;
- struct fimc_is_group *child_group;
struct fimc_is_device_sensor *sensor;
+#ifndef ENABLE_SENSOR_VC_FUNCTION
+ struct fimc_is_group *child_group;
u32 stream;
+#endif
int i;
switch (type) {
case FIMC_IS_DEVICE_SENSOR:
sensor = (struct fimc_is_device_sensor *)device;
group = &sensor->group_sensor;
+#ifndef ENABLE_SENSOR_VC_FUNCTION
child_group = GET_HEAD_GROUP_IN_DEVICE(FIMC_IS_DEVICE_ISCHAIN, group);
stream = group->instance;
if (sensor->ischain && child_group)
for (i = 0; i < TAG_DATA_MAX; i++)
tasklet_kill(&devicemgr->tasklet_sensor_tag[stream][i]);
+#endif
if (!test_bit(FIMC_IS_SENSOR_STAND_ALONE, &sensor->state) && sensor->ischain) {
ret = fimc_is_ischain_stop_wrap(sensor->ischain, group);
group->head->device_type == FIMC_IS_DEVICE_SENSOR) {
mgrdbgs(1, " DEVICE TASKLET(%d) schedule\n", group->device, group,
frame, index);
+#ifndef ENABLE_SENSOR_VC_FUNCTION
tasklet_schedule(&devicemgr->tasklet_sensor_tag[stream][index]);
+#else
+ tasklet_sensor_tag((unsigned long)tag_data);
+#endif
}
break;
default: