xref: /haiku/src/add-ons/kernel/drivers/audio/echo/generic/family.h (revision b55a57da7173b9af0432bd3e148d03f06161d036)
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 
80 #define LAYLA24_DSP_FILENAME		"Layla24DSP.c"
81 
82 #define MIN_MTC_1X_RATE							8000
83 
84 #endif // ECHO24_FAMILY
85 
86 
87 
88 
89 //===========================================================================
90 //
91 // Indigo, Indigo IO, and Indigo DJ
92 //
93 // To build an Indigo driver, make sure and #define INDIGO_FAMILY
94 //
95 //===========================================================================
96 
97 #ifdef INDIGO_FAMILY
98 
99 #define DSP_56361								// Indigo only uses the 56361
100 
101 #define READ_DSP_TIMEOUT		100000L	// .1 second
102 
103 #define STEREO_BIG_ENDIAN32_SUPPORT
104 
105 #endif // INDIGO_FAMILY
106 
107 
108 //===========================================================================
109 //
110 // 3G
111 //
112 //===========================================================================
113 
114 #ifdef ECHO3G_FAMILY
115 
116 #define MIDI_SUPPORT
117 
118 #define DSP_56361									// Some Echo24 cards use the 56361 DSP
119 
120 #define READ_DSP_TIMEOUT						100000L	// .1 second
121 
122 #define STEREO_BIG_ENDIAN32_SUPPORT
123 #define PHANTOM_POWER_CONTROL
124 
125 #define MIN_MTC_1X_RATE							32000
126 
127 #endif // ECHO3G_FAMILY
128 
129 
130 #endif // _FAMILY_H_
131