Re: Warning in cx24110: how to fix?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue 22 May 2012 13:06:25 Andy Walls wrote:
> Hans Verkuil <hverkuil@xxxxxxxxx> wrote
> 
> >I'm getting this warning in the daily build:
> >
> >v4l-dvb-git/drivers/media/dvb/frontends/cx24110.c: In function
> >‘cx24110_read_ucblocks’:
> >v4l-dvb-git/drivers/media/dvb/frontends/cx24110.c:520:40: warning:
> >value computed is not used [-Wunused-value]
> >
> >It comes from this code:
> >
> >static int cx24110_read_ucblocks(struct dvb_frontend* fe, u32*
> >ucblocks)
> >{
> >        struct cx24110_state *state = fe->demodulator_priv;
> >
> >        if(cx24110_readreg(state,0x10)&0x40) {
> >            /* the RS error counter has finished one counting window */
> >           cx24110_writereg(state,0x10,0x60); /* select the byer reg */
> >                cx24110_readreg(state, 0x12) |
> >                        (cx24110_readreg(state, 0x13) << 8) |
> >                        (cx24110_readreg(state, 0x14) << 16);
> >           cx24110_writereg(state,0x10,0x70); /* select the bler reg */
> >                state->lastbler=cx24110_readreg(state,0x12)|
> >                        (cx24110_readreg(state,0x13)<<8)|
> >                        (cx24110_readreg(state,0x14)<<16);
> >        cx24110_writereg(state,0x10,0x20); /* start new count window */
> >        }
> >        *ucblocks = state->lastbler;
> >
> >        return 0;
> >}
> >
> >This is the offending code:
> >
> >                cx24110_readreg(state, 0x12) |
> >                        (cx24110_readreg(state, 0x13) << 8) |
> >                        (cx24110_readreg(state, 0x14) << 16);
> >
> >Is there a reason these registers are read without storing their value?
> >Or is it a bug?
> >
> >Regards,
> >
> >	Hans
> >--
> >To unsubscribe from this list: send the line "unsubscribe linux-media"
> >in
> >the body of a message to majordomo@xxxxxxxxxxxxxxx
> >More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 
> I would guess the safest thing to do is still perform the registers reads.
> 
> Will adding a "(void)" cast to the beginning of the statement work?

Sure, that will work. But I just wonder if anyone actually knows *why* this
is done in this way. It would be nice to have a comment here describing the
reason (if there is one, of course).

Regards,

	Hans
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux