소스 검색

V4L/DVB (9438): Bug! RTF is signed

Signed-off-by: Arvo Jarve <arvo@softshark.ee>
Signed-off-by: Manu Abraham <manu@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Arvo Jarve 17 년 전
부모
커밋
eadf29b941
1개의 변경된 파일3개의 추가작업 그리고 2개의 파일을 삭제
  1. 3 2
      drivers/media/dvb/frontends/stb0899_algo.c

+ 3 - 2
drivers/media/dvb/frontends/stb0899_algo.c

@@ -194,8 +194,9 @@ static void stb0899_first_subrange(struct stb0899_state *state)
 static enum stb0899_status stb0899_check_tmg(struct stb0899_state *state)
 static enum stb0899_status stb0899_check_tmg(struct stb0899_state *state)
 {
 {
 	struct stb0899_internal *internal = &state->internal;
 	struct stb0899_internal *internal = &state->internal;
-	int lock, timing;
+	int lock;
 	u8 reg;
 	u8 reg;
+	s8 timing;
 
 
 	msleep(internal->t_timing);
 	msleep(internal->t_timing);
 
 
@@ -207,7 +208,7 @@ static enum stb0899_status stb0899_check_tmg(struct stb0899_state *state)
 	timing = stb0899_read_reg(state, STB0899_RTF);
 	timing = stb0899_read_reg(state, STB0899_RTF);
 
 
 	if (lock >= 42) {
 	if (lock >= 42) {
-		if ((lock > 48) && (timing >= 110)) {
+		if ((lock > 48) && (ABS(timing) >= 110)) {
 			internal->status = ANALOGCARRIER;
 			internal->status = ANALOGCARRIER;
 			dprintk(state->verbose, FE_DEBUG, 1, "-->ANALOG Carrier !");
 			dprintk(state->verbose, FE_DEBUG, 1, "-->ANALOG Carrier !");
 		} else {
 		} else {