aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSakari Ailus <sakari.ailus@linux.intel.com>2014-04-12 13:32:01 -0400
committerMauro Carvalho Chehab <m.chehab@samsung.com>2014-04-23 10:08:44 -0400
commitd4f79a80e6024b8dc50d4d3275dc4ed08729bb95 (patch)
tree3e39501062fa7e2b7c65b43582ed8368245cad10
parentce9c22443e77594531be84ba8d523f4148ba09fe (diff)
[media] smiapp: Remove unused quirk register functionality
The quirk registers mechanism which allows register to have a static read access value from the sensor specific quirks, is not used. Remove it. It is to be replaced by a more generic register diversion quirk soon. Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
-rw-r--r--drivers/media/i2c/smiapp/smiapp-quirk.c46
-rw-r--r--drivers/media/i2c/smiapp/smiapp-quirk.h10
-rw-r--r--drivers/media/i2c/smiapp/smiapp-regs.c4
-rw-r--r--drivers/media/i2c/smiapp/smiapp-regs.h5
4 files changed, 0 insertions, 65 deletions
diff --git a/drivers/media/i2c/smiapp/smiapp-quirk.c b/drivers/media/i2c/smiapp/smiapp-quirk.c
index bb8c506e0e3d..4955289d51d5 100644
--- a/drivers/media/i2c/smiapp/smiapp-quirk.c
+++ b/drivers/media/i2c/smiapp/smiapp-quirk.c
@@ -61,52 +61,6 @@ void smiapp_replace_limit(struct smiapp_sensor *sensor,
61 sensor->limits[limit] = val; 61 sensor->limits[limit] = val;
62} 62}
63 63
64bool smiapp_quirk_reg(struct smiapp_sensor *sensor,
65 u32 reg, u32 *val)
66{
67 struct i2c_client *client = v4l2_get_subdevdata(&sensor->src->sd);
68 const struct smia_reg *sreg;
69
70 if (!sensor->minfo.quirk)
71 return false;
72
73 sreg = sensor->minfo.quirk->regs;
74
75 if (!sreg)
76 return false;
77
78 while (sreg->type) {
79 u16 type = reg >> 16;
80 u16 reg16 = reg;
81
82 if (sreg->type != type || sreg->reg != reg16) {
83 sreg++;
84 continue;
85 }
86
87 switch ((u8)type) {
88 case SMIA_REG_8BIT:
89 dev_dbg(&client->dev, "quirk: 0x%8.8x: 0x%2.2x\n",
90 reg, sreg->val);
91 break;
92 case SMIA_REG_16BIT:
93 dev_dbg(&client->dev, "quirk: 0x%8.8x: 0x%4.4x\n",
94 reg, sreg->val);
95 break;
96 case SMIA_REG_32BIT:
97 dev_dbg(&client->dev, "quirk: 0x%8.8x: 0x%8.8x\n",
98 reg, sreg->val);
99 break;
100 }
101
102 *val = sreg->val;
103
104 return true;
105 }
106
107 return false;
108}
109
110static int jt8ew9_limits(struct smiapp_sensor *sensor) 64static int jt8ew9_limits(struct smiapp_sensor *sensor)
111{ 65{
112 if (sensor->minfo.revision_number_major < 0x03) 66 if (sensor->minfo.revision_number_major < 0x03)
diff --git a/drivers/media/i2c/smiapp/smiapp-quirk.h b/drivers/media/i2c/smiapp/smiapp-quirk.h
index 504a6d80ced5..4f65c4e0ec90 100644
--- a/drivers/media/i2c/smiapp/smiapp-quirk.h
+++ b/drivers/media/i2c/smiapp/smiapp-quirk.h
@@ -41,7 +41,6 @@ struct smiapp_quirk {
41 int (*post_poweron)(struct smiapp_sensor *sensor); 41 int (*post_poweron)(struct smiapp_sensor *sensor);
42 int (*pre_streamon)(struct smiapp_sensor *sensor); 42 int (*pre_streamon)(struct smiapp_sensor *sensor);
43 int (*post_streamoff)(struct smiapp_sensor *sensor); 43 int (*post_streamoff)(struct smiapp_sensor *sensor);
44 const struct smia_reg *regs;
45 unsigned long flags; 44 unsigned long flags;
46}; 45};
47 46
@@ -56,15 +55,6 @@ struct smiapp_reg_8 {
56 55
57void smiapp_replace_limit(struct smiapp_sensor *sensor, 56void smiapp_replace_limit(struct smiapp_sensor *sensor,
58 u32 limit, u32 val); 57 u32 limit, u32 val);
59bool smiapp_quirk_reg(struct smiapp_sensor *sensor,
60 u32 reg, u32 *val);
61
62#define SMIAPP_MK_QUIRK_REG(_reg, _val) \
63 { \
64 .type = (_reg >> 16), \
65 .reg = (u16)_reg, \
66 .val = _val, \
67 }
68 58
69#define smiapp_call_quirk(_sensor, _quirk, ...) \ 59#define smiapp_call_quirk(_sensor, _quirk, ...) \
70 (_sensor->minfo.quirk && \ 60 (_sensor->minfo.quirk && \
diff --git a/drivers/media/i2c/smiapp/smiapp-regs.c b/drivers/media/i2c/smiapp/smiapp-regs.c
index 4fac32cfcb3f..e01644c148ec 100644
--- a/drivers/media/i2c/smiapp/smiapp-regs.c
+++ b/drivers/media/i2c/smiapp/smiapp-regs.c
@@ -172,9 +172,6 @@ static int __smiapp_read(struct smiapp_sensor *sensor, u32 reg, u32 *val,
172 && len != SMIA_REG_32BIT) 172 && len != SMIA_REG_32BIT)
173 return -EINVAL; 173 return -EINVAL;
174 174
175 if (smiapp_quirk_reg(sensor, reg, val))
176 goto found_quirk;
177
178 if (len == SMIA_REG_8BIT && !only8) 175 if (len == SMIA_REG_8BIT && !only8)
179 rval = ____smiapp_read(sensor, (u16)reg, len, val); 176 rval = ____smiapp_read(sensor, (u16)reg, len, val);
180 else 177 else
@@ -182,7 +179,6 @@ static int __smiapp_read(struct smiapp_sensor *sensor, u32 reg, u32 *val,
182 if (rval < 0) 179 if (rval < 0)
183 return rval; 180 return rval;
184 181
185found_quirk:
186 if (reg & SMIA_REG_FLAG_FLOAT) 182 if (reg & SMIA_REG_FLAG_FLOAT)
187 *val = float_to_u32_mul_1000000(client, *val); 183 *val = float_to_u32_mul_1000000(client, *val);
188 184
diff --git a/drivers/media/i2c/smiapp/smiapp-regs.h b/drivers/media/i2c/smiapp/smiapp-regs.h
index eefc6c84d5fe..e07b30c19790 100644
--- a/drivers/media/i2c/smiapp/smiapp-regs.h
+++ b/drivers/media/i2c/smiapp/smiapp-regs.h
@@ -34,11 +34,6 @@
34#define SMIA_REG_8BIT 1 34#define SMIA_REG_8BIT 1
35#define SMIA_REG_16BIT 2 35#define SMIA_REG_16BIT 2
36#define SMIA_REG_32BIT 4 36#define SMIA_REG_32BIT 4
37struct smia_reg {
38 u16 type;
39 u16 reg; /* 16-bit offset */
40 u32 val; /* 8/16/32-bit value */
41};
42 37
43struct smiapp_sensor; 38struct smiapp_sensor;
44 39