summaryrefslogtreecommitdiffstats
path: root/include/media/i2c/m52790.h
blob: 7ddffae31a67bc3047b4b796200b1829fc1f186a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
/*
    m52790.h - definition for m52790 inputs and outputs

    Copyright (C) 2007 Hans Verkuil (hverkuil@xs4all.nl)

    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 2 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/

#ifndef _M52790_H_
#define _M52790_H_

/* Input routing switch 1 */

#define M52790_SW1_IN_MASK 	0x0003
#define M52790_SW1_IN_TUNER 	0x0000
#define M52790_SW1_IN_V2    	0x0001
#define M52790_SW1_IN_V3    	0x0002
#define M52790_SW1_IN_V4    	0x0003

/* Selects component input instead of composite */
#define M52790_SW1_YCMIX    	0x0004


/* Input routing switch 2 */

#define M52790_SW2_IN_MASK 	0x0300
#define M52790_SW2_IN_TUNER 	0x0000
#define M52790_SW2_IN_V2    	0x0100
#define M52790_SW2_IN_V3    	0x0200
#define M52790_SW2_IN_V4    	0x0300

/* Selects component input instead of composite */
#define M52790_SW2_YCMIX    	0x0400


/* Output routing switch 1 */

/* Enable 6dB amplifier for composite out */
#define M52790_SW1_V_AMP    	0x0008

/* Enable 6dB amplifier for component out */
#define M52790_SW1_YC_AMP   	0x0010

/* Audio output mode */
#define M52790_SW1_AUDIO_MASK 	0x00c0
#define M52790_SW1_AUDIO_MUTE 	0x0000
#define M52790_SW1_AUDIO_R 	0x0040
#define M52790_SW1_AUDIO_L 	0x0080
#define M52790_SW1_AUDIO_STEREO 0x00c0


/* Output routing switch 2 */

/* Enable 6dB amplifier for composite out */
#define M52790_SW2_V_AMP    	0x0800

/* Enable 6dB amplifier for component out */
#define M52790_SW2_YC_AMP   	0x1000

/* Audio output mode */
#define M52790_SW2_AUDIO_MASK 	0xc000
#define M52790_SW2_AUDIO_MUTE 	0x0000
#define M52790_SW2_AUDIO_R 	0x4000
#define M52790_SW2_AUDIO_L 	0x8000
#define M52790_SW2_AUDIO_STEREO 0xc000


/* Common values */
#define M52790_IN_TUNER (M52790_SW1_IN_TUNER | M52790_SW2_IN_TUNER)
#define M52790_IN_V2    (M52790_SW1_IN_V2 | M52790_SW2_IN_V2)
#define M52790_IN_V3    (M52790_SW1_IN_V3 | M52790_SW2_IN_V3)
#define M52790_IN_V4    (M52790_SW1_IN_V4 | M52790_SW2_IN_V4)

#define M52790_OUT_STEREO 	(M52790_SW1_AUDIO_STEREO | \
				 M52790_SW2_AUDIO_STEREO)
#define M52790_OUT_AMP_STEREO 	(M52790_SW1_AUDIO_STEREO | \
				 M52790_SW1_V_AMP | \
				 M52790_SW2_AUDIO_STEREO | \
				 M52790_SW2_V_AMP)

#endif