From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1161067AbdAFJ2J (ORCPT ); Fri, 6 Jan 2017 04:28:09 -0500 Received: from mx0b-001ae601.pphosted.com ([67.231.152.168]:60681 "EHLO mx0b-001ae601.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S969659AbdAFJ1w (ORCPT ); Fri, 6 Jan 2017 04:27:52 -0500 Authentication-Results: ppops.net; spf=none smtp.mailfrom=ckeepax@opensource.wolfsonmicro.com Date: Fri, 6 Jan 2017 09:28:44 +0000 From: Charles Keepax To: Lee Jones CC: , Subject: Re: [PATCH 3/3] mfd: arizona: Use regmap_read_poll_timeout instead of hard coding it Message-ID: <20170106092844.GA27100@localhost.localdomain> References: <1483542655-19980-1-git-send-email-ckeepax@opensource.wolfsonmicro.com> <1483542655-19980-3-git-send-email-ckeepax@opensource.wolfsonmicro.com> <20170105080701.GJ24225@dell> <20170105100528.GS1867@localhost.localdomain> <20170105144822.GS24225@dell> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: <20170105144822.GS24225@dell> User-Agent: Mutt/1.5.23 (2014-03-12) X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 priorityscore=1501 malwarescore=0 suspectscore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 impostorscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1612050000 definitions=main-1701060151 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Jan 05, 2017 at 02:48:22PM +0000, Lee Jones wrote: > On Thu, 05 Jan 2017, Charles Keepax wrote: > > > On Thu, Jan 05, 2017 at 08:07:01AM +0000, Lee Jones wrote: > > > On Wed, 04 Jan 2017, Charles Keepax wrote: > > > > > > > arizona_poll_reg essentially hard-codes regmap_read_poll_timeout, this > > > > patch updates the implementation to use regmap_read_poll_timeout. We > > > > still keep arizona_poll_reg around as regmap_read_poll_timeout is a > > > > macro so rather than expand this for each caller keep it wrapped in > > > > arizona_poll_reg. > > > > > > > > Signed-off-by: Charles Keepax > > > > --- > > > > drivers/mfd/arizona-core.c | 28 +++++++++++----------------- > > > > 1 file changed, 11 insertions(+), 17 deletions(-) > > > > > > > > diff --git a/drivers/mfd/arizona-core.c b/drivers/mfd/arizona-core.c > > > > index 4cb34c3..e6fae3c 100644 > > > > --- a/drivers/mfd/arizona-core.c > > > > +++ b/drivers/mfd/arizona-core.c > > > > @@ -236,28 +236,22 @@ static irqreturn_t arizona_overclocked(int irq, void *data) > > > > } > > > > > > > > static int arizona_poll_reg(struct arizona *arizona, > > > > - int timeout, unsigned int reg, > > > > + int npolls, unsigned int reg, > > > > unsigned int mask, unsigned int target) > > > > { > > > > + const int poll_us = 7500; > > > > > > Get rid of this and replace its usage with a nice #define describing > > > exactly what the timeout is for i.e what timed out. > > > > > > > I can replace this with a define if you prefer although since the > > value is only used locally I generally prefer a const variable as > > it keeps all the relevant code together. > > I'd prefer a DEFINE, then you can rid the requirement for a variable > altogether. > Fair enough I will respin. > > that. As for the number passed into the function that depends on > > how long that particular register should be polled for, this is a > > function that is used in several places for polling for a > > particular register state. > > I would have thought a consumer would be more likely to know how long > it would poll for, rather than how many times to poll. Knowledge of > time-between-polls in only known locally. Do you see where I'm going > with this? Yeah that's a fair point I will switch it around so the user specifies the total time out and npolls is worked out internally. Thanks, Charles