Commit Graph

82 Commits

Author SHA1 Message Date
Oder Chiou
86ae04b174 ASoC: rt5677: Modify the default value of the MX-8E[4] for ASRC function
Modify the default value of the MX-8E[4] to 1 for ASRC function. It could
prevent the pop noise with ASRC function.

Signed-off-by: Oder Chiou <oder_chiou@realtek.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2014-11-17 23:29:31 +00:00
Oder Chiou
91159ecaf4 ASoC: rt5677: Add TDM channel mux in DAC side of IF1 and IF2
It is the slot selection in DAC side of IF1 and IF2.

Signed-off-by: Oder Chiou <oder_chiou@realtek.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2014-11-12 11:48:40 +00:00
Oder Chiou
19ba484d7b ASoC: rt5677: Use specific r/w function for DSP mode
In DSP mode, the register r/w should use the specific function to access
that is invoked by address mapping of the DSP.

The MX-65[1] is for switching DSP or codec mode.

Signed-off-by: Oder Chiou <oder_chiou@realtek.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2014-11-07 11:19:06 +00:00
Oder Chiou
d65fd3a42e ASoC: rt5677: Minor coding style and typo fix
Minor coding style and typo fix

Signed-off-by: Oder Chiou <oder_chiou@realtek.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2014-11-05 14:56:43 +00:00
Oder Chiou
e6f6ebc1f8 ASoC: rt5677: Add TDM channel mapping function
It is for channel to slot mapping, and it is not only for 8 channels mapping,
but also in 2, 4 and 6 channels mapping. If we want to use the 2 channels in
the stereo2 adc path, we need to set the item "2/1/3/4" or "2/3/1/4".

It also adds for stereo channel swap. It can map the sterero channels "L/R"
to "R/L", "L/L" or R/R.

Signed-off-by: Oder Chiou <oder_chiou@realtek.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2014-10-28 22:52:21 +00:00
kbuild test robot
2d27deb40d ASoC: rt5677: rt5677_irq_init() can be static
sound/soc/codecs/rt5677.c:4017:5: sparse: symbol 'rt5677_irq_init' was not declared. Should it be static?
sound/soc/codecs/rt5677.c:4044:6: sparse: symbol 'rt5677_irq_exit' was not declared. Should it be static?

Signed-off-by: Fengguang Wu <fengguang.wu@intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2014-10-22 16:34:50 +01:00
Oder Chiou
5e3363ad1b ASoC: rt5677: add GPIO IRQ support
This allows to enable Mic Jack detection feature

Signed-off-by: Oder Chiou <oder_chiou@realtek.com>
Modified-by: Anatol Pomozov <anatol.pomozov@gmail.com>
Signed-off-by: Anatol Pomozov <anatol.pomozov@gmail.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2014-10-22 11:43:14 +01:00
Anatol Pomozov
45b6e1d300 ASoC: rt5677: fix build when kernel compiled without GPIOLIB support
Signed-off-by: Anatol Pomozov <anatol.pomozov@gmail.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2014-10-20 12:22:21 +01:00
Anatol Pomozov
8a4bd60af4 ASoC: rt5677: Print more information if setting DAI clock failed
Signed-off-by: Anatol Pomozov <anatol.pomozov@gmail.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2014-10-20 12:22:20 +01:00
Oder Chiou
af48f1d08a ASoC: rt5677: Support DSP function for VAD application
The ALC5677 has a programmable DSP, and there is a SPI that is dadicated for DSP
firmware loading. Therefore, the patch includes a SPI driver for writing the DSP
firmware. The VAD(Voice Activaty Detection) has be implemented and use the DSP to
recognize the key phase.

Signed-off-by: Oder Chiou <oder_chiou@realtek.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2014-10-20 12:22:20 +01:00
Anatol Pomozov
40eb90a18e ASoC: rt5677: Add option to configure gpio as floating/pullup/pulldown
gpio_config is array of 6 elements that allows to set GPIO as
floating, pullup, pulldown.

Sponsored: Google ChromeOS
Signed-off-by: Anatol Pomozov <anatol.pomozov@gmail.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2014-10-20 12:22:20 +01:00
Mark Brown
7370780cfd Merge remote-tracking branches 'asoc/topic/rt5645', 'asoc/topic/rt5677', 'asoc/topic/samsung', 'asoc/topic/sgtl5000' and 'asoc/topic/sh' into asoc-next 2014-10-06 12:49:03 +01:00
Mark Brown
565fefdf31 Merge remote-tracking branches 'asoc/topic/davinci', 'asoc/topic/dmic', 'asoc/topic/drivers', 'asoc/topic/es8328' and 'asoc/topic/fsl' into asoc-next 2014-10-06 12:48:57 +01:00
Anatol Pomozov
6f67c38005 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>
2014-09-29 19:46:20 +01:00
Anatol Pomozov
f9f6a592cf ASoC: rt5677: Add a configuration option for LDO2_POW pin
Some boards have this pin statically tied and do not require any configuration,
some other boards allow to enable chip using GPIO.

Add an option that tells which GPIO is used to power the audio codec.

