1#ifndef __INCLUDED_TEA6415C__
2#define __INCLUDED_TEA6415C__
3
4/* possible i2c-addresses */
5#define	I2C_TEA6415C_1		0x03
6#define	I2C_TEA6415C_2		0x43
7
8/* the tea6415c's design is quite brain-dead. although there are
9   8 inputs and 6 outputs, these aren't enumerated in any way. because
10   I don't want to say "connect input pin 20 to output pin 17", I define
11   a "virtual" pin-order. */
12
13/* input pins */
14#define TEA6415C_OUTPUT1 18
15#define TEA6415C_OUTPUT2 14
16#define TEA6415C_OUTPUT3 16
17#define TEA6415C_OUTPUT4 17
18#define TEA6415C_OUTPUT5 13
19#define TEA6415C_OUTPUT6 15
20
21/* output pins */
22#define TEA6415C_INPUT1 5
23#define TEA6415C_INPUT2 8
24#define TEA6415C_INPUT3 3
25#define TEA6415C_INPUT4 20
26#define TEA6415C_INPUT5 6
27#define TEA6415C_INPUT6 10
28#define TEA6415C_INPUT7 1
29#define TEA6415C_INPUT8 11
30
31struct tea6415c_multiplex
32{
33	int	in;	/* input-pin */
34	int	out;	/* output-pin */
35};
36
37#define TEA6415C_SWITCH		_IOW('v',1,struct tea6415c_multiplex)
38
39#endif
40