aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStephen Warren <swarren@nvidia.com>2011-02-22 19:23:56 -0500
committerMark Brown <broonie@opensource.wolfsonmicro.com>2011-02-25 06:44:46 -0500
commita3cd50deef7ba7df506af5347764a00b4621d7a7 (patch)
tree91233c2918ed32cbfc1defcc218e15e6da7ec7f0
parent67f5ed6e716bf9b574c8cbe04765171de5d4d0fe (diff)
ASoC: Tegra: Move utilities to separate module
The utilities will be required by every machine driver. Including the utility object directly into every machine driver causes a build failure if the modules are actually built into the kernel, since each will define the symbols exported by the utility file. Solve this by moving the utility object into a separate module. Signed-off-by: Stephen Warren <swarren@nvidia.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
-rw-r--r--sound/soc/tegra/Makefile3
-rw-r--r--sound/soc/tegra/tegra_asoc_utils.c6
2 files changed, 8 insertions, 1 deletions
diff --git a/sound/soc/tegra/Makefile b/sound/soc/tegra/Makefile
index dfd2ab9d975c..fd183d3ab4f1 100644
--- a/sound/soc/tegra/Makefile
+++ b/sound/soc/tegra/Makefile
@@ -2,13 +2,14 @@
2snd-soc-tegra-das-objs := tegra_das.o 2snd-soc-tegra-das-objs := tegra_das.o
3snd-soc-tegra-pcm-objs := tegra_pcm.o 3snd-soc-tegra-pcm-objs := tegra_pcm.o
4snd-soc-tegra-i2s-objs := tegra_i2s.o 4snd-soc-tegra-i2s-objs := tegra_i2s.o
5snd-soc-tegra-utils-objs += tegra_asoc_utils.o
5 6
7obj-$(CONFIG_SND_TEGRA_SOC) += snd-soc-tegra-utils.o
6obj-$(CONFIG_SND_TEGRA_SOC) += snd-soc-tegra-das.o 8obj-$(CONFIG_SND_TEGRA_SOC) += snd-soc-tegra-das.o
7obj-$(CONFIG_SND_TEGRA_SOC) += snd-soc-tegra-pcm.o 9obj-$(CONFIG_SND_TEGRA_SOC) += snd-soc-tegra-pcm.o
8obj-$(CONFIG_SND_TEGRA_SOC_I2S) += snd-soc-tegra-i2s.o 10obj-$(CONFIG_SND_TEGRA_SOC_I2S) += snd-soc-tegra-i2s.o
9 11
10# Tegra machine Support 12# Tegra machine Support
11snd-soc-tegra-harmony-objs := harmony.o 13snd-soc-tegra-harmony-objs := harmony.o
12snd-soc-tegra-harmony-objs += tegra_asoc_utils.o
13 14
14obj-$(CONFIG_SND_TEGRA_SOC_HARMONY) += snd-soc-tegra-harmony.o 15obj-$(CONFIG_SND_TEGRA_SOC_HARMONY) += snd-soc-tegra-harmony.o
diff --git a/sound/soc/tegra/tegra_asoc_utils.c b/sound/soc/tegra/tegra_asoc_utils.c
index cb4fc13c7d22..52f0a3f9ce40 100644
--- a/sound/soc/tegra/tegra_asoc_utils.c
+++ b/sound/soc/tegra/tegra_asoc_utils.c
@@ -101,6 +101,7 @@ int tegra_asoc_utils_set_rate(struct tegra_asoc_utils_data *data, int srate,
101 101
102 return 0; 102 return 0;
103} 103}
104EXPORT_SYMBOL_GPL(tegra_asoc_utils_set_rate);
104 105
105int tegra_asoc_utils_init(struct tegra_asoc_utils_data *data, 106int tegra_asoc_utils_init(struct tegra_asoc_utils_data *data,
106 struct device *dev) 107 struct device *dev)
@@ -139,6 +140,7 @@ err_put_pll_a:
139err: 140err:
140 return ret; 141 return ret;
141} 142}
143EXPORT_SYMBOL_GPL(tegra_asoc_utils_init);
142 144
143void tegra_asoc_utils_fini(struct tegra_asoc_utils_data *data) 145void tegra_asoc_utils_fini(struct tegra_asoc_utils_data *data)
144{ 146{
@@ -146,4 +148,8 @@ void tegra_asoc_utils_fini(struct tegra_asoc_utils_data *data)
146 clk_put(data->clk_pll_a_out0); 148 clk_put(data->clk_pll_a_out0);
147 clk_put(data->clk_pll_a); 149 clk_put(data->clk_pll_a);
148} 150}
151EXPORT_SYMBOL_GPL(tegra_asoc_utils_fini);
149 152
153MODULE_AUTHOR("Stephen Warren <swarren@nvidia.com>");
154MODULE_DESCRIPTION("Tegra ASoC utility code");
155MODULE_LICENSE("GPL");