Browse Source

[PATCH] dvb: nxt200x: Add function for nxt200x to change pll input

- Added function for nxt200x to change pll input
- For VSB set to input 0, for QAM set to input 1
- will only be set for cards that have set_pll_input defined

Signed-off-by: Kirk Lapray <kirk.lapray@gmail.com>
Signed-off-by: Michael Krufky <mkrufky@m1k.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Kirk Lapray 20 years ago
parent
commit
cc952d03c0
2 changed files with 10 additions and 2 deletions
  1. 7 2
      drivers/media/dvb/frontends/nxt200x.c
  2. 3 0
      drivers/media/dvb/frontends/nxt200x.h

+ 7 - 2
drivers/media/dvb/frontends/nxt200x.c

@@ -556,13 +556,18 @@ static int nxt200x_setup_frontend_parameters (struct dvb_frontend* fe,
 			if (state->config->set_ts_params)
 				state->config->set_ts_params(fe, 1);
 
-			/* set to use cable input */
-			buf[3] |= 0x08;
+			/* set input */
+			if (state->config->set_pll_input)
+				state->config->set_pll_input(buf, 1);
 			break;
 		case VSB_8:
 			/* Set non-punctured clock for VSB */
 			if (state->config->set_ts_params)
 				state->config->set_ts_params(fe, 0);
+
+			/* set input */
+			if (state->config->set_pll_input)
+				state->config->set_pll_input(buf, 0);
 			break;
 		default:
 			return -EINVAL;

+ 3 - 0
drivers/media/dvb/frontends/nxt200x.h

@@ -42,6 +42,9 @@ struct nxt200x_config
 	u8 pll_address;
 	struct dvb_pll_desc *pll_desc;
 
+	/* used to set pll input */
+	int (*set_pll_input)(u8* buf, int input);
+
 	/* need to set device param for start_dma */
 	int (*set_ts_params)(struct dvb_frontend* fe, int is_punctured);
 };