xref: /linux/include/media/i2c/tvaudio.h (revision 6fdcba32711044c35c0e1b094cbd8f3f0b4472c9)
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /*
3     tvaudio.h - definition for tvaudio inputs
4 
5     Copyright (C) 2006 Hans Verkuil (hverkuil@xs4all.nl)
6 
7 */
8 
9 #ifndef _TVAUDIO_H
10 #define _TVAUDIO_H
11 
12 /*
13  * i2c bus addresses for the chips supported by tvaudio.c
14  */
15 
16 #define I2C_ADDR_TDA8425	0x82
17 #define I2C_ADDR_TDA9840	0x84
18 #define I2C_ADDR_TDA9874	0xb0 /* also used by 9875 */
19 #define I2C_ADDR_TDA9875	0xb0
20 #define I2C_ADDR_TDA8425	0x82
21 #define I2C_ADDR_TDA9840	0x84 /* also used by TA8874Z */
22 #define I2C_ADDR_TDA985x_L	0xb4 /* also used by 9873 */
23 #define I2C_ADDR_TDA985x_H	0xb6
24 #define I2C_ADDR_TDA9874	0xb0 /* also used by 9875 */
25 #define I2C_ADDR_TEA6300	0x80 /* also used by 6320 */
26 #define I2C_ADDR_TEA6420	0x98
27 #define I2C_ADDR_PIC16C54	0x96 /* PV951 */
28 
29 /* The tvaudio module accepts the following inputs: */
30 #define TVAUDIO_INPUT_TUNER  0
31 #define TVAUDIO_INPUT_RADIO  1
32 #define TVAUDIO_INPUT_EXTERN 2
33 #define TVAUDIO_INPUT_INTERN 3
34 
35 static inline const unsigned short *tvaudio_addrs(void)
36 {
37 	static const unsigned short addrs[] = {
38 		I2C_ADDR_TDA8425   >> 1,
39 		I2C_ADDR_TEA6300   >> 1,
40 		I2C_ADDR_TEA6420   >> 1,
41 		I2C_ADDR_TDA9840   >> 1,
42 		I2C_ADDR_TDA985x_L >> 1,
43 		I2C_ADDR_TDA985x_H >> 1,
44 		I2C_ADDR_TDA9874   >> 1,
45 		I2C_ADDR_PIC16C54  >> 1,
46 		I2C_CLIENT_END
47 	};
48 
49 	return addrs;
50 }
51 
52 #endif
53