From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S965025AbbGVNGn (ORCPT ); Wed, 22 Jul 2015 09:06:43 -0400 Received: from mga02.intel.com ([134.134.136.20]:29714 "EHLO mga02.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S965005AbbGVNGl (ORCPT ); Wed, 22 Jul 2015 09:06:41 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.15,523,1432623600"; d="scan'208";a="769017163" Message-ID: <1437570245.8014.33.camel@linux.intel.com> Subject: Re: [PATCH v5 2/8] clk: mmp: switch to GENMASK() From: Andy Shevchenko To: Stephen Boyd Cc: linux-kernel@vger.kernel.org, Sascha Hauer , Peter De Schrijver , Tero Kristo , Russell King , Dinh Nguyen Date: Wed, 22 Jul 2015 16:04:05 +0300 In-Reply-To: <20150721235354.GB15042@codeaurora.org> References: <1436796468-45723-1-git-send-email-andriy.shevchenko@linux.intel.com> <1436796468-45723-3-git-send-email-andriy.shevchenko@linux.intel.com> <20150721235354.GB15042@codeaurora.org> Organization: Intel Finland Oy Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.16.3-1 Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, 2015-07-21 at 16:53 -0700, Stephen Boyd wrote: > On 07/13, Andy Shevchenko wrote: > > diff --git a/drivers/clk/mmp/clk.h b/drivers/clk/mmp/clk.h > > index adf9b71..f5fdb0e 100644 > > --- a/drivers/clk/mmp/clk.h > > +++ b/drivers/clk/mmp/clk.h > > @@ -39,7 +39,7 @@ extern struct clk *mmp_clk_register_factor(const > > char *name, > > > > /* Clock type "mix" */ > > #define MMP_CLK_BITS_MASK(width, shift) \ > > - (((1 << (width)) - 1) << (shift)) > > + (GENMASK((width) - 1, 0) << (shift)) > > This can push the shift into the GENMASK instance too: Too not optimal. I checked the assembly. > > (GENMASK((width) - 1 + (shift), (shift)) > > > #define MMP_CLK_BITS_GET_VAL(data, width, shift) \ > > ((data & MMP_CLK_BITS_MASK(width, shift)) >> > > (shift)) > > #define MMP_CLK_BITS_SET_VAL(val, width, shift) \ > > -- > > 2.1.4 > > > -- Andy Shevchenko Intel Finland Oy