Re: [bug report] IIO: ADC: add stm32 DFSDM support for PDM microphone

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

 



On Tue, Jan 16, 2018 at 02:03:49PM +0100, Arnaud Pouliquen wrote:
> 
> 
> On 01/16/2018 01:50 PM, Dan Carpenter wrote:
> > On Tue, Jan 16, 2018 at 01:47:29PM +0100, Arnaud Pouliquen wrote:
> >> Hello Dan
> >>
> >> On 01/16/2018 12:43 PM, Dan Carpenter wrote:
> >>> Hello Arnaud Pouliquen,
> >>>
> >>> The patch eca949800d2d: "IIO: ADC: add stm32 DFSDM support for PDM
> >>> microphone" from Jan 10, 2018, leads to the following static checker
> >>> warning:
> >>>
> >>> 	drivers/iio/adc/stm32-dfsdm-adc.c:555 stm32_dfsdm_audio_dma_buffer_done()
> >>> 	warn: potential shift truncation.  '0xffffff00 (0,256-4294967040) << 8'
> >>>
> >>> drivers/iio/adc/stm32-dfsdm-adc.c
> >>>    551          while (available >= indio_dev->scan_bytes) {
> >>>    552                  u32 *buffer = (u32 *)&adc->rx_buf[adc->bufi];
> >>>    553  
> >>>    554                  /* Mask 8 LSB that contains the channel ID */
> >>>    555                  *buffer = (*buffer & 0xFFFFFF00) << 8;
> >>>
> >>> Is this shift, correct?  The comment just mentions that we're masking
> >>> out the low bits.
> >> Yes mask and shift are not correlated.
> >> The Mask suppresses the 8 LSB that contain ID of the channel scanned
> >> The shift is used for the 24 to 32 bits sample conversion.
> >>
> > 
> > If you wanted to silence the static checker warning you could change the
> > mask to:
> > 
> > 		*buffer = (*buffer & 0x00FFFF00) << 8;
> 
> Thanks for the proposal, fill free to send the patch, otherwise i will
> add it in next patch series.
> For my personal information which static checker warns on this line?

It's some Smatch stuff that has too many false positives so I review it
but haven't published it.

regards,
dan carpenter

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



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Input]     [Linux Kernel]     [Linux SCSI]     [X.org]

  Powered by Linux