Messages in this thread | | | From | Hans Verkuil <> | Subject | Re: [PATCH 3/9] ivtv: test below 0 on unsigned has_ir | Date | Tue, 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
| |