xref: /haiku/src/add-ons/kernel/drivers/audio/echo/generic/family.h (revision 4f00613311d0bd6b70fa82ce19931c41f071ea4e)
1 //********************************************************************************
2 //
3 // family.h
4 //
5 // This header file deals with variations between the different families of
6 // products.  Current families:
7 //
8 //  Echogals - Darla20, Gina20, Layla20, and Darla24
9 //  Echo24 - 	Gina24, Layla24, Mona, Mia, and Mia MIDI
10 //  Indigo - 	Indigo, Indigo io, and Indigo dj
11 //  3G -			Gina3G, Layla3G
12 //
13 //----------------------------------------------------------------------------
14 //
15 // This file is part of Echo Digital Audio's generic driver library.
16 // Copyright Echo Digital Audio Corporation (c) 1998 - 2005
17 // All rights reserved
18 // www.echoaudio.com
19 //
20 // This library is free software; you can redistribute it and/or
21 // modify it under the terms of the GNU Lesser General Public
22 // License as published by the Free Software Foundation; either
23 // version 2.1 of the License, or (at your option) any later version.
24 //
25 // This library is distributed in the hope that it will be useful,
26 // but WITHOUT ANY WARRANTY; without even the implied warranty of
27 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
28 // Lesser General Public License for more details.
29 //
30 // You should have received a copy of the GNU Lesser General Public
31 // License along with this library; if not, write to the Free Software
32 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
33 //
34 //********************************************************************************
35 
36 #ifndef _FAMILY_H_
37 #define _FAMILY_H_
38 
39 //===========================================================================
40 //
41 // Echogals
42 //
43 // To build an Echogals driver, make sure and #define ECHOGALS_FAMILY
44 //
45 //===========================================================================
46 
47 #ifdef ECHOGALS_FAMILY
48 
49 #define MIDI_SUPPORT
50 
51 #define READ_DSP_TIMEOUT		1000000L		// one second
52 #define MIN_MTC_1X_RATE			8000
53 
54 #endif // ECHOGALS_FAMILY
55 
56 
57 //===========================================================================
58 //
59 // Echo24
60 //
61 // To build an Echo24 driver, make sure and #define ECHO24_FAMILY
62 //
63 //===========================================================================
64 
65 #ifdef ECHO24_FAMILY
66 
67 #define MIDI_SUPPORT
68 
69 #define DSP_56361									// Some Echo24 cards use the 56361 DSP
70 
71 #define READ_DSP_TIMEOUT						100000L	// .1 second
72 
73 #define STEREO_BIG_ENDIAN32_SUPPORT
74 
75 #define LAYLA24_CARD_NAME			"Layla24"
76 #define LAYLA24_DSP_CODE			pwLayla24DSP
77 #define LAYLA24_HAS_VMIXER			FALSE
78 #define LAYLA24_2ASIC_FILENAME	"Layla24_2S_ASIC.c"
79 #define LAYLA24_DSP_FILENAME           "Layla24DSP.c"
80 
81 #define MIN_MTC_1X_RATE							8000
82 
83 #endif // ECHO24_FAMILY
84 
85 
86 
87 
88 //===========================================================================
89 //
90 // Indigo, Indigo IO, and Indigo DJ
91 //
92 // To build an Indigo driver, make sure and #define INDIGO_FAMILY
93 //
94 //===========================================================================
95 
96 #ifdef INDIGO_FAMILY
97 
98 #define DSP_56361								// Indigo only uses the 56361
99 
100 #define READ_DSP_TIMEOUT		100000L	// .1 second
101 
102 #define STEREO_BIG_ENDIAN32_SUPPORT
103 
104 #endif // INDIGO_FAMILY
105 
106 
107 //===========================================================================
108 //
109 // 3G
110 //
111 //===========================================================================
112 
113 #ifdef ECHO3G_FAMILY
114 
115 #define MIDI_SUPPORT
116 
117 #define DSP_56361									// Some Echo24 cards use the 56361 DSP
118 
119 #define READ_DSP_TIMEOUT						100000L	// .1 second
120 
121 #define STEREO_BIG_ENDIAN32_SUPPORT
122 #define PHANTOM_POWER_CONTROL
123 
124 #define MIN_MTC_1X_RATE							32000
125 
126 #endif // ECHO3G_FAMILY
127 
128 
129 #endif // _FAMILY_H_
130