From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755182AbbCLR7i (ORCPT ); Thu, 12 Mar 2015 13:59:38 -0400 Received: from smtprelay0220.hostedemail.com ([216.40.44.220]:44752 "EHLO smtprelay.hostedemail.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1754162AbbCLR7e (ORCPT ); Thu, 12 Mar 2015 13:59:34 -0400 X-Session-Marker: 6A6F6540706572636865732E636F6D X-Spam-Summary: 2,0,0,,d41d8cd98f00b204,joe@perches.com,:::::::::::::::::::::::::::::,RULES_HIT:41:355:379:541:599:960:973:988:989:1260:1277:1311:1313:1314:1345:1359:1373:1437:1515:1516:1518:1534:1542:1593:1594:1711:1730:1747:1777:1792:2393:2559:2562:2828:3138:3139:3140:3141:3142:3353:3622:3865:3866:3867:3868:3872:4321:4605:5007:6261:6742:10004:10400:10848:11026:11232:11473:11658:11914:12043:12296:12438:12517:12519:12740:13161:13229:13255:21080,0,RBL:none,CacheIP:none,Bayesian:0.5,0.5,0.5,Netcheck:none,DomainCache:0,MSF:not bulk,SPF:fn,MSBL:0,DNSBL:none,Custom_rules:0:0:0 X-HE-Tag: quill58_18d783b04513d X-Filterd-Recvd-Size: 4211 Message-ID: <1426183169.2742.10.camel@perches.com> Subject: Re: [PATCH v4 1/2] Input: touchscreen-iproc: Add Broadcom iProc touchscreen driver From: Joe Perches To: Jonathan Richardson Cc: Dmitry Torokhov , Anatol Pomazau , Scott Branden , Grant Likely , Rob Herring , Ray Jui , linux-kernel@vger.kernel.org, linux-input@vger.kernel.org, bcm-kernel-feedback-list , devicetree@vger.kernel.org, Pawel Moll , Mark Rutland , Ian Campbell , Kumar Gala Date: Thu, 12 Mar 2015 10:59:29 -0700 In-Reply-To: <1426182312-6081-2-git-send-email-jonathar@broadcom.com> References: <1426182312-6081-1-git-send-email-jonathar@broadcom.com> <1426182312-6081-2-git-send-email-jonathar@broadcom.com> Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: Evolution 3.12.10-0ubuntu1~14.10.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 Thu, 2015-03-12 at 10:45 -0700, Jonathan Richardson wrote: > Add initial version of the Broadcom touchscreen driver. style trivia: (any of which could be fixed/improved/ignored later) > diff --git a/drivers/input/touchscreen/bcm_iproc_tsc.c b/drivers/input/touchscreen/bcm_iproc_tsc.c [] > +static void ts_reg_dump(struct iproc_ts_priv *priv) > +{ > + struct device *dev = &priv->pdev->dev; > + > + dev_dbg(dev, "regCtl1 = 0x%08x\n", > + readl(priv->regs + REGCTL1)); The output case here generally isn't very important so sometimes it's better to use a macro like: #define dbg_reg(dev, priv, reg) \ dev_dbg(dev, "%20s= 0x%08x\n", #reg, readl((priv)->regs + reg)) > + dev_dbg(dev, "regCtl2 = 0x%08x\n", > + readl(priv->regs + REGCTL2)); so these become dbg_reg(dev, priv, INTERRUPT_THRES); dbg_reg(dev, priv, INTERRUPT_MASK); etc... This style can reduce typo and copy/paste defects. > + dev_dbg(dev, "interrupt_Thres = 0x%08x\n", > + readl(priv->regs + INTERRUPT_THRES)); > + dev_dbg(dev, "interrupt_Mask = 0x%08x\n", > + readl(priv->regs + INTERRUPT_MASK)); > + dev_dbg(dev, "interrupt_Status = 0x%08x\n", > + readl(priv->regs + INTERRUPT_STATUS)); > + dev_dbg(dev, "controller_Status = 0x%08x\n", > + readl(priv->regs + CONTROLLER_STATUS)); > + dev_dbg(dev, "FIFO_Data = 0x%08x\n", > + readl(priv->regs + FIFO_DATA)); > + dev_dbg(dev, "analog_Control = 0x%08x\n", > + readl(priv->regs + ANALOG_CONTROL)); > + dev_dbg(dev, "aux_Data = 0x%08x\n", > + readl(priv->regs + AUX_DATA)); > + dev_dbg(dev, "debounce_Cntr_Stat = 0x%08x\n", > + readl(priv->regs + DEBOUNCE_CNTR_STAT)); > + dev_dbg(dev, "scan_Cntr_Stat = 0x%08x\n", > + readl(priv->regs + SCAN_CNTR_STAT)); > + dev_dbg(dev, "rem_Cntr_Stat = 0x%08x\n", > + readl(priv->regs + REM_CNTR_STAT)); > + dev_dbg(dev, "settling_Timer_Stat = 0x%08x\n", > + readl(priv->regs + SETTLING_TIMER_STAT)); > + dev_dbg(dev, "spare_Reg = 0x%08x\n", > + readl(priv->regs + SPARE_REG)); > + dev_dbg(dev, "soft_Bypass_Control = 0x%08x\n", > + readl(priv->regs + SOFT_BYPASS_CONTROL)); > + dev_dbg(dev, "soft_Bypass_Data = 0x%08x\n", > + readl(priv->regs + SOFT_BYPASS_DATA)); > +} [] > +static int get_tsc_config(struct device_node *np, struct iproc_ts_priv *priv) > +{ > + u32 val; [] > + if (of_property_read_u32(np, "debounce_timeout", &val) >= 0) { > + if (val < 0 || val > 255) { testing u32 < 0 isn't necessary. Maybe it'd be better to emit the out of range value too > + dev_err(dev, "debounce_timeout must be [0-255]\n"); dev_err(dev, "debounce_timeout (%u) must be [0-255]\n", val);