Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 07151724 authored by Hans Verkuil's avatar Hans Verkuil Committed by Mauro Carvalho Chehab
Browse files

V4L/DVB (3702): Make msp3400 routing defines more consistent



Renamed various msp3400 routing defines to be more consistent and less
confusing. Esp. the MSP_DSP_OUT defines were confusing since it is really
a DSP input.

Signed-off-by: default avatarHans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@infradead.org>
parent ab4cecf9
Loading
Loading
Loading
Loading
+6 −6
Original line number Diff line number Diff line
@@ -973,12 +973,12 @@ audio_mux(struct bttv *btv, int input, int mute)
		   For now this is sufficient. */
		switch (input) {
		case TVAUDIO_INPUT_RADIO:
			route.input = MSP_INPUT(MSP_IN_SCART_2, MSP_IN_TUNER_1,
				    MSP_DSP_OUT_SCART, MSP_DSP_OUT_SCART);
			route.input = MSP_INPUT(MSP_IN_SCART2, MSP_IN_TUNER1,
				    MSP_DSP_IN_SCART, MSP_DSP_IN_SCART);
			break;
		case TVAUDIO_INPUT_EXTERN:
			route.input = MSP_INPUT(MSP_IN_SCART_1, MSP_IN_TUNER_1,
				    MSP_DSP_OUT_SCART, MSP_DSP_OUT_SCART);
			route.input = MSP_INPUT(MSP_IN_SCART1, MSP_IN_TUNER1,
				    MSP_DSP_IN_SCART, MSP_DSP_IN_SCART);
			break;
		case TVAUDIO_INPUT_INTERN:
			/* Yes, this is the same input as for RADIO. I doubt
@@ -986,8 +986,8 @@ audio_mux(struct bttv *btv, int input, int mute)
			   input is the BTTV_BOARD_AVERMEDIA98. I wonder how
			   that was tested. My guess is that the whole INTERN
			   input does not work. */
			route.input = MSP_INPUT(MSP_IN_SCART_2, MSP_IN_TUNER_1,
				    MSP_DSP_OUT_SCART, MSP_DSP_OUT_SCART);
			route.input = MSP_INPUT(MSP_IN_SCART2, MSP_IN_TUNER1,
				    MSP_DSP_IN_SCART, MSP_DSP_IN_SCART);
			break;
		case TVAUDIO_INPUT_TUNER:
		default:
+2 −2
Original line number Diff line number Diff line
@@ -151,8 +151,8 @@ struct em28xx_board em28xx_boards[] = {
		},{
			.type     = EM28XX_VMUX_SVIDEO,
			.vmux     = 2,
			.amux     = MSP_INPUT(MSP_IN_SCART_1, MSP_IN_TUNER_1,
					MSP_DSP_OUT_SCART, MSP_DSP_OUT_SCART),
			.amux     = MSP_INPUT(MSP_IN_SCART1, MSP_IN_TUNER1,
					MSP_DSP_IN_SCART, MSP_DSP_IN_SCART),
		}},
	},
	[EM2820_BOARD_MSI_VOX_USB_2] = {
+1 −1
Original line number Diff line number Diff line
@@ -222,7 +222,7 @@ static void video_mux(struct em28xx *dev, int index)
		if (dev->i2s_speed)
			em28xx_i2c_call_clients(dev, VIDIOC_INT_I2S_CLOCK_FREQ, &dev->i2s_speed);
		route.input = dev->ctl_ainput;
		route.output = MSP_OUTPUT(MSP_OUT_SCART1_DA);
		route.output = MSP_OUTPUT(MSP_SC_IN_DSP_SCART1);
		/* Note: this is msp3400 specific */
		em28xx_i2c_call_clients(dev, VIDIOC_INT_S_AUDIO_ROUTING, &route);
		ainput = EM28XX_AUDIO_SRC_TUNER;
+2 −2
Original line number Diff line number Diff line
@@ -856,11 +856,11 @@ static void msp34xxg_set_source(struct i2c_client *client, u16 reg, int in)
		break;
	}

	if (in == MSP_DSP_OUT_TUNER)
	if (in == MSP_DSP_IN_TUNER)
		source = (source << 8) | 0x20;
	/* the msp34x2g puts the MAIN_AVC, MAIN and AUX sources in 12, 13, 14
	   instead of 11, 12, 13. So we add one for that msp version. */
	else if (in >= MSP_DSP_OUT_MAIN_AVC && state->has_dolby_pro_logic)
	else if (in >= MSP_DSP_IN_MAIN_AVC && state->has_dolby_pro_logic)
		source = ((in + 1) << 8) | matrix;
	else
		source = (in << 8) | matrix;
+30 −30
Original line number Diff line number Diff line
@@ -80,16 +80,16 @@
 */

/* SCART input to DSP selection */
#define MSP_IN_SCART_1  	0  /* Pin SC1_IN */
#define MSP_IN_SCART_2  	1  /* Pin SC2_IN */
#define MSP_IN_SCART_3  	2  /* Pin SC3_IN */
#define MSP_IN_SCART_4  	3  /* Pin SC4_IN */
#define MSP_IN_SCART1  		0  /* Pin SC1_IN */
#define MSP_IN_SCART2  		1  /* Pin SC2_IN */
#define MSP_IN_SCART3  		2  /* Pin SC3_IN */
#define MSP_IN_SCART4  		3  /* Pin SC4_IN */
#define MSP_IN_MONO     	6  /* Pin MONO_IN */
#define MSP_IN_MUTE     	7  /* Mute DSP input */
#define MSP_SCART_TO_DSP(in) 	(in)
/* Tuner input to demodulator and DSP selection */
#define MSP_IN_TUNER_1 		0  /* Analog Sound IF input pin ANA_IN1 */
#define MSP_IN_TUNER_2  	1  /* Analog Sound IF input pin ANA_IN2 */
#define MSP_IN_TUNER1 		0  /* Analog Sound IF input pin ANA_IN1 */
#define MSP_IN_TUNER2 		1  /* Analog Sound IF input pin ANA_IN2 */
#define MSP_TUNER_TO_DSP(in) 	((in) << 3)

