if (rval < 0)
                goto out;
 
-       if ((sensor->flash_capability &
+       if ((sensor->limits[SMIAPP_LIMIT_FLASH_MODE_CAPABILITY] &
             (SMIAPP_FLASH_MODE_CAPABILITY_SINGLE_STROBE |
              SMIAPP_FLASH_MODE_CAPABILITY_MULTIPLE_STROBE)) &&
            sensor->platform_data->strobe_setup != NULL &&
        struct i2c_client *client = v4l2_get_subdevdata(&sensor->src->sd);
        struct smiapp_pll *pll = &sensor->pll;
        struct smiapp_subdev *last = NULL;
-       u32 tmp;
        unsigned int i;
        int rval;
 
        sensor->streaming = false;
        sensor->dev_init_done = true;
 
-       /* check flash capability */
-       rval = smiapp_read(sensor, SMIAPP_REG_U8_FLASH_MODE_CAPABILITY, &tmp);
-       sensor->flash_capability = tmp;
-       if (rval)
-               goto out_cleanup;
-
        smiapp_power_off(sensor);
 
        return 0;