All of lore.kernel.org
 help / color / mirror / Atom feed
* re: iio: frequency: New driver for Analog Devices ADF4350/ADF4351 Wideband Synthesizers
@ 2013-05-22 20:25 Dan Carpenter
  2013-05-23  8:23 ` Michael Hennerich
  0 siblings, 1 reply; 3+ messages in thread
From: Dan Carpenter @ 2013-05-22 20:25 UTC (permalink / raw)
  To: michael.hennerich; +Cc: linux-iio

Hello Michael Hennerich,

The patch e31166f0fd48: "iio: frequency: New driver for Analog
Devices ADF4350/ADF4351 Wideband Synthesizers" from May 29, 2012,
leads to the following warning:
"drivers/iio/frequency/adf4350.c:212 adf4350_set_freq()
	 warn: 0x13c001fc0 is larger than 32 bits"

I have been messing with Smatch recently and this is not the right
warning...  :/

drivers/iio/frequency/adf4350.c
   207          st->regs[ADF4350_REG2] =
   208                  ADF4350_REG2_10BIT_R_CNT(r_cnt) |
   209                  ADF4350_REG2_DOUBLE_BUFF_EN |
   210                  (pdata->ref_doubler_en ? ADF4350_REG2_RMULT2_EN : 0) |
   211                  (pdata->ref_div2_en ? ADF4350_REG2_RDIV2_EN : 0) |
   212                  (pdata->r2_user_settings & (ADF4350_REG2_PD_POLARITY_POS |
   213                  ADF4350_REG2_LDP_6ns | ADF4350_REG2_LDF_INT_N |
   214                  ADF4350_REG2_CHARGE_PUMP_CURR_uA(5000) |
   215                  ADF4350_REG2_MUXOUT(0x7) | ADF4350_REG2_NOISE_MODE(0x9)));
                        ^^^^^^^^^^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^^^^^^^^^^^^^
0x7 and 0x9 are signed int so when we do "<< 29" it wraps or has a sign
extention.  Also we are doing a bitwise AND with 32 bit unsigned values
so they get truncated that way too.

It's not clear what was intended here.

regards,
dan carpenter


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2013-05-23  9:15 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-05-22 20:25 iio: frequency: New driver for Analog Devices ADF4350/ADF4351 Wideband Synthesizers Dan Carpenter
2013-05-23  8:23 ` Michael Hennerich
2013-05-23  9:15   ` Dan Carpenter

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.