From: Andreas Oberritter Date: Thu, 4 Aug 2011 15:33:12 +0000 (-0300) Subject: [media] DVB: dvb_frontend: fix stale parameters on initial frontend event X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=56ce5ac41af87c157cf4c6e4e6fec31d7d48025e;p=deliverable%2Flinux.git [media] DVB: dvb_frontend: fix stale parameters on initial frontend event Modify it to use the data given by the user. Signed-off-by: Andreas Oberritter Signed-off-by: Mauro Carvalho Chehab --- diff --git a/drivers/media/dvb/dvb-core/dvb_frontend.c b/drivers/media/dvb/dvb-core/dvb_frontend.c index efe9c30605e8..23d79d0f25ee 100644 --- a/drivers/media/dvb/dvb-core/dvb_frontend.c +++ b/drivers/media/dvb/dvb-core/dvb_frontend.c @@ -1827,6 +1827,13 @@ static int dvb_frontend_ioctl_legacy(struct file *file, dtv_property_cache_sync(fe, c, &fepriv->parameters_in); } + /* + * Initialize output parameters to match the values given by + * the user. FE_SET_FRONTEND triggers an initial frontend event + * with status = 0, which copies output parameters to userspace. + */ + fepriv->parameters_out = fepriv->parameters_in; + memset(&fetunesettings, 0, sizeof(struct dvb_frontend_tune_settings)); memcpy(&fetunesettings.parameters, parg, sizeof (struct dvb_frontend_parameters));