lkml.org 
[lkml]   [2008]   [Jul]   [22]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
FromHans Verkuil <>
SubjectRe: [PATCH 3/9] ivtv: test below 0 on unsigned has_ir
DateTue, 22 Jul 2008 06:50:43 +0200
On Tuesday 22 July 2008 02:29:08 roel kluin wrote:
> u32 has_ir, member of struct tveeprom is unsigned,
> so assignment of -1 and subsequent tests fail

Thank you for this report, but I'm going to NAK this patch. I will take 
a closer look at this tonight and I will make a new patch for this. 
First to take care of the FIXME that's just before the first change 
below and secondly I'll see if it isn't better to change has_ir to an 
int: I don't like using ~0 like this.

So expect to see a new patch later today.

Regards,

	Hans

>
> Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
> ---
>
> diff --git a/drivers/media/video/ivtv/ivtv-driver.c
> b/drivers/media/video/ivtv/ivtv-driver.c index 797e636..7d909f9
> 100644
> --- a/drivers/media/video/ivtv/ivtv-driver.c
> +++ b/drivers/media/video/ivtv/ivtv-driver.c
> @@ -465,7 +465,7 @@ static void ivtv_process_eeprom(struct ivtv *itv)
>  		itv->options.radio = (tv.has_radio != 0);
>  	/* only enable newi2c if an IR blaster is present */
>  	/* FIXME: for 2.6.20 the test against 2 should be removed */
> -	if (itv->options.newi2c == -1 && tv.has_ir != -1 && tv.has_ir != 2)
> { +	if (itv->options.newi2c == -1 && tv.has_ir != ~0 && tv.has_ir !=
> 2) { itv->options.newi2c = (tv.has_ir & 2) ? 1 : 0;
>  		if (itv->options.newi2c) {
>  		    IVTV_INFO("Reopen i2c bus for IR-blaster support\n");
> diff --git a/drivers/media/video/tveeprom.c
> b/drivers/media/video/tveeprom.c index 9da0e18..41c22a7 100644
> --- a/drivers/media/video/tveeprom.c
> +++ b/drivers/media/video/tveeprom.c
> @@ -483,7 +483,7 @@ void tveeprom_hauppauge_analog(struct i2c_client
> *c, struct tveeprom *tvee, tvee->has_radio = eeprom_data[i+len-1];
>  			/* old style tag, don't know how to detect
>  			IR presence, mark as unknown. */
> -			tvee->has_ir = -1;
> +			tvee->has_ir = ~0;
>  			tvee->model =
>  				eeprom_data[i+8] +
>  				(eeprom_data[i+9] << 8);
> @@ -703,7 +703,7 @@ void tveeprom_hauppauge_analog(struct i2c_client
> *c, struct tveeprom *tvee, tveeprom_info("decoder processor is %s
> (idx %d)\n",
>  			STRM(decoderIC, tvee->decoder_processor),
>  			tvee->decoder_processor);
> -	if (tvee->has_ir == -1)
> +	if (tvee->has_ir == ~0)
>  		tveeprom_info("has %sradio\n",
>  				tvee->has_radio ? "" : "no ");
>  	else




\
 
 \ /
  Last update: 2008-07-22 06:55    [from the cache]
©2003-2008