blob: 717544af58adae1104cc9aee89b3afd90812e782 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#ifndef AU88X0_EQ_H
2#define AU88X0_EQ_H
3
4/***************************************************************************
5 * au88x0_eq.h
6 *
7 * Definitions and constant data for the Aureal Hardware EQ.
8 *
9 * Sun Jun 8 18:23:38 2003
10 * Author: Manuel Jander (mjander@users.sourceforge.net)
11 ****************************************************************************/
12
13typedef struct {
14 u16 LeftCoefs[50]; //0x4
15 u16 RightCoefs[50]; // 0x68
16 u16 LeftGains[20]; //0xd0
17 u16 RightGains[20]; //0xe4
18} auxxEqCoeffSet_t;
19
20typedef struct {
Takashi Iwai97c67b62006-01-13 17:16:29 +010021 u32 ptr_this00; /*CAsp4HwIO */
22 s32 this04; /* How many filters for each side (default = 10) */
23 s32 this08; /* inited to cero. Stereo flag? */
Linus Torvalds1da177e2005-04-16 15:20:36 -070024} eqhw_t;
25
26typedef struct {
Takashi Iwai97c67b62006-01-13 17:16:29 +010027 u32 ptr_this00; /*CAsp4Core */
Linus Torvalds1da177e2005-04-16 15:20:36 -070028 eqhw_t this04; /* CHwEq */
Takashi Iwai97c67b62006-01-13 17:16:29 +010029 u16 this08; /* Bad codec flag ? SetBypassGain: bypass gain */
30 u16 this0a;
31 u16 this0c; /* SetBypassGain: bypass gain when this28 is not set. */
32 u16 this0e;
Linus Torvalds1da177e2005-04-16 15:20:36 -070033
Takashi Iwai97c67b62006-01-13 17:16:29 +010034 s32 this10; /* How many gains are used for each side (right or left). */
35 u16 this14_array[32]; /* SetLeftGainsTarget: Left (and right?) EQ gains */
36 s32 this24;
37 s32 this28; /* flag related to EQ enabled or not. Gang flag ? */
38 s32 this54; /* SetBypass */
39 s32 this58;
40 s32 this5c;
Linus Torvalds1da177e2005-04-16 15:20:36 -070041 /*0x60 */ auxxEqCoeffSet_t coefset;
42 /* 50 u16 word each channel. */
43 u16 this130[20]; /* Left and Right gains */
44} eqlzr_t;
45
46#endif