Modulation and other parameters might have changed. So, better
to call ctrl_set_standard() even if the device is already
powered.

That helps to put the device into a sane state, if something
got wrong on a previous set_frontend call.

Signed-off-by: Mauro Carvalho Chehab <m.che...@samsung.com>
---
 drivers/media/dvb-frontends/drx39xyj/drxj.c | 19 ++++++++-----------
 1 file changed, 8 insertions(+), 11 deletions(-)

diff --git a/drivers/media/dvb-frontends/drx39xyj/drxj.c 
b/drivers/media/dvb-frontends/drx39xyj/drxj.c
index 7f17cd14839b..b1a7dfeec489 100644
--- a/drivers/media/dvb-frontends/drx39xyj/drxj.c
+++ b/drivers/media/dvb-frontends/drx39xyj/drxj.c
@@ -20213,18 +20213,15 @@ static int drx39xxj_set_frontend(struct dvb_frontend 
*fe)
        default:
                return -EINVAL;
        }
-
-       if (standard != state->current_standard || state->powered_up == 0) {
-               /* Set the standard (will be powered up if necessary */
-               result = ctrl_set_standard(demod, &standard);
-               if (result != 0) {
-                       pr_err("Failed to set standard! result=%02x\n",
-                              result);
-                       return -EINVAL;
-               }
-               state->powered_up = 1;
-               state->current_standard = standard;
+       /* Set the standard (will be powered up if necessary */
+       result = ctrl_set_standard(demod, &standard);
+       if (result != 0) {
+               pr_err("Failed to set standard! result=%02x\n",
+                       result);
+               return -EINVAL;
        }
+       state->powered_up = 1;
+       state->current_standard = standard;
 
        /* set channel parameters */
        channel = def_channel;
-- 
1.8.5.3

--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to