static void tsc2102_check_status(struct tsc2102_dev *dev);
/* TSC has new data for us availiable. */
-static irqreturn_t
-tsc2102_handler(int irq, void *dev_id, struct pt_regs *regs)
+static irqreturn_t tsc2102_handler(int irq, void *dev_id)
{
struct tsc2102_dev *dev = (struct tsc2102_dev *) dev_id;
spin_lock_irq(&dev->lock);
&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.
spin_unlock(&tsc.lock_sync);
}
+EXPORT_SYMBOL_GPL(tsc2102_set_volume);
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)
{
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)
{
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[] = {
spin_unlock(&tsc.lock_sync);
return 0;
}
+EXPORT_SYMBOL(tsc2102_set_rate);
/*
* Perform basic set-up with default values and power the DAC on.
spin_unlock(&tsc.lock_sync);
}
+EXPORT_SYMBOL_GPL(tsc2102_dac_power);
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)
{
clk_enable(tsc.bclk_ck);
- if (request_irq(spi->irq, tsc2102_handler, SA_SAMPLE_RANDOM |
- SA_TRIGGER_FALLING, "tsc2102", &tsc)) {
+ if (request_irq(spi->irq, tsc2102_handler, IRQF_SAMPLE_RANDOM |
+ IRQF_TRIGGER_FALLING, "tsc2102", &tsc)) {
printk(KERN_ERR "Could not allocate touchscreen IRQ!\n");
err = -EINVAL;
goto err_clk;