From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1758308AbcFAN7D (ORCPT ); Wed, 1 Jun 2016 09:59:03 -0400 Received: from smtp89.iad3a.emailsrvr.com ([173.203.187.89]:59690 "EHLO smtp89.iad3a.emailsrvr.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1758260AbcFAN7A (ORCPT ); Wed, 1 Jun 2016 09:59:00 -0400 X-Auth-ID: abbotti@mev.co.uk X-Sender-Id: abbotti@mev.co.uk Subject: Re: [PATCH 07/10] Staging: comedi: fix BIT macro issue in das6402.c To: Ravishankar Karkala Mallikarjunayya , hsweeten@visionengravers.com, gregkh@linuxfoundation.org References: <1464776813-31659-1-git-send-email-ravishankarkm32@gmail.com> <1464776813-31659-7-git-send-email-ravishankarkm32@gmail.com> Cc: devel@driverdev.osuosl.org, linux-kernel@vger.kernel.org From: Ian Abbott Message-ID: <574EEA22.2050209@mev.co.uk> Date: Wed, 1 Jun 2016 14:58:58 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Icedove/38.6.0 MIME-Version: 1.0 In-Reply-To: <1464776813-31659-7-git-send-email-ravishankarkm32@gmail.com> 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 On 01/06/16 11:26, Ravishankar Karkala Mallikarjunayya wrote: > This patch Replace all occurences of (1< to get rid of checkpatch.pl "CHECK" output "Prefer using the BIT macro" > > Signed-off-by: Ravishankar Karkala Mallikarjunayya > --- > drivers/staging/comedi/drivers/das6402.c | 56 ++++++++++++++++---------------- > 1 file changed, 28 insertions(+), 28 deletions(-) > > diff --git a/drivers/staging/comedi/drivers/das6402.c b/drivers/staging/comedi/drivers/das6402.c > index 1701294..f6319b3 100644 > --- a/drivers/staging/comedi/drivers/das6402.c > +++ b/drivers/staging/comedi/drivers/das6402.c [snip] > #define DAS6402_CTRL_REG 0x09 > #define DAS6402_CTRL_SOFT_TRIG (0 << 0) > -#define DAS6402_CTRL_EXT_FALL_TRIG (1 << 0) > +#define DAS6402_CTRL_EXT_FALL_TRIG BIT(0) > #define DAS6402_CTRL_EXT_RISE_TRIG (2 << 0) > #define DAS6402_CTRL_PACER_TRIG (3 << 0) In cases like this, where there are several values defined for a multi-bit field, all shifted by the same amount, the 'BIT(x)' usage makes the code more unreadable. The DAS6402_CTRL_SOFT_TRIG, DAS6402_CTRL_EXT_FALL_TRIG, DAS6402_CTRL_EXT_RISE_TRIG, and DAS6402_CTRL_PACER_TRIG values should all share the same style, perhaps something like this: #define DAS6402_CTRL_TRIG(x) ((x) << 0) #define DAS6402_CTRL_SOFT_TRIG DAS6402_CTRL_TRIG(0) #define DAS6402_CTRL_EXT_FALL_TRIG DAS6402_CTRL_TRIG(1) #define DAS6402_CTRL_EXT_RISE_TRIG DAS6402_CTRL_TRIG(2) #define DAS6402_CTRL_PACER_TRIG DAS6402_CTRL_TRIG(3) [snip] > #define DAS6402_MODE_REG 0x0b > #define DAS6402_MODE_RANGE(x) ((x) << 0) > #define DAS6402_MODE_POLLED (0 << 2) > -#define DAS6402_MODE_FIFONEPTY (1 << 2) > +#define DAS6402_MODE_FIFONEPTY BIT(2) > #define DAS6402_MODE_FIFOHFULL (2 << 2) > #define DAS6402_MODE_EOB (3 << 2) Similarly, DAS6402_MODE_POLLED, DAS6402_MODE_FIFONEPTY, DAS6402_MODE_FIFOHFULL, and DAS6402_MODE_EOB are all values for the same multi-bit field, and should be defined in the same style, perhaps something like this: #define DAS6402_MODE_BUF(x) ((x) << 2) #define DAS6402_MODE_BUF_POLLED DAS6402_MODE_BUF(0) #define DAS6402_MODE_FIFONEPTY DAS6402_MODE_BUF(1) #define DAS6402_MODE_FIFOHFULL DAS6402_MODE_BUF(2) #define DAS6402_MODE_EOB DAS6402_MODE_BUF(3) > -#define DAS6402_MODE_ENHANCED (1 << 4) > -#define DAS6402_MODE_SE (1 << 5) > -#define DAS6402_MODE_UNI (1 << 6) > +#define DAS6402_MODE_ENHANCED BIT(4) > +#define DAS6402_MODE_SE BIT(5) > +#define DAS6402_MODE_UNI BIT(6) > #define DAS6402_MODE_DMA1 (0 << 7) > -#define DAS6402_MODE_DMA3 (1 << 7) > +#define DAS6402_MODE_DMA3 BIT(7) Similarly, DAS6402_MODE_DMA1 and DAS6402_MODE_DMA3 should be defined in the same style, perhaps something like this: #define DAS6402_MODE_DMA(x) ((x) << 7) #define DAS6402_MODE_DMA1 DAS6402_MODE_DMA(0) #define DAS6402_MODE_DMA3 DAS6402_MODE_DMA(1) -- -=( Ian Abbott @ MEV Ltd. E-mail: )=- -=( Web: http://www.mev.co.uk/ )=-