1 #ifndef __INCLUDED_TEA6415C__
2 #define __INCLUDED_TEA6415C__
4 /* possible i2c-addresses */
5 #define I2C_TEA6415C_1 0x03
6 #define I2C_TEA6415C_2 0x43
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. */
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
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
31 struct tea6415c_multiplex
33 int in; /* input-pin */
34 int out; /* output-pin */
37 #define TEA6415C_SWITCH _IOW('v',1,struct tea6415c_multiplex)