xref: /openbmc/linux/include/media/i2c/tvaudio.h (revision 58e16d792a6a8c6b750f637a4649967fcac853dc)
1*74ba9207SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-or-later */
2b5dcee22SMauro Carvalho Chehab /*
3b5dcee22SMauro Carvalho Chehab     tvaudio.h - definition for tvaudio inputs
4b5dcee22SMauro Carvalho Chehab 
5b5dcee22SMauro Carvalho Chehab     Copyright (C) 2006 Hans Verkuil (hverkuil@xs4all.nl)
6b5dcee22SMauro Carvalho Chehab 
7b5dcee22SMauro Carvalho Chehab */
8b5dcee22SMauro Carvalho Chehab 
9b5dcee22SMauro Carvalho Chehab #ifndef _TVAUDIO_H
10b5dcee22SMauro Carvalho Chehab #define _TVAUDIO_H
11b5dcee22SMauro Carvalho Chehab 
121ac05163SMauro Carvalho Chehab /*
131ac05163SMauro Carvalho Chehab  * i2c bus addresses for the chips supported by tvaudio.c
141ac05163SMauro Carvalho Chehab  */
151ac05163SMauro Carvalho Chehab 
161ac05163SMauro Carvalho Chehab #define I2C_ADDR_TDA8425	0x82
171ac05163SMauro Carvalho Chehab #define I2C_ADDR_TDA9840	0x84
181ac05163SMauro Carvalho Chehab #define I2C_ADDR_TDA9874	0xb0 /* also used by 9875 */
191ac05163SMauro Carvalho Chehab #define I2C_ADDR_TDA9875	0xb0
201ac05163SMauro Carvalho Chehab #define I2C_ADDR_TDA8425	0x82
211ac05163SMauro Carvalho Chehab #define I2C_ADDR_TDA9840	0x84 /* also used by TA8874Z */
221ac05163SMauro Carvalho Chehab #define I2C_ADDR_TDA985x_L	0xb4 /* also used by 9873 */
231ac05163SMauro Carvalho Chehab #define I2C_ADDR_TDA985x_H	0xb6
241ac05163SMauro Carvalho Chehab #define I2C_ADDR_TDA9874	0xb0 /* also used by 9875 */
251ac05163SMauro Carvalho Chehab #define I2C_ADDR_TEA6300	0x80 /* also used by 6320 */
261ac05163SMauro Carvalho Chehab #define I2C_ADDR_TEA6420	0x98
271ac05163SMauro Carvalho Chehab #define I2C_ADDR_PIC16C54	0x96 /* PV951 */
28b5dcee22SMauro Carvalho Chehab 
29b5dcee22SMauro Carvalho Chehab /* The tvaudio module accepts the following inputs: */
30b5dcee22SMauro Carvalho Chehab #define TVAUDIO_INPUT_TUNER  0
31b5dcee22SMauro Carvalho Chehab #define TVAUDIO_INPUT_RADIO  1
32b5dcee22SMauro Carvalho Chehab #define TVAUDIO_INPUT_EXTERN 2
33b5dcee22SMauro Carvalho Chehab #define TVAUDIO_INPUT_INTERN 3
34b5dcee22SMauro Carvalho Chehab 
tvaudio_addrs(void)35b5dcee22SMauro Carvalho Chehab static inline const unsigned short *tvaudio_addrs(void)
36b5dcee22SMauro Carvalho Chehab {
37b5dcee22SMauro Carvalho Chehab 	static const unsigned short addrs[] = {
38b5dcee22SMauro Carvalho Chehab 		I2C_ADDR_TDA8425   >> 1,
39b5dcee22SMauro Carvalho Chehab 		I2C_ADDR_TEA6300   >> 1,
40b5dcee22SMauro Carvalho Chehab 		I2C_ADDR_TEA6420   >> 1,
41b5dcee22SMauro Carvalho Chehab 		I2C_ADDR_TDA9840   >> 1,
42b5dcee22SMauro Carvalho Chehab 		I2C_ADDR_TDA985x_L >> 1,
43b5dcee22SMauro Carvalho Chehab 		I2C_ADDR_TDA985x_H >> 1,
44b5dcee22SMauro Carvalho Chehab 		I2C_ADDR_TDA9874   >> 1,
45b5dcee22SMauro Carvalho Chehab 		I2C_ADDR_PIC16C54  >> 1,
46b5dcee22SMauro Carvalho Chehab 		I2C_CLIENT_END
47b5dcee22SMauro Carvalho Chehab 	};
48b5dcee22SMauro Carvalho Chehab 
49b5dcee22SMauro Carvalho Chehab 	return addrs;
50b5dcee22SMauro Carvalho Chehab }
51b5dcee22SMauro Carvalho Chehab 
52b5dcee22SMauro Carvalho Chehab #endif
53