Signed-off-by: Anatol Pomozov <anatol.pomozov@gmail.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2014-09-24 09:59:03 +01:00
Oder Chiou
90bdbb46f4 ASoC: rt5677: Add sidetone function
Add sidetone function

Signed-off-by: Anatol Pomozov <anatol.pomozov@gmail.com>
Signed-off-by: Oder Chiou <oder_chiou@realtek.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2014-09-22 17:52:45 -07:00
Oder Chiou
48561afef4 ASoC: rt5677: Add the TDM function
The patch adds the TDM function.

Signed-off-by: Oder Chiou <oder_chiou@realtek.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2014-09-17 10:05:12 -07:00
Axel Lin
5d5e63af99 ASoC: Remove return value checking for gpiochip_remove()
gpiochip_remove() will return void eventually.
Thus this patch removes return value checking for gpiochip_remove().

Signed-off-by: Axel Lin <axel.lin@ingics.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2014-09-17 09:49:53 -07:00
Oder Chiou
44caf76480 ASoC: rt5677: Add the GPIO function
The patch adds the GPIO function.

Signed-off-by: Oder Chiou <oder_chiou@realtek.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2014-09-16 09:16:12 -07:00
Bard Liao
2d15d97461 ASoC: rt5677: Add DMIC2 clock selection
There are two pins can be used for rt5677's DMIC2 clock. This patch
add the select options for it.

Signed-off-by: Bard Liao <bardliao@realtek.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2014-08-27 16:54:39 +01:00
Bard Liao
22e51345a9 ASoC: rt5677: correct mismatch widget name
We name MICBIAS1 in dapm widget, but micbias1 in route table.

Signed-off-by: Bard Liao <bardliao@realtek.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2014-08-27 16:54:21 +01:00
Oder Chiou
f18803a375 ASoC: rt5677: Modify the voltage level in the BIAS OFF stage
The patch modifies the voltage level in the BIAS OFF stage

Signed-off-by: Oder Chiou <oder_chiou@realtek.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2014-07-07 10:09:34 +02:00
Axel Lin
099d334e3d ASoC: rt5677: Convert to use rl6231_pll_calc
The implementation of rt5677_pll_calc() has the same logic of rl6231_pll_calc().
The only difference is the lower boundary checking for freq_in.

This patch calls rl6231_pll_calc() instead of open-coded.
The k_bp of struct rt5677_pll_code is always false, thus also remove the
code to check pll_code.k_bp.

Signed-off-by: Axel Lin <axel.lin@ingics.com>
Tested-by: Oder Chiou <oder_chiou@realtek.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2014-06-30 19:42:47 +01:00
Oder Chiou
f58c3b9152 ASoC: rt5677: Add a PMD case to MICBIAS1 event
The patch adds a PMD case to MICBIAS1 event.

Signed-off-by: Oder Chiou <oder_chiou@realtek.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2014-06-21 11:34:05 +01:00
Oder Chiou
80220f29d6 ASoC: rt5677: Replace the string "Gain" to "Volume"
The patch replaces the string "Gain" to "Volume".

Signed-off-by: Oder Chiou <oder_chiou@realtek.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2014-06-21 11:34:05 +01:00
Oder Chiou
1b7fd76ad9 ASoC: rt5677: Replace the string "source" to "Source"
The patch replaces the string "source" to "Source".

Signed-off-by: Oder Chiou <oder_chiou@realtek.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2014-06-21 11:34:05 +01:00
Oder Chiou
3d0c03d9c6 ASoC: rt5677: Replace the string "micbias1" to "MICBIAS1"
The patch replaces the string "micbias1" to "MICBIAS1".

Signed-off-by: Oder Chiou <oder_chiou@realtek.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2014-06-21 11:34:05 +01:00
Axel Lin
d0bdcb9181 ASoC: rt5677: Remove unneeded goto in rt5677_i2c_probe
Signed-off-by: Axel Lin <axel.lin@ingics.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2014-06-21 11:32:28 +01:00
Axel Lin
9a53581efa ASoC: rt5677: Convert to use rl6231_calc_dmic_clk
Signed-off-by: Axel Lin <axel.lin@ingics.com>
Tested-by: Oder Chiou <oder_chiou@realtek.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2014-06-16 15:58:06 +01:00
Axel Lin
30f14b439f ASoC: rt5677: Convert to use rl6231_get_clk_info
Signed-off-by: Axel Lin <axel.lin@ingics.com>
Tested-by: Oder Chiou <oder_chiou@realtek.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2014-06-16 15:58:06 +01:00
Axel Lin
c8cfbec882 ASoC: rt5677: Convert to use module_i2c_driver
Signed-off-by: Axel Lin <axel.lin@ingics.com>
Tested-by: Oder Chiou <oder_chiou@realtek.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2014-06-16 15:57:50 +01:00
Oder Chiou
0e826e8672 ASoC: add RT5677 CODEC driver
This patch adds the Realtek ALC5677 codec driver.

Signed-off-by: Oder Chiou <oder_chiou@realtek.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2014-06-01 20:18:21 +01:00