From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752717AbdCBNbm (ORCPT ); Thu, 2 Mar 2017 08:31:42 -0500 Received: from smtp.domeneshop.no ([194.63.252.55]:56653 "EHLO smtp.domeneshop.no" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751735AbdCBNbD (ORCPT ); Thu, 2 Mar 2017 08:31:03 -0500 Subject: Re: [PATCH v2 4/6] staging: fbtft: Fix sparse warnings of incorrect type in assignment To: simran singhal , gregkh@linuxfoundation.org References: <20170302130459.GA31856@singhal-Inspiron-5558> Cc: devel@driverdev.osuosl.org, linux-kernel@vger.kernel.org, sergio.paracuellos@gmail.com, juliana.orod@gmail.com, thomas.petazzoni@free-electrons.com, outreachy-kernel@googlegroups.com From: =?UTF-8?Q?Noralf_Tr=c3=b8nnes?= Message-ID: Date: Thu, 2 Mar 2017 14:26:37 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.7.1 MIME-Version: 1.0 In-Reply-To: <20170302130459.GA31856@singhal-Inspiron-5558> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Den 02.03.2017 14.04, skrev simran singhal: > This patch fixes the following sparse warnings: > > drivers/staging/fbtft/fbtft-bus.c:166:36: warning: incorrect type in assignment (different base types) > drivers/staging/fbtft/fbtft-bus.c:166:36: expected unsigned short [unsigned] [short] [usertype] > drivers/staging/fbtft/fbtft-bus.c:166:36: got restricted __be16 [usertype] > > drivers/staging/fbtft/fbtft-io.c:74:29: warning: incorrect type in assignment (different base types) > drivers/staging/fbtft/fbtft-io.c:74:29: expected unsigned long long [unsigned] [long] [long long] [usertype] > drivers/staging/fbtft/fbtft-io.c:74:29: got restricted __be64 [usertype] > > Signed-off-by: simran singhal > --- > > v2: > -changed commit message > > drivers/staging/fbtft/fbtft-bus.c | 2 +- > drivers/staging/fbtft/fbtft-io.c | 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/staging/fbtft/fbtft-bus.c b/drivers/staging/fbtft/fbtft-bus.c > index ec45043..df2223e 100644 > --- a/drivers/staging/fbtft/fbtft-bus.c > +++ b/drivers/staging/fbtft/fbtft-bus.c > @@ -163,7 +163,7 @@ int fbtft_write_vmem16_bus8(struct fbtft_par *par, size_t offset, size_t len) > to_copy, remain - to_copy); > > for (i = 0; i < to_copy; i++) > - txbuf16[i] = cpu_to_be16(vmem16[i]); > + txbuf16[i] = vmem16[i]; > This change breaks functionality on little endian machines like the Raspberry Pi. Noralf. > vmem16 = vmem16 + to_copy; > ret = par->fbtftops.write(par, par->txbuf.buf, > diff --git a/drivers/staging/fbtft/fbtft-io.c b/drivers/staging/fbtft/fbtft-io.c > index d868405..ffb9a3b 100644 > --- a/drivers/staging/fbtft/fbtft-io.c > +++ b/drivers/staging/fbtft/fbtft-io.c > @@ -71,7 +71,7 @@ int fbtft_write_spi_emulate_9(struct fbtft_par *par, void *buf, size_t len) > src++; > } > tmp |= ((*src & 0x0100) ? 1 : 0); > - *(u64 *)dst = cpu_to_be64(tmp); > + *(__be64 *)dst = cpu_to_be64(tmp); > dst += 8; > *dst++ = (u8)(*src++ & 0x00FF); > added++;