From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-11.6 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_SANE_2 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 06A80C43461 for ; Wed, 9 Sep 2020 18:06:01 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id AD69C206B5 for ; Wed, 9 Sep 2020 18:06:00 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1599674760; bh=P2PJd2Cj1YO32Kcj40Y0x+JDFRs0I/YINmaP2FrUJCE=; h=Date:From:To:Cc:Subject:In-Reply-To:References:List-ID:From; b=Tcc7tU6LhOW+3n85ZipQTjhyoRq2epUjk7dcqBQyeGMhzMIG6KtE1Xxu8iKYLrlGD Dtg3ZdD2HR2Xhm/e1GR7vJoGjpAsfecnY+oQsQDY3QV9PZq7tky188OYyyN3JxPf7v nynkuIYWG3f1s1ABF8oAc5g33hgJaMneUVL9/rJ0= Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729993AbgIISF6 (ORCPT ); Wed, 9 Sep 2020 14:05:58 -0400 Received: from mail.kernel.org ([198.145.29.99]:32824 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728663AbgIISFz (ORCPT ); Wed, 9 Sep 2020 14:05:55 -0400 Received: from archlinux (cpc149474-cmbg20-2-0-cust94.5-4.cable.virginm.net [82.4.196.95]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 884A52065E; Wed, 9 Sep 2020 18:05:52 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1599674755; bh=P2PJd2Cj1YO32Kcj40Y0x+JDFRs0I/YINmaP2FrUJCE=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=Y7VspjkE+FMJjGtUQGOQgINgRntSZM1pSFMFoRT7KUQdkiZxWuHKBads+W9KwtEPX hmWxIwfddxp9pOR+RfEyYdOR+Howebbx6wcxpJin/NRtkZEGFW8/Eg/LrWCCTM4bnI 9f6GaHF6iAi13fGKiXBbv+s3mssaGw03EEzu/bLk= Date: Wed, 9 Sep 2020 19:05:48 +0100 From: Jonathan Cameron To: Dmitry Baryshkov Cc: Andy Gross , Bjorn Andersson , Rob Herring , Zhang Rui , Daniel Lezcano , Amit Kucheria , Hartmut Knaack , Lars-Peter Clausen , Peter Meerwald-Stadler , linux-arm-msm@vger.kernel.org, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, linux-iio@vger.kernel.org, Manivannan Sadhasivam Subject: Re: [PATCH v3 06/10] iio: adc: qcom-spmi-adc5: use of_device_get_match_data Message-ID: <20200909190548.22153db9@archlinux> In-Reply-To: <20200909144248.54327-7-dmitry.baryshkov@linaro.org> References: <20200909144248.54327-1-dmitry.baryshkov@linaro.org> <20200909144248.54327-7-dmitry.baryshkov@linaro.org> X-Mailer: Claws Mail 3.17.6 (GTK+ 2.24.32; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-iio-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-iio@vger.kernel.org On Wed, 9 Sep 2020 17:42:44 +0300 Dmitry Baryshkov wrote: > Use of_device_get_match_data() instead of hand-coding it manually. > > Signed-off-by: Dmitry Baryshkov Acked-by: Jonathan Cameron > --- > drivers/iio/adc/qcom-spmi-adc5.c | 18 +++++++----------- > 1 file changed, 7 insertions(+), 11 deletions(-) > > diff --git a/drivers/iio/adc/qcom-spmi-adc5.c b/drivers/iio/adc/qcom-spmi-adc5.c > index c2da8f068b87..ae27ed7a26ff 100644 > --- a/drivers/iio/adc/qcom-spmi-adc5.c > +++ b/drivers/iio/adc/qcom-spmi-adc5.c > @@ -14,6 +14,7 @@ > #include > #include > #include > +#include > #include > #include > #include > @@ -807,8 +808,6 @@ static int adc5_get_dt_data(struct adc5_chip *adc, struct device_node *node) > struct adc5_channel_prop prop, *chan_props; > struct device_node *child; > unsigned int index = 0; > - const struct of_device_id *id; > - const struct adc5_data *data; > int ret; > > adc->nchannels = of_get_available_child_count(node); > @@ -827,24 +826,21 @@ static int adc5_get_dt_data(struct adc5_chip *adc, struct device_node *node) > > chan_props = adc->chan_props; > iio_chan = adc->iio_chans; > - id = of_match_node(adc5_match_table, node); > - if (id) > - data = id->data; > - else > - data = &adc5_data_pmic; > - adc->data = data; > + adc->data = of_device_get_match_data(adc->dev); > + if (!adc->data) > + adc->data = &adc5_data_pmic; > > for_each_available_child_of_node(node, child) { > - ret = adc5_get_dt_channel_data(adc, &prop, child, data); > + ret = adc5_get_dt_channel_data(adc, &prop, child, adc->data); > if (ret) { > of_node_put(child); > return ret; > } > > prop.scale_fn_type = > - data->adc_chans[prop.channel].scale_fn_type; > + adc->data->adc_chans[prop.channel].scale_fn_type; > *chan_props = prop; > - adc_chan = &data->adc_chans[prop.channel]; > + adc_chan = &adc->data->adc_chans[prop.channel]; > > iio_chan->channel = prop.channel; > iio_chan->datasheet_name = prop.datasheet_name;