]> pilppa.com Git - linux-2.6-omap-h63xx.git/commitdiff
tsc2102-alsa build fixes
authorDavid Brownell <david-b@pacbell.net>
Wed, 23 May 2007 05:34:05 +0000 (22:34 -0700)
committerTony Lindgren <tony@atomide.com>
Fri, 25 May 2007 00:37:11 +0000 (17:37 -0700)
Various fixes needed to build the tsc2102 audio.  Several fixes
relate specifically to building it as a module.

Note that this doesn't address the need for omap-alsa-dma.c
to go into a separate module so that e.g. tsc2101 and tsc2102
modules can both be built, or the assumption that the audio
is going out over McBSP not EAC.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
drivers/spi/tsc2102.c
include/linux/spi/tsc2102.h
sound/arm/omap/omap-alsa-tsc2102.c
sound/arm/omap/omap-alsa-tsc2102.h

index 130b1c22dabd00b29f0b564261ea428fdc4339d9..59171cac73fe901abe0bbbfb67c196c96e0f17de 100644 (file)
@@ -583,7 +583,8 @@ static void tsc2102_pressure(unsigned long data)
                        &dev->adc_status, tsc2102_pressure_report);
 }
 
-#ifdef CONFIG_SOUND
+#if defined(CONFIG_SND_OMAP_TSC2102) || defined(CONFIG_SND_OMAP_TSC2102_MODULE)
+
 /*
  * Volume level values should be in the range [0, 127].
  * Higher values mean lower volume.
@@ -607,6 +608,7 @@ void tsc2102_set_volume(uint8_t left_ch, uint8_t right_ch)
 
        spin_unlock(&tsc.lock_sync);
 }
+EXPORT_SYMBOL_GPL(tsc2102_set_volume);
 
 void tsc2102_set_mute(int left_ch, int right_ch)
 {
@@ -622,6 +624,7 @@ void tsc2102_set_mute(int left_ch, int right_ch)
 
        spin_unlock(&tsc.lock_sync);
 }
+EXPORT_SYMBOL_GPL(tsc2102_set_mute);
 
 void tsc2102_get_mute(int *left_ch, int *right_ch)
 {
@@ -650,6 +653,7 @@ void tsc2102_set_deemphasis(int enable)
        tsc2102_write_sync(TSC2102_DAC_POWER_CTRL, val);
        spin_unlock(&tsc.lock_sync);
 }
+EXPORT_SYMBOL_GPL(tsc2102_set_deemphasis);
 
 void tsc2102_set_bassboost(int enable)
 {
@@ -665,6 +669,7 @@ void tsc2102_set_bassboost(int enable)
        tsc2102_write_sync(TSC2102_DAC_POWER_CTRL, val);
        spin_unlock(&tsc.lock_sync);
 }
+EXPORT_SYMBOL_GPL(tsc2102_set_bassboost);
 
 /*     {rate, dsor, fsref}     */
 static const struct tsc2102_rate_info_s tsc2102_rates[] = {
@@ -730,6 +735,7 @@ int tsc2102_set_rate(int rate)
        spin_unlock(&tsc.lock_sync);
        return 0;
 }
+EXPORT_SYMBOL(tsc2102_set_rate);
 
 /*
  * Perform basic set-up with default values and power the DAC on.
@@ -762,6 +768,7 @@ void tsc2102_dac_power(int state)
 
        spin_unlock(&tsc.lock_sync);
 }
+EXPORT_SYMBOL_GPL(tsc2102_dac_power);
 
 void tsc2102_set_i2s_master(int state)
 {
@@ -777,7 +784,9 @@ void tsc2102_set_i2s_master(int state)
 
        spin_unlock(&tsc.lock_sync);
 }
-#endif /* CONFIG_SOUND */
+EXPORT_SYMBOL_GPL(tsc2102_set_i2s_master);
+
+#endif /* CONFIG_SND_OMAP_TSC2101 */
 
 static int tsc2102_configure(struct tsc2102_dev *dev)
 {
index b779fb1176e771b066795f3b403d03286af413ce..be133008a6cf1bbac3bffd6b2702ba5d8d1c4db9 100644 (file)
@@ -53,7 +53,7 @@ extern int tsc2102_ports_cb(tsc2102_ports_t handler);
 extern int tsc2102_temp1_cb(tsc2102_temp_t handler);
 extern int tsc2102_temp2_cb(tsc2102_temp_t handler);
 
-#ifdef CONFIG_SOUND
+#if defined(CONFIG_SND_OMAP_TSC2102) || defined(CONFIG_SND_OMAP_TSC2102_MODULE)
 extern void tsc2102_set_volume(uint8_t left_ch, uint8_t right_ch);
 extern void tsc2102_set_mute(int left_ch, int right_ch);
 extern void tsc2102_get_mute(int *left_ch, int *right_ch);
index 2e1643a98eda43e625fce08560010bd74b8e6012..1ca5ba9e95f5c2a327fb64d0d79ab1a0d1ba5d3b 100644 (file)
@@ -19,7 +19,8 @@
 #include <linux/module.h>
 #include <linux/spi/tsc2102.h>
 
-#include <asm/arch/mcbsp.h>
+#include <asm/io.h>
+
 #include <asm/arch/dma.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/omap-alsa.h>
index c4b34f85e4e20a4f0a0e16f6e1679d2d392f36ae..cee2839a644d16af28693ee2f805f84db91133b1 100644 (file)
@@ -26,8 +26,9 @@
 #endif
 
 #define DEFAULT_SAMPLE_RATE            44100
+
+/* FIXME codec clock rate is board-specific */
 #define CODEC_CLOCK                    12000000
-#define AUDIO_MCBSP                    OMAP_MCBSP1
 
 /*
  * ALSA mixer related macros