summaryrefslogtreecommitdiffstats
path: root/drivers/media/dvb/frontends/dib7000m.c
diff options
context:
space:
mode:
authorMauro Carvalho Chehab <mchehab@redhat.com>2011-12-30 11:30:21 -0300
committerMauro Carvalho Chehab <mchehab@redhat.com>2011-12-31 10:28:23 -0200
commit7c61d80a9bcfc3fdec8ffd75756cad6a64678229 (patch)
treecd62cf4852ba56a7a5f12cc630cae44000393f34 /drivers/media/dvb/frontends/dib7000m.c
parentac3852c41b36cb408bea1400892dd6c61c3b225a (diff)
downloadlinux-7c61d80a9bcfc3fdec8ffd75756cad6a64678229.tar.gz
linux-7c61d80a9bcfc3fdec8ffd75756cad6a64678229.tar.bz2
linux-7c61d80a9bcfc3fdec8ffd75756cad6a64678229.zip
[media] dvb: don't require a parameter for get_frontend
Just like set_frontend, use the dvb cache properties for get_frontend. This is more consistent, as both functions are now symetric. Also, at the places get_frontend is called, it makes sense to update the cache. Most of this patch were generated by this small perl script: while (<>) { $file .= $_; } if ($file =~ m/\.get_frontend\s*=\s*([\d\w_]+)/) { my $get = $1; $file =~ s/($get)(\s*\([^\,\)]+)\,\s*struct\s+dtv_frontend_properties\s*\*\s*([_\d\w]+)\)\s*\{/\1\2)\n{\n\tstruct dtv_frontend_properties *\3 = &fe->dtv_property_cache;/g; } print $file; Of course, the changes at dvb_frontend.[ch] were made by hand, as well as the changes on a few other places, where get_frontend() is called internally inside the driver. On some places, get_frontend() were just a void function. Those occurrences were removed, as the DVB core handles such cases. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/dvb/frontends/dib7000m.c')
-rw-r--r--drivers/media/dvb/frontends/dib7000m.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/drivers/media/dvb/frontends/dib7000m.c b/drivers/media/dvb/frontends/dib7000m.c
index 9f2330d832cf..2a2d6466ecc5 100644
--- a/drivers/media/dvb/frontends/dib7000m.c
+++ b/drivers/media/dvb/frontends/dib7000m.c
@@ -1154,9 +1154,9 @@ static int dib7000m_identify(struct dib7000m_state *state)
}
-static int dib7000m_get_frontend(struct dvb_frontend* fe,
- struct dtv_frontend_properties *fep)
+static int dib7000m_get_frontend(struct dvb_frontend* fe)
{
+ struct dtv_frontend_properties *fep = &fe->dtv_property_cache;
struct dib7000m_state *state = fe->demodulator_priv;
u16 tps = dib7000m_read_word(state,480);
@@ -1214,7 +1214,7 @@ static int dib7000m_get_frontend(struct dvb_frontend* fe,
static int dib7000m_set_frontend(struct dvb_frontend *fe)
{
- struct dtv_frontend_properties *fep = &fe->dtv_property_cache, tmp;
+ struct dtv_frontend_properties *fep = &fe->dtv_property_cache;
struct dib7000m_state *state = fe->demodulator_priv;
int time, ret;
@@ -1239,8 +1239,6 @@ static int dib7000m_set_frontend(struct dvb_frontend *fe)
fep->code_rate_HP == FEC_AUTO) {
int i = 800, found;
- tmp = *fep;
-
dib7000m_autosearch_start(fe);
do {
msleep(1);
@@ -1251,7 +1249,7 @@ static int dib7000m_set_frontend(struct dvb_frontend *fe)
if (found == 0 || found == 1)
return 0; // no channel found
- dib7000m_get_frontend(fe, &tmp);
+ dib7000m_get_frontend(fe);
}
ret = dib7000m_tune(fe);