summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/lm32/shared/milkymist_ac97/milkymist_ac97.h
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2011-08-01 13:48:40 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2011-08-01 13:48:40 +0000
commitdce1032b6cdc2cd3c4e6b0ca3695aca6558c56c3 (patch)
treee485d78b238db7255395470e037305af8b8a642c /c/src/lib/libbsp/lm32/shared/milkymist_ac97/milkymist_ac97.h
parent2011-08-01 Jennifer Averett <Jennifer.Averett@OARcorp.com> (diff)
downloadrtems-dce1032b6cdc2cd3c4e6b0ca3695aca6558c56c3.tar.bz2
2011-08-01 Sebastien Bourdeauducq <sebastien.bourdeauducq@gmail.com>
PR 1869/bsps * startup/bspclean.c: New file. * include/tm27.h: Removed. * ChangeLog, Makefile.am, README, preinstall.am, include/bsp.h, include/system_conf.h, make/custom/milkymist.cfg, startup/linkcmds: Complete BSP for Milkymist One supporting Milkymist SOC 1.0.x. Includes new or updated drivers for: - Multi-standard video input (PAL/SECAM/NTSC) - Two DMX512 (RS485) ports - MIDI IN and MIDI OUT ports - VGA output - AC'97 audio - NOR flash - 10/100 Ethernet - Memory card (experimental and incomplete) - USB host connectors (input devices only) - RC5 infrared receiver - RS232 debug port
Diffstat (limited to 'c/src/lib/libbsp/lm32/shared/milkymist_ac97/milkymist_ac97.h')
-rw-r--r--c/src/lib/libbsp/lm32/shared/milkymist_ac97/milkymist_ac97.h63
1 files changed, 63 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/lm32/shared/milkymist_ac97/milkymist_ac97.h b/c/src/lib/libbsp/lm32/shared/milkymist_ac97/milkymist_ac97.h
new file mode 100644
index 0000000000..a13a0481ee
--- /dev/null
+++ b/c/src/lib/libbsp/lm32/shared/milkymist_ac97/milkymist_ac97.h
@@ -0,0 +1,63 @@
+/* milkymist_ac97.h
+ *
+ * Milkymist AC97 driver for RTEMS
+ *
+ * The license and distribution terms for this file may be
+ * found in the file LICENSE in this distribution or at
+ * http://www.rtems.com/license/LICENSE.
+ *
+ * $Id$
+ *
+ * COPYRIGHT (c) 2010 Sebastien Bourdeauducq
+ */
+
+#ifndef __MILKYMIST_AC97_H_
+#define __MILKYMIST_AC97_H_
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* Ioctls. 0x41 is 'A' */
+#define SOUND_MIXER_MIC 0x0
+#define SOUND_MIXER_LINE 0x1
+#define SOUND_MIXER_READ(x) (0x4100+x)
+#define SOUND_MIXER_WRITE(x) (0x4110+x)
+
+#define SOUND_SND_SUBMIT_PLAY 0x4120
+#define SOUND_SND_COLLECT_PLAY 0x4121
+#define SOUND_SND_SUBMIT_RECORD 0x4122
+#define SOUND_SND_COLLECT_RECORD 0x4123
+
+struct snd_buffer {
+ unsigned int nsamples;
+ void *user;
+ unsigned int samples[];
+};
+
+rtems_device_driver ac97_initialize(
+ rtems_device_major_number major,
+ rtems_device_minor_number minor,
+ void *arg
+);
+
+rtems_device_driver ac97_open(
+ rtems_device_major_number major,
+ rtems_device_minor_number minor,
+ void *arg
+);
+
+rtems_device_driver ac97_control(
+ rtems_device_major_number major,
+ rtems_device_minor_number minor,
+ void *arg
+);
+
+#define AC97_DRIVER_TABLE_ENTRY {ac97_initialize, \
+ac97_open, NULL, NULL, NULL, ac97_control}
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __MILKYMIST_AC97_H_ */