/* The msp has up to 5 DSP outputs, each output can independently select
@@ -109,14 +109,14 @@
   DSP. This is currently not implemented. Also not implemented is the
   multi-channel capable I2S3 input of the 44x0G. If someone can demonstrate
   a need for one of those features then additional support can be added. */
#define MSP_DSP_OUT_TUNER 	0  /* Tuner output */
#define MSP_DSP_OUT_SCART 	2  /* SCART output */
#define MSP_DSP_OUT_I2S1 	5  /* I2S1 output */
#define MSP_DSP_OUT_I2S2 	6  /* I2S2 output */
#define MSP_DSP_OUT_I2S3    	7  /* I2S3 output */
#define MSP_DSP_OUT_MAIN_AVC 	11 /* MAIN AVC processed output */
#define MSP_DSP_OUT_MAIN 	12 /* MAIN output */
#define MSP_DSP_OUT_AUX 	13 /* AUX output */
#define MSP_DSP_IN_TUNER 	0  /* Tuner DSP input */
#define MSP_DSP_IN_SCART 	2  /* SCART DSP input */
#define MSP_DSP_IN_I2S1 	5  /* I2S1 DSP input */
#define MSP_DSP_IN_I2S2 	6  /* I2S2 DSP input */
#define MSP_DSP_IN_I2S3    	7  /* I2S3 DSP input */
#define MSP_DSP_IN_MAIN_AVC 	11 /* MAIN AVC processed DSP input */
#define MSP_DSP_IN_MAIN 	12 /* MAIN DSP input */
#define MSP_DSP_IN_AUX 		13 /* AUX DSP input */
#define MSP_DSP_TO_MAIN(in)   	((in) << 4)
#define MSP_DSP_TO_AUX(in)    	((in) << 8)
#define MSP_DSP_TO_SCART1(in) 	((in) << 12)
@@ -125,16 +125,16 @@

/* Output SCART select: the SCART outputs can select which input
   to use. */
#define MSP_OUT_SCART1 		0  /* SCART1 input, bypassing the DSP */
#define MSP_OUT_SCART2 		1  /* SCART2 input, bypassing the DSP */
#define MSP_OUT_SCART3 		2  /* SCART3 input, bypassing the DSP */
#define MSP_OUT_SCART4 		3  /* SCART4 input, bypassing the DSP */
#define MSP_OUT_SCART1_DA 	4  /* DSP SCART1 output */
#define MSP_OUT_SCART2_DA 	5  /* DSP SCART2 output */
#define MSP_OUT_MONO 		6  /* MONO input, bypassing the DSP */
#define MSP_OUT_MUTE 		7  /* MUTE output */
#define MSP_OUT_TO_SCART1(in)   	(in)
#define MSP_OUT_TO_SCART2(in)   	((in) << 4)
#define MSP_SC_IN_SCART1 	0  /* SCART1 input, bypassing the DSP */
#define MSP_SC_IN_SCART2 	1  /* SCART2 input, bypassing the DSP */
#define MSP_SC_IN_SCART3 	2  /* SCART3 input, bypassing the DSP */
#define MSP_SC_IN_SCART4 	3  /* SCART4 input, bypassing the DSP */
#define MSP_SC_IN_DSP_SCART1 	4  /* DSP SCART1 input */
#define MSP_SC_IN_DSP_SCART2 	5  /* DSP SCART2 input */
#define MSP_SC_IN_MONO 		6  /* MONO input, bypassing the DSP */
#define MSP_SC_IN_MUTE 		7  /* MUTE output */
#define MSP_SC_TO_SCART1(in)	(in)
#define MSP_SC_TO_SCART2(in)	((in) << 4)

/* Shortcut macros */
#define MSP_INPUT(sc, t, main_aux_src, sc_i2s_src) \
@@ -145,14 +145,14 @@
	 MSP_DSP_TO_SCART1(sc_i2s_src) | \
	 MSP_DSP_TO_SCART2(sc_i2s_src) | \
	 MSP_DSP_TO_I2S(sc_i2s_src))
#define MSP_INPUT_DEFAULT MSP_INPUT(MSP_IN_SCART_1, MSP_IN_TUNER_1, \
				    MSP_DSP_OUT_TUNER, MSP_DSP_OUT_TUNER)
#define MSP_INPUT_DEFAULT MSP_INPUT(MSP_IN_SCART1, MSP_IN_TUNER1, \
				    MSP_DSP_IN_TUNER, MSP_DSP_IN_TUNER)
#define MSP_OUTPUT(sc) \
	(MSP_OUT_TO_SCART1(sc) | \
	 MSP_OUT_TO_SCART2(sc))
	(MSP_SC_TO_SCART1(sc) | \
	 MSP_SC_TO_SCART2(sc))
/* This equals the RESET position of the msp3400 ACB register */
#define MSP_OUTPUT_DEFAULT (MSP_OUT_TO_SCART1(MSP_OUT_SCART3) | \
			    MSP_OUT_TO_SCART2(MSP_OUT_SCART1_DA))
#define MSP_OUTPUT_DEFAULT (MSP_SC_TO_SCART1(MSP_SC_IN_SCART3) | \
			    MSP_SC_TO_SCART2(MSP_SC_IN_DSP_SCART1))

/* Tuner inputs vs. msp version */
/* Chip      TUNER_1   TUNER_2