From patchwork Tue Jan 9 09:33:32 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Quentin Schulz X-Patchwork-Id: 123844 Delivered-To: patch@linaro.org Received: by 10.140.22.227 with SMTP id 90csp3810484qgn; Tue, 9 Jan 2018 01:44:49 -0800 (PST) X-Google-Smtp-Source: ACJfBotWjGy0Z7qAB/RqxXbZzotMWiDfrOtqA1UtExKxGqPDGpYYIYfM8/WG4gKJZD+lc8HDOeo3 X-Received: by 10.99.67.197 with SMTP id q188mr3356720pga.255.1515491089674; Tue, 09 Jan 2018 01:44:49 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1515491089; cv=none; d=google.com; s=arc-20160816; b=EKAP27+sIolAXYDkp/sa0KNaXmibh5Or04nQJ28RSY4LTbgaIF8uqKNhBTMpuiJHPJ pRRzsm6OGesLV+gHogIN/6N2N1vPDprj5l+43luLFMOBcQtL5plog6sadcOb7DXdXuU+ gRjBnDeYXf0HMp5MiMKkdR3l3T2Naetg1cn6WUFzalWyBIMGQAP5vtSB0i/Fv873bKzC XblTtMYxGz/+VWRCsyNxZRxz3ihCode5M/ciBD6atdJLQSOBaWfPewtjpJO/GslxO8DO wR4Um0uGwkBM0aHJ6NdvUzLlwhVx4NnOrmZ/HFpI/7a8sHnCvZzUS+EM3YiTB9jmb5K9 Wjig== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:references :in-reply-to:message-id:date:subject:cc:to:from :arc-authentication-results; bh=9RVkHaB+OL4B50IDl2vBqvtznB0wToFklvRnAKgf05I=; b=v75t/XifIDwS8IqiLt4/4fRh5/57D6fV9V+1xU+NtotTRJv/W6bKCh4IkXfifnBfRD 278GlgXG24cFPad+sgfKCtkgCjkhuwbIvFLvTt+piVNwLB0x8LBhQ9YBqhOdvZoJzJcZ /rqQOraCDS6FXG3wiql5bdmuaY6eDoMHrk7UL5p4VtZ021ZFyjfTIfB9FgZMQ0LLABwv DgoyN6p4oiRriQQFWAhavy/+fUuMMddYTfn/leWk4fZVqOYNnClF7mV6LmIBRbkoUReb ij75yMDZjRP8XuzNP9hz6T0L7E+cH2/zNGWL5IrNbUJp41sVyHzysDEDd8uTEPP+fQUP 7yfw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id f66si9858095pff.48.2018.01.09.01.44.49; Tue, 09 Jan 2018 01:44:49 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752683AbeAIJfF (ORCPT + 28 others); Tue, 9 Jan 2018 04:35:05 -0500 Received: from mail.free-electrons.com ([62.4.15.54]:45683 "EHLO mail.free-electrons.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752533AbeAIJfB (ORCPT ); Tue, 9 Jan 2018 04:35:01 -0500 Received: by mail.free-electrons.com (Postfix, from userid 110) id 3426B20993; Tue, 9 Jan 2018 10:34:59 +0100 (CET) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on mail.free-electrons.com X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,SHORTCIRCUIT, URIBL_BLOCKED shortcircuit=ham autolearn=disabled version=3.4.0 Received: from localhost.localdomain (LStLambert-657-1-97-87.w90-63.abo.wanadoo.fr [90.63.216.87]) by mail.free-electrons.com (Postfix) with ESMTPSA id BDCB12064F; Tue, 9 Jan 2018 10:34:48 +0100 (CET) From: Quentin Schulz To: jic23@kernel.org, knaack.h@gmx.de, lars@metafoo.de, pmeerw@pmeerw.net, robh+dt@kernel.org, mark.rutland@arm.com, wens@csie.org, sre@kernel.org, linux@armlinux.org.uk, maxime.ripard@free-electrons.com, lee.jones@linaro.org Cc: linux-iio@vger.kernel.org, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, thomas.petazzoni@free-electrons.com, linux-sunxi@googlegroups.com, Quentin Schulz Subject: [PATCH v2 01/16] iio: adc: axp20x_adc: put ADC rate setting in a per-variant function Date: Tue, 9 Jan 2018 10:33:32 +0100 Message-Id: X-Mailer: git-send-email 2.14.1 In-Reply-To: References: In-Reply-To: References: Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org To prepare for a new comer that set a different register with different values, move rate setting in a function that is specific to each AXP variant. Signed-off-by: Quentin Schulz --- drivers/iio/adc/axp20x_adc.c | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) -- git-series 0.9.1 diff --git a/drivers/iio/adc/axp20x_adc.c b/drivers/iio/adc/axp20x_adc.c index a30a972..3fc1b06 100644 --- a/drivers/iio/adc/axp20x_adc.c +++ b/drivers/iio/adc/axp20x_adc.c @@ -470,14 +470,18 @@ static const struct iio_info axp22x_adc_iio_info = { .read_raw = axp22x_read_raw, }; -static int axp20x_adc_rate(int rate) +static int axp20x_adc_rate(struct axp20x_adc_iio *info, int rate) { - return AXP20X_ADC_RATE_HZ(rate); + return regmap_update_bits(info->regmap, AXP20X_ADC_RATE, + AXP20X_ADC_RATE_MASK, + AXP20X_ADC_RATE_HZ(rate)); } -static int axp22x_adc_rate(int rate) +static int axp22x_adc_rate(struct axp20x_adc_iio *info, int rate) { - return AXP22X_ADC_RATE_HZ(rate); + return regmap_update_bits(info->regmap, AXP20X_ADC_RATE, + AXP20X_ADC_RATE_MASK, + AXP22X_ADC_RATE_HZ(rate)); } struct axp_data { @@ -485,7 +489,8 @@ struct axp_data { int num_channels; struct iio_chan_spec const *channels; unsigned long adc_en1_mask; - int (*adc_rate)(int rate); + int (*adc_rate)(struct axp20x_adc_iio *info, + int rate); bool adc_en2; struct iio_map *maps; }; @@ -554,8 +559,7 @@ static int axp20x_probe(struct platform_device *pdev) AXP20X_ADC_EN2_MASK, AXP20X_ADC_EN2_MASK); /* Configure ADCs rate */ - regmap_update_bits(info->regmap, AXP20X_ADC_RATE, AXP20X_ADC_RATE_MASK, - info->data->adc_rate(100)); + info->data->adc_rate(info, 100); ret = iio_map_array_register(indio_dev, info->data->maps); if (ret < 0) {