diff options
author | Anatol Pomozov <anatol.pomozov@gmail.com> | 2014-09-26 12:57:27 -0400 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2014-09-29 14:46:20 -0400 |
commit | 6f67c380056ceaf5844f18d3a5d769d233247849 (patch) | |
tree | 168bed40ef09af1ce49a7b364f1be4da14c6acda /sound | |
parent | 0e612ff10c86241683f0a77e3dd0a6631b640009 (diff) |
ASoC: rt5677: Add dts properties for input/output differential configuration
Signed-off-by: Anatol Pomozov <anatol.pomozov@gmail.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/soc/codecs/rt5677.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/sound/soc/codecs/rt5677.c b/sound/soc/codecs/rt5677.c index d2c6abf38ad2..97dff7172fb6 100644 --- a/sound/soc/codecs/rt5677.c +++ b/sound/soc/codecs/rt5677.c | |||
@@ -3569,6 +3569,17 @@ MODULE_DEVICE_TABLE(i2c, rt5677_i2c_id); | |||
3569 | 3569 | ||
3570 | static int rt5677_parse_dt(struct rt5677_priv *rt5677, struct device_node *np) | 3570 | static int rt5677_parse_dt(struct rt5677_priv *rt5677, struct device_node *np) |
3571 | { | 3571 | { |
3572 | rt5677->pdata.in1_diff = of_property_read_bool(np, | ||
3573 | "realtek,in1-differential"); | ||
3574 | rt5677->pdata.in2_diff = of_property_read_bool(np, | ||
3575 | "realtek,in2-differential"); | ||
3576 | rt5677->pdata.lout1_diff = of_property_read_bool(np, | ||
3577 | "realtek,lout1-differential"); | ||
3578 | rt5677->pdata.lout2_diff = of_property_read_bool(np, | ||
3579 | "realtek,lout2-differential"); | ||
3580 | rt5677->pdata.lout3_diff = of_property_read_bool(np, | ||
3581 | "realtek,lout3-differential"); | ||
3582 | |||
3572 | rt5677->pow_ldo2 = of_get_named_gpio(np, | 3583 | rt5677->pow_ldo2 = of_get_named_gpio(np, |
3573 | "realtek,pow-ldo2-gpio", 0); | 3584 | "realtek,pow-ldo2-gpio", 0); |
3574 | 3585 | ||
@@ -3660,6 +3671,18 @@ static int rt5677_i2c_probe(struct i2c_client *i2c, | |||
3660 | regmap_update_bits(rt5677->regmap, RT5677_IN1, | 3671 | regmap_update_bits(rt5677->regmap, RT5677_IN1, |
3661 | RT5677_IN_DF2, RT5677_IN_DF2); | 3672 | RT5677_IN_DF2, RT5677_IN_DF2); |
3662 | 3673 | ||
3674 | if (rt5677->pdata.lout1_diff) | ||
3675 | regmap_update_bits(rt5677->regmap, RT5677_LOUT1, | ||
3676 | RT5677_LOUT1_L_DF, RT5677_LOUT1_L_DF); | ||
3677 | |||
3678 | if (rt5677->pdata.lout2_diff) | ||
3679 | regmap_update_bits(rt5677->regmap, RT5677_LOUT1, | ||
3680 | RT5677_LOUT2_L_DF, RT5677_LOUT2_L_DF); | ||
3681 | |||
3682 | if (rt5677->pdata.lout3_diff) | ||
3683 | regmap_update_bits(rt5677->regmap, RT5677_LOUT1, | ||
3684 | RT5677_LOUT3_L_DF, RT5677_LOUT3_L_DF); | ||
3685 | |||
3663 | if (rt5677->pdata.dmic2_clk_pin == RT5677_DMIC_CLK2) { | 3686 | if (rt5677->pdata.dmic2_clk_pin == RT5677_DMIC_CLK2) { |
3664 | regmap_update_bits(rt5677->regmap, RT5677_GEN_CTRL2, | 3687 | regmap_update_bits(rt5677->regmap, RT5677_GEN_CTRL2, |
3665 | RT5677_GPIO5_FUNC_MASK, | 3688 | RT5677_GPIO5_FUNC_MASK, |