|
@@ -37,6 +37,8 @@ static void arizona_haptics_work(struct work_struct *work)
|
|
|
struct arizona_haptics,
|
|
|
work);
|
|
|
struct arizona *arizona = haptics->arizona;
|
|
|
+ struct snd_soc_component *component =
|
|
|
+ snd_soc_dapm_to_component(arizona->dapm);
|
|
|
int ret;
|
|
|
|
|
|
if (!haptics->arizona->dapm) {
|
|
@@ -66,7 +68,7 @@ static void arizona_haptics_work(struct work_struct *work)
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
- ret = snd_soc_dapm_enable_pin(arizona->dapm, "HAPTICS");
|
|
|
+ ret = snd_soc_component_enable_pin(component, "HAPTICS");
|
|
|
if (ret != 0) {
|
|
|
dev_err(arizona->dev, "Failed to start HAPTICS: %d\n",
|
|
|
ret);
|
|
@@ -81,7 +83,7 @@ static void arizona_haptics_work(struct work_struct *work)
|
|
|
}
|
|
|
} else {
|
|
|
/* This disable sequence will be a noop if already enabled */
|
|
|
- ret = snd_soc_dapm_disable_pin(arizona->dapm, "HAPTICS");
|
|
|
+ ret = snd_soc_component_disable_pin(component, "HAPTICS");
|
|
|
if (ret != 0) {
|
|
|
dev_err(arizona->dev, "Failed to disable HAPTICS: %d\n",
|
|
|
ret);
|
|
@@ -140,11 +142,14 @@ static int arizona_haptics_play(struct input_dev *input, void *data,
|
|
|
static void arizona_haptics_close(struct input_dev *input)
|
|
|
{
|
|
|
struct arizona_haptics *haptics = input_get_drvdata(input);
|
|
|
+ struct snd_soc_component *component;
|
|
|
|
|
|
cancel_work_sync(&haptics->work);
|
|
|
|
|
|
- if (haptics->arizona->dapm)
|
|
|
- snd_soc_dapm_disable_pin(haptics->arizona->dapm, "HAPTICS");
|
|
|
+ if (haptics->arizona->dapm) {
|
|
|
+ component = snd_soc_dapm_to_component(haptics->arizona->dapm);
|
|
|
+ snd_soc_component_disable_pin(component, "HAPTICS");
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
static int arizona_haptics_probe(struct platform_device *pdev)
|