Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754067AbbBNMAJ (ORCPT ); Sat, 14 Feb 2015 07:00:09 -0500 Received: from saturn.retrosnub.co.uk ([178.18.118.26]:33854 "EHLO saturn.retrosnub.co.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753958AbbBNMAH (ORCPT ); Sat, 14 Feb 2015 07:00:07 -0500 Message-ID: <54DF38BF.9040404@kernel.org> Date: Sat, 14 Feb 2015 11:59:59 +0000 From: Jonathan Cameron User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.4.0 MIME-Version: 1.0 To: Vaishali Thakkar CC: Hartmut Knaack , Lars-Peter Clausen , Peter Meerwald , linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] iio: gp2ap020a00f: Use put_unaligned_le32 References: <20150211091727.GA17552@vaishali-Ideapad-Z570> In-Reply-To: <20150211091727.GA17552@vaishali-Ideapad-Z570> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1979 Lines: 59 On 11/02/15 09:17, Vaishali Thakkar wrote: > This patch introduces the use of function put_unaligned_le32. > > This is done using Coccinelle and semantic patch used is as follows: > > @@ identifier tmp; expression ptr; expression y,e; type T; @@ > > - tmp = cpu_to_le32(y); > > <+... when != tmp > - memcpy(ptr, (T)&tmp, ...); > + put_unaligned_le32(y,ptr); > ...+> > ? tmp = e > > @@ type T; identifier tmp; @@ > > - T tmp; > ...when != tmp > > Signed-off-by: Vaishali Thakkar Applied to togreg branch of iio.git. Will be initially pushed out as testing for the autobuilders to play with it. Thanks, > --- > drivers/iio/light/gp2ap020a00f.c | 5 ++--- > 1 file changed, 2 insertions(+), 3 deletions(-) > > diff --git a/drivers/iio/light/gp2ap020a00f.c b/drivers/iio/light/gp2ap020a00f.c > index 221ed16..650c05f 100644 > --- a/drivers/iio/light/gp2ap020a00f.c > +++ b/drivers/iio/light/gp2ap020a00f.c > @@ -966,7 +966,6 @@ static irqreturn_t gp2ap020a00f_trigger_handler(int irq, void *data) > struct iio_dev *indio_dev = pf->indio_dev; > struct gp2ap020a00f_data *priv = iio_priv(indio_dev); > size_t d_size = 0; > - __le32 light_lux; > int i, out_val, ret; > > for_each_set_bit(i, indio_dev->active_scan_mask, > @@ -981,8 +980,8 @@ static irqreturn_t gp2ap020a00f_trigger_handler(int irq, void *data) > i == GP2AP020A00F_SCAN_MODE_LIGHT_IR) { > out_val = le16_to_cpup((__le16 *)&priv->buffer[d_size]); > gp2ap020a00f_output_to_lux(priv, &out_val); > - light_lux = cpu_to_le32(out_val); > - memcpy(&priv->buffer[d_size], (u8 *)&light_lux, 4); > + > + put_unaligned_le32(out_val, &priv->buffer[d_size]); > d_size += 4; > } else { > d_size += 2; > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/