|
@@ -393,6 +393,8 @@ static int mt9m111_disable(struct soc_camera_device *icd)
|
|
|
|
|
|
static int mt9m111_reset(struct soc_camera_device *icd)
|
|
|
{
|
|
|
+ struct mt9m111 *mt9m111 = container_of(icd, struct mt9m111, icd);
|
|
|
+ struct soc_camera_link *icl = mt9m111->client->dev.platform_data;
|
|
|
int ret;
|
|
|
|
|
|
ret = reg_set(RESET, MT9M111_RESET_RESET_MODE);
|
|
@@ -401,6 +403,10 @@ static int mt9m111_reset(struct soc_camera_device *icd)
|
|
|
if (!ret)
|
|
|
ret = reg_clear(RESET, MT9M111_RESET_RESET_MODE
|
|
|
| MT9M111_RESET_RESET_SOC);
|
|
|
+
|
|
|
+ if (icl->reset)
|
|
|
+ icl->reset(&mt9m111->client->dev);
|
|
|
+
|
|
|
return ret;
|
|
|
}
|
|
|
|