mirror of
https://github.com/torvalds/linux.git
synced 2024-11-24 13:11:40 +00:00
ASoC: tpa6130a2: Support for tpa6140's regulators
tpa6140a2 uses different names for the regulators. Signed-off-by: Ilkka Koskinen <ilkka.koskinen@nokia.com> Acked-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
This commit is contained in:
parent
53242c6833
commit
2138301e16
@ -23,7 +23,13 @@
|
|||||||
#ifndef TPA6130A2_PLAT_H
|
#ifndef TPA6130A2_PLAT_H
|
||||||
#define TPA6130A2_PLAT_H
|
#define TPA6130A2_PLAT_H
|
||||||
|
|
||||||
|
enum tpa_model {
|
||||||
|
TPA6130A2,
|
||||||
|
TPA6140A2,
|
||||||
|
};
|
||||||
|
|
||||||
struct tpa6130a2_platform_data {
|
struct tpa6130a2_platform_data {
|
||||||
|
enum tpa_model id;
|
||||||
int power_gpio;
|
int power_gpio;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -41,6 +41,11 @@ static const char *tpa6130a2_supply_names[TPA6130A2_NUM_SUPPLIES] = {
|
|||||||
"Vdd",
|
"Vdd",
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static const char *tpa6140a2_supply_names[TPA6130A2_NUM_SUPPLIES] = {
|
||||||
|
"HPVdd",
|
||||||
|
"AVdd",
|
||||||
|
};
|
||||||
|
|
||||||
/* This struct is used to save the context */
|
/* This struct is used to save the context */
|
||||||
struct tpa6130a2_data {
|
struct tpa6130a2_data {
|
||||||
struct mutex mutex;
|
struct mutex mutex;
|
||||||
@ -420,8 +425,21 @@ static int tpa6130a2_probe(struct i2c_client *client,
|
|||||||
gpio_direction_output(data->power_gpio, 0);
|
gpio_direction_output(data->power_gpio, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
for (i = 0; i < ARRAY_SIZE(data->supplies); i++)
|
switch (pdata->id) {
|
||||||
data->supplies[i].supply = tpa6130a2_supply_names[i];
|
case TPA6130A2:
|
||||||
|
for (i = 0; i < ARRAY_SIZE(data->supplies); i++)
|
||||||
|
data->supplies[i].supply = tpa6130a2_supply_names[i];
|
||||||
|
break;
|
||||||
|
case TPA6140A2:
|
||||||
|
for (i = 0; i < ARRAY_SIZE(data->supplies); i++)
|
||||||
|
data->supplies[i].supply = tpa6140a2_supply_names[i];;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
dev_warn(dev, "Unknown TPA model (%d). Assuming 6130A2\n",
|
||||||
|
pdata->id);
|
||||||
|
for (i = 0; i < ARRAY_SIZE(data->supplies); i++)
|
||||||
|
data->supplies[i].supply = tpa6130a2_supply_names[i];
|
||||||
|
}
|
||||||
|
|
||||||
ret = regulator_bulk_get(dev, ARRAY_SIZE(data->supplies),
|
ret = regulator_bulk_get(dev, ARRAY_SIZE(data->supplies),
|
||||||
data->supplies);
|
data->supplies);
|
||||||
|
Loading…
Reference in New Issue
Block a user