On Tue, 1 Oct 2024 08:42:23 -0500 David Lechner <dlechner@xxxxxxxxxxxx> wrote: > On 10/1/24 3:26 AM, Alexandru Ardelean wrote: > > On Thu, Sep 19, 2024 at 4:05 PM Alexandru Ardelean > > <aardelean@xxxxxxxxxxxx> wrote: > >> > > ... > > >> @@ -153,7 +349,19 @@ static int ad7606_scan_direct(struct iio_dev *indio_dev, unsigned int ch, > >> if (ret) > >> goto error_ret; > >> > >> - *val = sign_extend32(st->data[ch], 15); > >> + chan = &indio_dev->channels[ch + 1]; > >> + if (chan->scan_type.sign == 'u') { > >> + if (storagebits > 16) > >> + *val = st->data.buf32[ch]; > >> + else > >> + *val = st->data.buf16[ch]; > >> + return 0; > > > > Arrggh... > > I messed up here. > > Guillaume found a bug here, where this should be "goto error_ret" or > > do an "if () {} else {}" > > How should we do it here? if / else. Goto an error label when it's not an error would be horrible! > > > > Do we send a fix-patch or send a new series? > > > > Since this patch is already applied, just follow up with another > patch with a Fixes: tag. I sometimes tweak these sort of things if I haven't pushed out as togreg yet (or they are really bad!) but in this case I'm not 100% sure what the comment is, so I'll just apply a fix on top. So David is entirely correct in general but by luck of timing this time I'll tweak it. Please check the result in iio.git/testing I'll hold off pushing that out as togreg until at least end of tomorrow. One more day o Jonathan > > >