additional configs for front camera on surface devices

This commit is contained in:
Jake Day 2017-11-05 21:27:22 -05:00
parent 9e25748f47
commit 641f53300b
3 changed files with 18 additions and 4 deletions

View file

@ -1342,7 +1342,16 @@ static int gpio_ctrl(struct v4l2_subdev *sd, bool flag)
if (dev->platform_data->gpio_ctrl)
return dev->platform_data->gpio_ctrl(sd, flag);
ret = dev->platform_data->gpio0_ctrl(sd, flag);
if (flag) {
ret = dev->platform_data->gpio0_ctrl(sd, 0);
ret = dev->platform_data->gpio1_ctrl(sd, 0);
msleep(60);
ret |= dev->platform_data->gpio0_ctrl(sd, 1);
ret |= dev->platform_data->gpio1_ctrl(sd, 1);
} else {
ret = dev->platform_data->gpio0_ctrl(sd, 0);
ret = dev->platform_data->gpio1_ctrl(sd, 0);
}
return ret;
}
@ -1709,7 +1718,7 @@ static int ov5693_detect(struct i2c_client *client)
OV5693_SC_CMMN_CHIP_ID_L, &low);
id = ((((u16) high) << 8) | (u16) low);
if (id != OV5693_ID) {
if (id != OV5690_ID && id != OV5693_ID) {
dev_err(&client->dev, "sensor ID error 0x%x\n", id);
return -ENODEV;
}

View file

@ -33,7 +33,7 @@
#include <linux/v4l2-mediabus.h>
#include <media/media-entity.h>
#include "../../include/linux/atomisp_platform.h"
#include "../../include/linux/atomisp_gmin_platform.h"
#define OV5693_NAME "ov5693"
@ -78,7 +78,8 @@
* bits 7-0: min f-number denominator
*/
#define OV5693_F_NUMBER_RANGE 0x180a180a
#define OV5693_ID 0x5690
#define OV5690_ID 0x5690
#define OV5693_ID 0x5693
#define OV5693_FINE_INTG_TIME_MIN 0
#define OV5693_FINE_INTG_TIME_MAX_MARGIN 0

View file

@ -296,11 +296,13 @@ static const struct gmin_cfg_var ecs7_vars[] = {
{"INT33BE:00_CsiFmt", "13"},
{"INT33BE:00_CsiBayer", "2"},
{"INT33BE:00_CamClk", "0"},
{"INT33BE:00_ClkSrc", "1"},
{"INT33F0:00_CsiPort", "0"},
{"INT33F0:00_CsiLanes", "1"},
{"INT33F0:00_CsiFmt", "13"},
{"INT33F0:00_CsiBayer", "0"},
{"INT33F0:00_CamClk", "1"},
{"INT33BE:00_I2CAddr", "-1"},
{"gmin_V2P8GPIO", "402"},
{},
};
@ -325,6 +327,8 @@ static const struct {
{ "MRD7", mrd7_vars },
{ "ST70408", ecs7_vars },
{ "VTA0803", i8880_vars },
{ "Surface Book" , ecs7_vars } ,
{ "Surface Pro 4" , ecs7_vars } ,
};