Path: csiph.com!feeder.erje.net!2.eu.feeder.erje.net!news2.arglkargh.de!news.mixmin.net!aioe.org!bofh.it!news.nic.it!robomod From: Ian Abbott Newsgroups: linux.kernel Subject: Re: [PATCH] staging: comedi: Fix incorrect type assignment Date: Wed, 08 Feb 2017 14:30:03 +0100 Message-ID: References: X-Greylist: delayed 630 seconds by postgrey-1.27 at vger.kernel.org; Wed, 08 Feb 2017 08:25:10 EST X-Session-Marker: 69616E406162626F74742E6F7267 X-Spam-Summary: 50,0,0,,d41d8cd98f00b204,abbotti@mev.co.uk,:::::::::::,RULES_HIT:41:355:379:599:800:960:967:973:988:989:1260:1261:1263:1277:1311:1313:1314:1345:1359:1431:1437:1515:1516:1518:1534:1542:1593:1594:1683:1711:1730:1747:1777:1792:1801:2393:2525:2560:2563:2612:2682:2685:2859:2914:2933:2937:2939:2942:2945:2947:2951:2954:3000:3022:3138:3139:3140:3141:3142:3354:3865:3866:3867:3868:3870:3871:3872:3874:3934:3936:3938:3941:3944:3947:3950:3953:3956:3959:4250:4605:5007:7514:7652:7903:9025:9040:10004:10400:10449:10455:10848:11026:11232:11473:11657:11658:11914:12043:12296:12438:12555:12740:12760:12895:14181:14571:14685:14721:19904:19999:21080:21433:21451:30012:30021:30034:30054,0,RBL:none,CacheIP:none,Bayesian:0.5,0.5,0.5,Netcheck:none,DomainCache:0,MSF:not bulk,SPF:fn,MSBL:0,DNSBL:none,Custom_rules:0:0:0,LFtime:1,LUA_SUMMARY:none X-He-Tag: plate21_5b3a06cf10217 X-Filterd-Recvd-Size: 3737 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Icedove/45.6.0 MIME-Version: 1.0 Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Sender: robomod@news.nic.it List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Approved: robomod@news.nic.it Lines: 65 Organization: linux.* mail to news gateway X-Original-Cc: devel@driverdev.osuosl.org, hsweeten@visionengravers.com, kastolom@gmail.com, gregkh@linuxfoundation.org X-Original-Date: Wed, 8 Feb 2017 13:13:44 +0000 X-Original-Message-ID: <95f17abf-12aa-a472-510a-d31b49514ff2@mev.co.uk> X-Original-References: <20170207190627.4403-1-Karthik.188@gmail.com> X-Original-Sender: linux-kernel-owner@vger.kernel.org Xref: csiph.com linux.kernel:1576584 On 07/02/17 19:06, Karthik Nayak wrote: > This patch fixes the following sparse error: > drivers/staging/comedi/drivers//ni_pcimio.c:1229:32: warning: incorrect type in assignment (different base types) > drivers/staging/comedi/drivers//ni_pcimio.c:1229:32: expected restricted __be32 [usertype] serial_number > drivers/staging/comedi/drivers//ni_pcimio.c:1229:32: got unsigned int > > This is done by introducing a temporary variable which is of type > '__be32' and converting the existing variable to type 'unsigned int'. > > Signed-off-by: Karthik Nayak > --- > drivers/staging/comedi/drivers/ni_pcimio.c | 5 +++-- > drivers/staging/comedi/drivers/ni_stc.h | 2 +- > 2 files changed, 4 insertions(+), 3 deletions(-) > > diff --git a/drivers/staging/comedi/drivers/ni_pcimio.c b/drivers/staging/comedi/drivers/ni_pcimio.c > index cdb66eab1292..4f45a5c230ad 100644 > --- a/drivers/staging/comedi/drivers/ni_pcimio.c > +++ b/drivers/staging/comedi/drivers/ni_pcimio.c > @@ -1207,6 +1207,7 @@ static void m_series_init_eeprom_buffer(struct comedi_device *dev) > unsigned int old_iodwbsr_bits; > unsigned int old_iodwbsr1_bits; > unsigned int old_iodwcr1_bits; > + __be32 serial_number; > int i; > > /* IO Window 1 needs to be temporarily mapped to read the eeprom */ > @@ -1223,10 +1224,10 @@ static void m_series_init_eeprom_buffer(struct comedi_device *dev) > > BUG_ON(serial_number_eeprom_length > sizeof(devpriv->serial_number)); > for (i = 0; i < serial_number_eeprom_length; ++i) { > - char *byte_ptr = (char *)&devpriv->serial_number + i; > + char *byte_ptr = (char *)&serial_number + i; > *byte_ptr = ni_readb(dev, serial_number_eeprom_offset + i); > } > - devpriv->serial_number = be32_to_cpu(devpriv->serial_number); > + devpriv->serial_number = be32_to_cpu(serial_number); > > for (i = 0; i < M_SERIES_EEPROM_SIZE; ++i) > devpriv->eeprom_buffer[i] = ni_readb(dev, Start_Cal_EEPROM + i); > diff --git a/drivers/staging/comedi/drivers/ni_stc.h b/drivers/staging/comedi/drivers/ni_stc.h > index f27b545f83eb..b5eca0da71eb 100644 > --- a/drivers/staging/comedi/drivers/ni_stc.h > +++ b/drivers/staging/comedi/drivers/ni_stc.h > @@ -1031,7 +1031,7 @@ struct ni_private { > > unsigned short ai_fifo_buffer[0x2000]; > u8 eeprom_buffer[M_SERIES_EEPROM_SIZE]; > - __be32 serial_number; > + unsigned int serial_number; > > struct mite *mite; > struct mite_channel *ai_mite_chan; > That looks fine, thanks! (On a side note, nothing actually uses serial number, so the code that reads it from the EEPROM could just be ripped out.) Reviewed-by: Ian Abbott -- -=( Ian Abbott @ MEV Ltd. E-mail: )=- -=( Web: http://www.mev.co.uk/ )=-