Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751978AbdLBQqU (ORCPT ); Sat, 2 Dec 2017 11:46:20 -0500 Received: from smtprelay0028.hostedemail.com ([216.40.44.28]:46385 "EHLO smtprelay.hostedemail.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751850AbdLBQqT (ORCPT ); Sat, 2 Dec 2017 11:46:19 -0500 X-Session-Marker: 6A6F6540706572636865732E636F6D X-Spam-Summary: 2,0,0,,d41d8cd98f00b204,joe@perches.com,:::::::::,RULES_HIT:41:355:379:541:599:960:968:982:988:989:1260:1277:1311:1313:1314:1345:1359:1373:1381:1437:1515:1516:1518:1535:1544:1593:1594:1605:1711:1730:1747:1777:1792:1963:2393:2553:2559:2562:2828:3138:3139:3140:3141:3142:3622:3865:3866:3867:3868:3870:3871:3872:3873:3874:4321:4605:5007:6119:7875:7903:8603:10004:10848:11026:11232:11473:11657:11658:11914:12043:12048:12114:12295:12296:12438:12555:12663:12740:12760:12895:13161:13184:13229:13439:14181:14659:14721:21080:21433:21451:21611:21627:30012:30054:30070:30079:30090:30091,0,RBL:none,CacheIP:none,Bayesian:0.5,0.5,0.5,Netcheck:none,DomainCache:0,MSF:not bulk,SPF:,MSBL:0,DNSBL:none,Custom_rules:0:0:0,LFtime:2,LUA_SUMMARY:none X-HE-Tag: boat75_19b9b8d08d11c X-Filterd-Recvd-Size: 5774 Message-ID: <1512233175.6321.11.camel@perches.com> Subject: Re: [PATCH] staging: pi433: Make rf69_set_dc_cut_off_frequency_intern static From: Joe Perches To: Marcus Wolf , gregkh@linuxfoundation.org, dan.carpenter@oracle.com, devel@driverdev.osuosl.org, linux-kernel@vger.kernel.org Date: Sat, 02 Dec 2017 08:46:15 -0800 In-Reply-To: <1512228022-22599-1-git-send-email-linux@wolf-entwicklungen.de> References: <1512228022-22599-1-git-send-email-linux@wolf-entwicklungen.de> Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: Evolution 3.26.1-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 Content-Length: 4812 Lines: 108 On Sat, 2017-12-02 at 17:20 +0200, Marcus Wolf wrote: > rf69_set_dc_cut_off_frequency_intern is used by rf69.c internally only. > Therefore removed the function from header and declared it staic in > the implemtation. > Signed-off-by: Marcus Wolf > --- > drivers/staging/pi433/rf69.c | 2 +- > drivers/staging/pi433/rf69.h | 1 - > 2 files changed, 1 insertion(+), 2 deletions(-) > > diff --git a/drivers/staging/pi433/rf69.c b/drivers/staging/pi433/rf69.c > index ec4b540..90ccf4e 100644 > --- a/drivers/staging/pi433/rf69.c > +++ b/drivers/staging/pi433/rf69.c > @@ -442,7 +442,7 @@ enum lnaGain rf69_get_lna_gain(struct spi_device *spi) > } > } > > -int rf69_set_dc_cut_off_frequency_intern(struct spi_device *spi, u8 reg, enum dccPercent dccPercent) > +static int rf69_set_dc_cut_off_frequency_intern(struct spi_device *spi, u8 reg, enum dccPercent dccPercent) > { > switch (dccPercent) { > case dcc16Percent: return rmw(spi, reg, MASK_BW_DCC_FREQ, BW_DCC_16_PERCENT); > diff --git a/drivers/staging/pi433/rf69.h b/drivers/staging/pi433/rf69.h > index 645c8df..7f580e9 100644 > --- a/drivers/staging/pi433/rf69.h > +++ b/drivers/staging/pi433/rf69.h > @@ -36,7 +36,6 @@ > int rf69_set_antenna_impedance(struct spi_device *spi, enum antennaImpedance antennaImpedance); > int rf69_set_lna_gain(struct spi_device *spi, enum lnaGain lnaGain); > enum lnaGain rf69_get_lna_gain(struct spi_device *spi); > -int rf69_set_dc_cut_off_frequency_intern(struct spi_device *spi, u8 reg, enum dccPercent dccPercent); > int rf69_set_dc_cut_off_frequency(struct spi_device *spi, enum dccPercent dccPercent); > int rf69_set_dc_cut_off_frequency_during_afc(struct spi_device *spi, enum dccPercent dccPercent); > int rf69_set_bandwidth(struct spi_device *spi, enum mantisse mantisse, u8 exponent); Beyond the basics of learning to submit patches by shutting up checkpatch messages, please always keep in mind how to actually improve the logic and code clarity for human readers. The rf69_set_dc_cut_off_frequency_intern function is actually pretty poorly written. It's repeated logic that could be simplified and code size reduced quite a bit. For instance, the patch below makes it more obvious what the function does and reduces boiler-plate copy/paste to a single line. And I don't particularly care that it is not checkpatch 'clean'. checkpatch is only a stupid, mindless style checker. Always try to be better than a mindless script. and you -really- want to make it checkpatch clean, a new #define could be used like this below #define case_dcc_percent(val, dcc, DCC) \ case dcc: val = DCC; break; Anyway: $ size drivers/staging/pi433/rf69.o* text data bss dec hex filename 35820 5600 0 41420 a1cc drivers/staging/pi433/rf69.o.new 36968 5600 0 42568 a648 drivers/staging/pi433/rf69.o.old --- diff --git a/drivers/staging/pi433/rf69.c b/drivers/staging/pi433/rf69.c index e69a2153c999..9e40f162ac77 100644 --- a/drivers/staging/pi433/rf69.c +++ b/drivers/staging/pi433/rf69.c @@ -423,19 +423,23 @@ enum lnaGain rf69_get_lna_gain(struct spi_device *spi) int rf69_set_dc_cut_off_frequency_intern(struct spi_device *spi, u8 reg, enum dccPercent dccPercent) { + int val; + switch (dccPercent) { - case dcc16Percent: return WRITE_REG(reg, ((READ_REG(reg) & ~MASK_BW_DCC_FREQ) | BW_DCC_16_PERCENT)); - case dcc8Percent: return WRITE_REG(reg, ((READ_REG(reg) & ~MASK_BW_DCC_FREQ) | BW_DCC_8_PERCENT)); - case dcc4Percent: return WRITE_REG(reg, ((READ_REG(reg) & ~MASK_BW_DCC_FREQ) | BW_DCC_4_PERCENT)); - case dcc2Percent: return WRITE_REG(reg, ((READ_REG(reg) & ~MASK_BW_DCC_FREQ) | BW_DCC_2_PERCENT)); - case dcc1Percent: return WRITE_REG(reg, ((READ_REG(reg) & ~MASK_BW_DCC_FREQ) | BW_DCC_1_PERCENT)); - case dcc0_5Percent: return WRITE_REG(reg, ((READ_REG(reg) & ~MASK_BW_DCC_FREQ) | BW_DCC_0_5_PERCENT)); - case dcc0_25Percent: return WRITE_REG(reg, ((READ_REG(reg) & ~MASK_BW_DCC_FREQ) | BW_DCC_0_25_PERCENT)); - case dcc0_125Percent: return WRITE_REG(reg, ((READ_REG(reg) & ~MASK_BW_DCC_FREQ) | BW_DCC_0_125_PERCENT)); + case dcc16Percent: val = BW_DCC_16_PERCENT; break; + case dcc8Percent: val = BW_DCC_8_PERCENT; break; + case dcc4Percent: val = BW_DCC_4_PERCENT; break; + case dcc2Percent: val = BW_DCC_2_PERCENT; break; + case dcc1Percent: val = BW_DCC_1_PERCENT; break; + case dcc0_5Percent: val = BW_DCC_0_5_PERCENT; break; + case dcc0_25Percent: val = BW_DCC_0_25_PERCENT; break; + case dcc0_125Percent: val = BW_DCC_0_125_PERCENT; break; default: dev_dbg(&spi->dev, "set: illegal input param"); return -EINVAL; } + + return WRITE_REG(reg, (READ_REG(reg) & ~MASK_BW_DCC_FREQ) | val); } int rf69_set_dc_cut_off_frequency(struct spi_device *spi, enum dccPercent dccPercent)