/* SPDX-License-Identifier: GPL-2.0-or-later */
/*
    m52790.h - definition for m52790 inputs and outputs

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

*/

#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