Browse Source

[media] drx-j: call ctrl_set_standard even if a standard is powered

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.

Acked-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Mauro Carvalho Chehab 11 years ago
parent
commit
c4dc6f9222
1 changed files with 8 additions and 11 deletions
  1. 8 11
      drivers/media/dvb-frontends/drx39xyj/drxj.c

+ 8 - 11
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;