[media] DVB-frontends: Deletion of unnecessary checks before the function call "relea...
[deliverable/linux.git] / drivers / media / dvb-frontends / si2168.c
index 1cd93be281ed4d42194d15d2535bd86dd5eb638d..34206f3fe497cdd702e857af33ab94a40312c151 100644 (file)
@@ -308,14 +308,16 @@ static int si2168_set_frontend(struct dvb_frontend *fe)
        if (ret)
                goto err;
 
-       memcpy(cmd.args, "\x14\x00\x09\x10\xe3\x18", 6);
+       memcpy(cmd.args, "\x14\x00\x09\x10\xe3\x08", 6);
+       cmd.args[5] |= s->ts_clock_inv ? 0x00 : 0x10;
        cmd.wlen = 6;
        cmd.rlen = 4;
        ret = si2168_cmd_execute(s, &cmd);
        if (ret)
                goto err;
 
-       memcpy(cmd.args, "\x14\x00\x08\x10\xd7\x15", 6);
+       memcpy(cmd.args, "\x14\x00\x08\x10\xd7\x05", 6);
+       cmd.args[5] |= s->ts_clock_inv ? 0x00 : 0x10;
        cmd.wlen = 6;
        cmd.rlen = 4;
        ret = si2168_cmd_execute(s, &cmd);
@@ -498,16 +500,14 @@ static int si2168_init(struct dvb_frontend *fe)
 
        s->fw_loaded = true;
 
-warm:
        dev_info(&s->client->dev, "found a '%s' in warm state\n",
                        si2168_ops.info.name);
-
+warm:
        s->active = true;
 
        return 0;
 err:
-       if (fw)
-               release_firmware(fw);
+       release_firmware(fw);
 
        dev_dbg(&s->client->dev, "failed=%d\n", ret);
        return ret;
@@ -670,6 +670,7 @@ static int si2168_probe(struct i2c_client *client,
        *config->i2c_adapter = s->adapter;
        *config->fe = &s->fe;
        s->ts_mode = config->ts_mode;
+       s->ts_clock_inv = config->ts_clock_inv;
        s->fw_loaded = false;
 
        i2c_set_clientdata(client, s);
This page took 0.045418 seconds and 5 git commands to generate.