]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - drivers/mfd/si476x-i2c.c
KARO: cleanup after merge of Freescale 3.10.17 stuff
[karo-tx-linux.git] / drivers / mfd / si476x-i2c.c
index d32e25c2128d8a38f080b17f264951e6d8107afc..0e4a76daf18789b37e84163f2a83bb45afb642ea 100644 (file)
@@ -303,7 +303,7 @@ int si476x_core_set_power_state(struct si476x_core *core,
                         */
                        udelay(100);
 
-                       err = si476x_core_start(core, true);
+                       err = si476x_core_start(core, false);
                        if (err < 0)
                                goto disable_regulators;
 
@@ -312,7 +312,7 @@ int si476x_core_set_power_state(struct si476x_core *core,
 
                case SI476X_POWER_DOWN:
                        core->power_state = next_state;
-                       err = si476x_core_stop(core, true);
+                       err = si476x_core_stop(core, false);
                        if (err < 0)
                                core->power_state = SI476X_POWER_INCONSISTENT;
 disable_regulators:
@@ -740,15 +740,8 @@ static int si476x_core_probe(struct i2c_client *client,
                memcpy(&core->pinmux, &pdata->pinmux,
                       sizeof(struct si476x_pinmux));
        } else {
-               dev_warn(&client->dev, "Using default platform data.\n");
-               core->power_up_parameters.xcload = 0x28;
-               core->power_up_parameters.func = SI476X_FUNC_FM_RECEIVER;
-               core->power_up_parameters.freq = SI476X_FREQ_37P209375_MHZ;
-               core->diversity_mode = SI476X_PHDIV_DISABLED;
-               core->pinmux.dclk = SI476X_DCLK_DAUDIO;
-               core->pinmux.dfs  = SI476X_DFS_DAUDIO;
-               core->pinmux.dout = SI476X_DOUT_I2S_OUTPUT;
-               core->pinmux.xout = SI476X_XOUT_TRISTATE;
+               dev_err(&client->dev, "No platform data provided\n");
+               return -EINVAL;
        }
 
        core->supplies[0].supply = "vd";
@@ -806,10 +799,6 @@ static int si476x_core_probe(struct i2c_client *client,
 
        core->chip_id = id->driver_data;
 
-       /* Power down si476x first */
-       core->power_state = SI476X_POWER_UP_FULL;
-       si476x_core_set_power_state(core, SI476X_POWER_DOWN);
-
        rval = si476x_core_get_revision_info(core);
        if (rval < 0) {
                rval = -ENODEV;