summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormattis fjallstrom <mattis@acm.org>2016-01-28 12:47:19 -0800
committermattis fjallstrom <mattis@acm.org>2016-01-28 13:06:14 -0800
commit19989529b798a6e6fe5fa8d6dfed6b4580da63a9 (patch)
tree21bf60757c0a9be63408b66aef1b7cc0a6c34c22
parentd1294a7ffe9438c3449b4e74c381c081cc6f786e (diff)
downloadolio-linux-3.10-19989529b798a6e6fe5fa8d6dfed6b4580da63a9.tar.xz
olio-linux-3.10-19989529b798a6e6fe5fa8d6dfed6b4580da63a9.zip
Fixes for mic -> bluetooth connection. Also changed name of machine to something that can be used in a filename.
Change-Id: If7f9d2c99e758dc9c907da9a2ba6001e78242db8
-rw-r--r--arch/arm/mach-omap2/board-omap3h1.c8
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_3xxx_data.c3
-rw-r--r--sound/soc/codecs/dmic.c2
-rw-r--r--sound/soc/omap/omap3h1.c41
4 files changed, 28 insertions, 26 deletions
diff --git a/arch/arm/mach-omap2/board-omap3h1.c b/arch/arm/mach-omap2/board-omap3h1.c
index 7915962e45b..5a9e4b7cfb5 100644
--- a/arch/arm/mach-omap2/board-omap3h1.c
+++ b/arch/arm/mach-omap2/board-omap3h1.c
@@ -524,7 +524,7 @@ static const char *omap3_h1_boards_compat[] __initdata = {
NULL,
};
-DT_MACHINE_START(OMAP3_H1, "Olio OMAP3 H1 (Flattened Device Tree)")
+DT_MACHINE_START(OMAP3_H1, "Olio_OMAP3_H1_FDT")
.atag_offset = 0x100,
.reserve = omap_reserve,
.map_io = omap3_map_io,
@@ -534,11 +534,11 @@ DT_MACHINE_START(OMAP3_H1, "Olio OMAP3 H1 (Flattened Device Tree)")
.handle_irq = omap3_intc_handle_irq,
.init_machine = omap3_h1_init,
.init_late = omap3630_init_late,
- .init_time = omap3_sync32k_timer_init,
-/* .init_time = omap3_secure_sync32k_timer_init, */
+ .init_time = omap3_sync32k_timer_init,
+/* .init_time = omap3_secure_sync32k_timer_init, -our chip does not support secure- */
.dt_compat = omap3_h1_boards_compat,
.restart = omap3xxx_restart,
- MACHINE_END
+MACHINE_END
#if 0 /* removing ... for now */
MACHINE_START(OMAP3_H1, "Olio OMAP3 H1 Board")
diff --git a/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c b/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
index f9b8a4c965a..9f1ae8b2af8 100644
--- a/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
@@ -3976,7 +3976,8 @@ int __init omap3xxx_hwmod_init(void)
} else if (rev == OMAP3630_REV_ES1_0 || rev == OMAP3630_REV_ES1_1 ||
rev == OMAP3630_REV_ES1_2) {
h = omap36xx_hwmod_ocp_ifs;
- /* OLIO: We don't want these clocks running */
+ /* OLIO: We don't want these clocks running
+ since we lack the secure features of the chip. */
/* h_gp = omap36xx_gp_hwmod_ocp_ifs; */
} else {
WARN(1, "OMAP3 hwmod family init: unknown chip type\n");
diff --git a/sound/soc/codecs/dmic.c b/sound/soc/codecs/dmic.c
index 12f74fb3de7..9d1988b06dd 100644
--- a/sound/soc/codecs/dmic.c
+++ b/sound/soc/codecs/dmic.c
@@ -33,7 +33,7 @@ static struct snd_soc_dai_driver dmic_dai = {
.stream_name = "Capture",
.channels_min = 1,
.channels_max = 2,
- .rates = SNDRV_PCM_RATE_CONTINUOUS,
+ .rates = SNDRV_PCM_RATE_8000,
.formats = SNDRV_PCM_FMTBIT_S32_LE
| SNDRV_PCM_FMTBIT_S24_LE
| SNDRV_PCM_FMTBIT_S16_LE,
diff --git a/sound/soc/omap/omap3h1.c b/sound/soc/omap/omap3h1.c
index faad74810c3..65b429b5e12 100644
--- a/sound/soc/omap/omap3h1.c
+++ b/sound/soc/omap/omap3h1.c
@@ -56,6 +56,7 @@ static int omap3h1_hw_in_params(struct snd_pcm_substream *substream,
pr_info("ASoc OMAP3H1: in params params_periods=%d\n", params_periods(params));
pr_info("ASoc OMAP3H1: in params params_buffer_size=%d\n", params_buffer_size(params));
pr_info("ASoc OMAP3H1: in params params_buffer_bytes=%d\n", params_buffer_bytes(params));
+ pr_info("ASoc OMAP3H1: clockrate = %lu\n", rate);
/* Set McBSP clock to use PER_96M_FCLK */
ret = snd_soc_dai_set_sysclk(cpu_dai, OMAP_MCBSP_SYSCLK_CLKS_FCLK,
@@ -90,6 +91,7 @@ static int omap3h1_hw_out_params(struct snd_pcm_substream *substream,
pr_info("ASoc OMAP3H1: out params params_periods=%u\n", params_periods(params));
pr_info("ASoc OMAP3H1: out params params_buffer_size=%u\n", params_buffer_size(params));
pr_info("ASoc OMAP3H1: out params params_buffer_bytes=%u\n", params_buffer_bytes(params));
+ pr_info("ASoc OMAP3H1: clockrate = %lu\n", rate);
/* Set McBSP clock to use PER_96M_FCLK */
ret = snd_soc_dai_set_sysclk(cpu_dai, OMAP_MCBSP_SYSCLK_CLKS_FCLK,
@@ -100,7 +102,7 @@ static int omap3h1_hw_out_params(struct snd_pcm_substream *substream,
}
/* The BT operates on 512K freq */
- ret = snd_soc_dai_set_clkdiv(cpu_dai, OMAP_MCBSP_CLKGDV, rate/512000);
+ ret = snd_soc_dai_set_clkdiv(cpu_dai, OMAP_MCBSP_CLKGDV, 32);
if (ret < 0) {
pr_err("ASoc OMAP3H1: can't set BT clock divider\n");
return ret;
@@ -151,26 +153,26 @@ static struct snd_soc_ops omap3h1_out_ops = {
/* Digital audio interface glue - connects codec <--> CPU */
static struct snd_soc_dai_link omap3h1_dai[] = {
{
- .name = "DMIC",
- .stream_name = "DMIC Capture",
- .cpu_dai_name = "omap-mcbsp.3",
- .codec_dai_name = "dmic-hifi",
- .platform_name = "omap-pcm-audio",
- .codec_name = "dmic-codec",
- .dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF |
- SND_SOC_DAIFMT_CBS_CFS,
- .ops = &omap3h1_in_ops,
+ .name = "DMIC",
+ .stream_name = "DMIC Capture",
+ .cpu_dai_name = "omap-mcbsp.3",
+ .codec_dai_name = "dmic-hifi",
+ .platform_name = "omap-pcm-audio",
+ .codec_name = "dmic-codec",
+ .dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF |
+ SND_SOC_DAIFMT_CBS_CFS,
+ .ops = &omap3h1_in_ops,
},
{
- .name = "BT",
- .stream_name = "BT Playback",
- .cpu_dai_name = "omap-mcbsp.2",
- .codec_dai_name = "omap3h1_bt_sco-pcm",
- .platform_name = "omap-pcm-audio",
- .codec_name = "omap3h1_bt_sco",
- .dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF |
- SND_SOC_DAIFMT_CBS_CFS,
- .ops = &omap3h1_out_ops,
+ .name = "BT",
+ .stream_name = "BT Playback",
+ .cpu_dai_name = "omap-mcbsp.2",
+ .codec_dai_name = "omap3h1_bt_sco-pcm",
+ .platform_name = "omap-pcm-audio",
+ .codec_name = "omap3h1_bt_sco",
+ .dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF |
+ SND_SOC_DAIFMT_CBS_CFS,
+ .ops = &omap3h1_out_ops,
}
};
@@ -223,7 +225,6 @@ static int omap3h1_card_probe(struct platform_device *pdev)
}
gpio_direction_output(gpio, 0);
mic_gpio_enable = gpio;
-
#endif
card->dev = &pdev->dev;