aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/i2c/smiapp/smiapp-quirk.c
diff options
context:
space:
mode:
authorSakari Ailus <sakari.ailus@linux.intel.com>2014-10-03 10:38:32 -0400
committerMauro Carvalho Chehab <mchehab@osg.samsung.com>2014-12-23 08:50:25 -0500
commit0d825a1226466512f44d4a81ce11ad15ca9334b0 (patch)
tree038f860bbbdfe45989d511b25524ec717343c3aa /drivers/media/i2c/smiapp/smiapp-quirk.c
parent5313c00266700d231d9b386d9c0e4faad710c729 (diff)
[media] smiapp: Replace pll_flags quirk with more generic init quirk
The pll_flags quirk just returned the extra PLL flags the sensor required, but the init quirk is far more versatile. It can be used to perform any extra initialisation needed by the sensor, including allocating memory for sensor specific struct and creating sensor specific new controls. Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
Diffstat (limited to 'drivers/media/i2c/smiapp/smiapp-quirk.c')
-rw-r--r--drivers/media/i2c/smiapp/smiapp-quirk.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/media/i2c/smiapp/smiapp-quirk.c b/drivers/media/i2c/smiapp/smiapp-quirk.c
index dd4ae6f4ba3e..abf9ea7a0fb7 100644
--- a/drivers/media/i2c/smiapp/smiapp-quirk.c
+++ b/drivers/media/i2c/smiapp/smiapp-quirk.c
@@ -214,9 +214,11 @@ static int jt8ev1_post_streamoff(struct smiapp_sensor *sensor)
214 return smiapp_write_8(sensor, 0x3328, 0x80); 214 return smiapp_write_8(sensor, 0x3328, 0x80);
215} 215}
216 216
217static unsigned long jt8ev1_pll_flags(struct smiapp_sensor *sensor) 217static int jt8ev1_init(struct smiapp_sensor *sensor)
218{ 218{
219 return SMIAPP_PLL_FLAG_OP_PIX_CLOCK_PER_LANE; 219 sensor->pll.flags |= SMIAPP_PLL_FLAG_OP_PIX_CLOCK_PER_LANE;
220
221 return 0;
220} 222}
221 223
222const struct smiapp_quirk smiapp_jt8ev1_quirk = { 224const struct smiapp_quirk smiapp_jt8ev1_quirk = {
@@ -224,7 +226,7 @@ const struct smiapp_quirk smiapp_jt8ev1_quirk = {
224 .post_poweron = jt8ev1_post_poweron, 226 .post_poweron = jt8ev1_post_poweron,
225 .pre_streamon = jt8ev1_pre_streamon, 227 .pre_streamon = jt8ev1_pre_streamon,
226 .post_streamoff = jt8ev1_post_streamoff, 228 .post_streamoff = jt8ev1_post_streamoff,
227 .pll_flags = jt8ev1_pll_flags, 229 .init = jt8ev1_init,
228}; 230};
229 231
230static int tcm8500md_limits(struct smiapp_sensor *sensor) 232static int tcm8500md_limits(struct smiapp_sensor *sensor)