From nobody Sun Feb 8 02:41:27 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 6DFA5C00528 for ; Sat, 15 Jul 2023 11:07:14 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230290AbjGOLHM (ORCPT ); Sat, 15 Jul 2023 07:07:12 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45262 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229483AbjGOLHK (ORCPT ); Sat, 15 Jul 2023 07:07:10 -0400 Received: from mx1.sberdevices.ru (mx1.sberdevices.ru [37.18.73.165]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id ED56BB5; Sat, 15 Jul 2023 04:07:06 -0700 (PDT) Received: from p-infra-ksmg-sc-msk01 (localhost [127.0.0.1]) by mx1.sberdevices.ru (Postfix) with ESMTP id 14FC2100006; Sat, 15 Jul 2023 14:07:03 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 mx1.sberdevices.ru 14FC2100006 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sberdevices.ru; s=mail; t=1689419223; bh=uzjZyhESz+VGISOfZsao53vOWFInLG46m6Rl5JmIEbE=; h=From:To:Subject:Date:Message-ID:MIME-Version:Content-Type:From; b=q8uuya69cupVj+K0t6x1FUP95DZwX6Loeg0Uthv+GfUE6GNVZtT4gAYKlEZJrksFA cNarILwtoLQP+L7v/kUV0QT/qLGutLarQM3eJxC9dyDcDNQj+N9Zaq3RiQ5f3StT9R S3GMfNFK6B+pxjn3jbWE7Hqa4iq8IkIXFPWR7rwAx8PUDjtIgSG5guyfBGHitmoRRx WYYPqtVVhlnpBTxat8q+2mrF0tIUMiTdXCJNZdDxQuA7ipP3aPff9x0nr9gz1RohlG zS/JLpUhAYKN2B5Pxh7WBbIZ+9fg34BnezG1w+yQh5PS/JwUNmtJWx9jFDwdQSWA7p 1fhlY7Qv5hm8w== Received: from p-i-exch-sc-m01.sberdevices.ru (p-i-exch-sc-m01.sberdevices.ru [172.16.192.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.sberdevices.ru (Postfix) with ESMTPS; Sat, 15 Jul 2023 14:07:02 +0300 (MSK) Received: from localhost.localdomain (100.64.160.123) by p-i-exch-sc-m01.sberdevices.ru (172.16.192.107) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1118.30; Sat, 15 Jul 2023 14:06:23 +0300 From: George Stark To: , , , , , , , , CC: , , , , Subject: [PATCH v1 1/3] iio: adc: meson: init channels 0,1 input muxes Date: Sat, 15 Jul 2023 14:05:58 +0300 Message-ID: <20230715110654.6035-2-gnstark@sberdevices.ru> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230715110654.6035-1-gnstark@sberdevices.ru> References: <20230715110654.6035-1-gnstark@sberdevices.ru> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Originating-IP: [100.64.160.123] X-ClientProxiedBy: p-i-exch-sc-m02.sberdevices.ru (172.16.192.103) To p-i-exch-sc-m01.sberdevices.ru (172.16.192.107) X-KSMG-Rule-ID: 10 X-KSMG-Message-Action: clean X-KSMG-AntiSpam-Lua-Profiles: 178635 [Jul 15 2023] X-KSMG-AntiSpam-Version: 5.9.59.0 X-KSMG-AntiSpam-Envelope-From: GNStark@sberdevices.ru X-KSMG-AntiSpam-Rate: 0 X-KSMG-AntiSpam-Status: not_detected X-KSMG-AntiSpam-Method: none X-KSMG-AntiSpam-Auth: dkim=none X-KSMG-AntiSpam-Info: LuaCore: 523 523 523027ce26ed1d9067f7a52a4756a876e54db27c, {Tracking_from_domain_doesnt_match_to}, sberdevices.ru:5.0.1,7.1.1;100.64.160.123:7.1.2;127.0.0.199:7.1.2;d41d8cd98f00b204e9800998ecf8427e.com:7.1.1;p-i-exch-sc-m01.sberdevices.ru:5.0.1,7.1.1, FromAlignment: s, {Tracking_white_helo}, ApMailHostAddress: 100.64.160.123 X-MS-Exchange-Organization-SCL: -1 X-KSMG-AntiSpam-Interceptor-Info: scan successful X-KSMG-AntiPhishing: Clean X-KSMG-LinksScanning: Clean X-KSMG-AntiVirus: Kaspersky Secure Mail Gateway, version 2.0.1.6960, bases: 2023/07/15 07:52:00 #21618415 X-KSMG-AntiVirus-Status: Clean, skipped Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Set up input channels 0,1 muxes in the same way as for the channels 2-7 later in the code. Signed-off-by: George Stark --- drivers/iio/adc/meson_saradc.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/drivers/iio/adc/meson_saradc.c b/drivers/iio/adc/meson_saradc.c index 2411cc864ccd..524e5569381e 100644 --- a/drivers/iio/adc/meson_saradc.c +++ b/drivers/iio/adc/meson_saradc.c @@ -899,6 +899,22 @@ static int meson_sar_adc_init(struct iio_dev *indio_de= v) MESON_SAR_ADC_CHAN_10_SW_CHAN1_MUX_SEL_MASK, regval); =20 + regmap_update_bits(priv->regmap, MESON_SAR_ADC_CHAN_10_SW, + MESON_SAR_ADC_CHAN_10_SW_CHAN0_XP_DRIVE_SW, + MESON_SAR_ADC_CHAN_10_SW_CHAN0_XP_DRIVE_SW); + + regmap_update_bits(priv->regmap, MESON_SAR_ADC_CHAN_10_SW, + MESON_SAR_ADC_CHAN_10_SW_CHAN0_YP_DRIVE_SW, + MESON_SAR_ADC_CHAN_10_SW_CHAN0_YP_DRIVE_SW); + + regmap_update_bits(priv->regmap, MESON_SAR_ADC_CHAN_10_SW, + MESON_SAR_ADC_CHAN_10_SW_CHAN1_XP_DRIVE_SW, + MESON_SAR_ADC_CHAN_10_SW_CHAN1_XP_DRIVE_SW); + + regmap_update_bits(priv->regmap, MESON_SAR_ADC_CHAN_10_SW, + MESON_SAR_ADC_CHAN_10_SW_CHAN1_YP_DRIVE_SW, + MESON_SAR_ADC_CHAN_10_SW_CHAN1_YP_DRIVE_SW); + /* * set up the input channel muxes in MESON_SAR_ADC_AUX_SW * (2 =3D SAR_ADC_CH2, 3 =3D SAR_ADC_CH3, ...) and enable --=20 2.38.4 From nobody Sun Feb 8 02:41:27 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 14C06EB64DC for ; Sat, 15 Jul 2023 11:07:49 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230323AbjGOLHO (ORCPT ); Sat, 15 Jul 2023 07:07:14 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45264 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229639AbjGOLHK (ORCPT ); Sat, 15 Jul 2023 07:07:10 -0400 Received: from mx1.sberdevices.ru (mx1.sberdevices.ru [37.18.73.165]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id EEFA1269D; Sat, 15 Jul 2023 04:07:06 -0700 (PDT) Received: from p-infra-ksmg-sc-msk01 (localhost [127.0.0.1]) by mx1.sberdevices.ru (Postfix) with ESMTP id 45C82100009; Sat, 15 Jul 2023 14:07:03 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 mx1.sberdevices.ru 45C82100009 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sberdevices.ru; s=mail; t=1689419223; bh=dZOh2J+PejsEqvr9CEyYrAsUac8NNrLT8A1ago5/XVo=; h=From:To:Subject:Date:Message-ID:MIME-Version:Content-Type:From; b=L254plI7N+aHYEHu1aptAhg3pCJmrU35E7F27SK1G8PLwgqDhPlpeD2mNOCo1jAnA N/4ySi56FUGA+FlEXlxf7UAHlKithRa2IXnwl3uo9OJDDIHhUUG+yXXHYF5fq45CI0 DN3z1DYUv+0Xm507TZwHNjHEvGU8rFhrbWO4xLv3r69guwKlG//PqAvVidtGUADaoW sjSFmzE2B/gOkGy4hodhUeeJwWxKMStWZRRuP5w17r4UQ2aXAkCiATYAE6vojRwwwG IhZ4y2WP/Il7cSncXP4KoWUWAv3h/NmN5PCBqb+WclbaFF9Ec2306S0cuaaQtAMmvg IUPCgaWoZMJ4A== Received: from p-i-exch-sc-m01.sberdevices.ru (p-i-exch-sc-m01.sberdevices.ru [172.16.192.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.sberdevices.ru (Postfix) with ESMTPS; Sat, 15 Jul 2023 14:07:03 +0300 (MSK) Received: from localhost.localdomain (100.64.160.123) by p-i-exch-sc-m01.sberdevices.ru (172.16.192.107) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1118.30; Sat, 15 Jul 2023 14:06:23 +0300 From: George Stark To: , , , , , , , , CC: , , , , Subject: [PATCH v1 2/3] iio: adc: meson: init internal continuous ring counter Date: Sat, 15 Jul 2023 14:05:59 +0300 Message-ID: <20230715110654.6035-3-gnstark@sberdevices.ru> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230715110654.6035-1-gnstark@sberdevices.ru> References: <20230715110654.6035-1-gnstark@sberdevices.ru> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Originating-IP: [100.64.160.123] X-ClientProxiedBy: p-i-exch-sc-m02.sberdevices.ru (172.16.192.103) To p-i-exch-sc-m01.sberdevices.ru (172.16.192.107) X-KSMG-Rule-ID: 10 X-KSMG-Message-Action: clean X-KSMG-AntiSpam-Lua-Profiles: 178635 [Jul 15 2023] X-KSMG-AntiSpam-Version: 5.9.59.0 X-KSMG-AntiSpam-Envelope-From: GNStark@sberdevices.ru X-KSMG-AntiSpam-Rate: 0 X-KSMG-AntiSpam-Status: not_detected X-KSMG-AntiSpam-Method: none X-KSMG-AntiSpam-Auth: dkim=none X-KSMG-AntiSpam-Info: LuaCore: 523 523 523027ce26ed1d9067f7a52a4756a876e54db27c, {Tracking_from_domain_doesnt_match_to}, sberdevices.ru:5.0.1,7.1.1;100.64.160.123:7.1.2;127.0.0.199:7.1.2;d41d8cd98f00b204e9800998ecf8427e.com:7.1.1;p-i-exch-sc-m01.sberdevices.ru:5.0.1,7.1.1, FromAlignment: s, {Tracking_white_helo}, ApMailHostAddress: 100.64.160.123 X-MS-Exchange-Organization-SCL: -1 X-KSMG-AntiSpam-Interceptor-Info: scan successful X-KSMG-AntiPhishing: Clean X-KSMG-LinksScanning: Clean X-KSMG-AntiVirus: Kaspersky Secure Mail Gateway, version 2.0.1.6960, bases: 2023/07/15 07:52:00 #21618415 X-KSMG-AntiVirus-Status: Clean, skipped Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Disable internal continuous ring counter at init stage. Disable value depends on SoC family: gxl and later SoCs write 1, others write 0. This bit are inited in vendor boot code (bl2, bl33) already so do it in the driver to not depend on other code. Signed-off-by: George Stark --- drivers/iio/adc/meson_saradc.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/drivers/iio/adc/meson_saradc.c b/drivers/iio/adc/meson_saradc.c index 524e5569381e..806ba7cd7320 100644 --- a/drivers/iio/adc/meson_saradc.c +++ b/drivers/iio/adc/meson_saradc.c @@ -313,6 +313,7 @@ struct meson_sar_adc_param { u8 temperature_trimming_bits; unsigned int temperature_multiplier; unsigned int temperature_divider; + u8 disable_ring_counter; }; =20 struct meson_sar_adc_data { @@ -967,6 +968,12 @@ static int meson_sar_adc_init(struct iio_dev *indio_de= v) MESON_SAR_ADC_DELTA_10_TS_REVE0, 0); } =20 + regval =3D FIELD_PREP(MESON_SAR_ADC_REG3_CTRL_CONT_RING_COUNTER_EN, + priv->param->disable_ring_counter); + regmap_update_bits(priv->regmap, MESON_SAR_ADC_REG3, + MESON_SAR_ADC_REG3_CTRL_CONT_RING_COUNTER_EN, + regval); + ret =3D clk_set_parent(priv->adc_sel_clk, priv->clkin); if (ret) return dev_err_probe(dev, ret, "failed to set adc parent to clkin\n"); @@ -1196,6 +1203,7 @@ static const struct meson_sar_adc_param meson_sar_adc= _gxl_param =3D { .bandgap_reg =3D MESON_SAR_ADC_REG11, .regmap_config =3D &meson_sar_adc_regmap_config_gxbb, .resolution =3D 12, + .disable_ring_counter =3D 1, }; =20 static const struct meson_sar_adc_param meson_sar_adc_g12a_param =3D { @@ -1204,6 +1212,7 @@ static const struct meson_sar_adc_param meson_sar_adc= _g12a_param =3D { .bandgap_reg =3D MESON_SAR_ADC_REG11, .regmap_config =3D &meson_sar_adc_regmap_config_gxbb, .resolution =3D 12, + .disable_ring_counter =3D 1, }; =20 static const struct meson_sar_adc_data meson_sar_adc_meson8_data =3D { --=20 2.38.4 From nobody Sun Feb 8 02:41:27 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 3D67DC001DE for ; Sat, 15 Jul 2023 11:07:49 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230408AbjGOLHQ (ORCPT ); Sat, 15 Jul 2023 07:07:16 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45268 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229919AbjGOLHK (ORCPT ); Sat, 15 Jul 2023 07:07:10 -0400 Received: from mx1.sberdevices.ru (mx1.sberdevices.ru [37.18.73.165]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id EF1852702; Sat, 15 Jul 2023 04:07:06 -0700 (PDT) Received: from p-infra-ksmg-sc-msk01 (localhost [127.0.0.1]) by mx1.sberdevices.ru (Postfix) with ESMTP id 6E90310000A; Sat, 15 Jul 2023 14:07:03 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 mx1.sberdevices.ru 6E90310000A DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sberdevices.ru; s=mail; t=1689419223; bh=3mmX30I0FwXOJ51SYCtTE0imFkDvARZbsiRbScj96a4=; h=From:To:Subject:Date:Message-ID:MIME-Version:Content-Type:From; b=fxK9S0yGCJ66oe6he9tWrrxdTp0sj5iR3ghXAL1UZDufz/Yo53ZQjCXs8OhlV7ctF +qFtfma4MKpl5o7El7xbt5Y7mjPIuxivPTgJ+gXcrxJWA3L482Vaa2a/N6JV+kONXY n2/NXM4XTQD+fyeMZPuwD1t6DcBY4/3nARfYxG2hmvBa8ImcagiK8GEuRKLi7X89oM /UuP8+kbmGI48eTwalZsXh3wxduRQny8vMAOo6KvVuwASEow55LbXJ2INyzEyM4VRQ 7QgPv7XQFQ8xZLBsXtiXHY9WVmQk7dUOPIAWL9rLC2FlvB69yFiX2mZRla+Ma3uy8x Wzziy6SvKSLdw== Received: from p-i-exch-sc-m01.sberdevices.ru (p-i-exch-sc-m01.sberdevices.ru [172.16.192.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.sberdevices.ru (Postfix) with ESMTPS; Sat, 15 Jul 2023 14:07:03 +0300 (MSK) Received: from localhost.localdomain (100.64.160.123) by p-i-exch-sc-m01.sberdevices.ru (172.16.192.107) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1118.30; Sat, 15 Jul 2023 14:06:23 +0300 From: George Stark To: , , , , , , , , CC: , , , , Subject: [PATCH v1 3/3] iio: adc: meson: init voltage control bits Date: Sat, 15 Jul 2023 14:06:00 +0300 Message-ID: <20230715110654.6035-4-gnstark@sberdevices.ru> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230715110654.6035-1-gnstark@sberdevices.ru> References: <20230715110654.6035-1-gnstark@sberdevices.ru> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Originating-IP: [100.64.160.123] X-ClientProxiedBy: p-i-exch-sc-m02.sberdevices.ru (172.16.192.103) To p-i-exch-sc-m01.sberdevices.ru (172.16.192.107) X-KSMG-Rule-ID: 10 X-KSMG-Message-Action: clean X-KSMG-AntiSpam-Lua-Profiles: 178635 [Jul 15 2023] X-KSMG-AntiSpam-Version: 5.9.59.0 X-KSMG-AntiSpam-Envelope-From: GNStark@sberdevices.ru X-KSMG-AntiSpam-Rate: 0 X-KSMG-AntiSpam-Status: not_detected X-KSMG-AntiSpam-Method: none X-KSMG-AntiSpam-Auth: dkim=none X-KSMG-AntiSpam-Info: LuaCore: 523 523 523027ce26ed1d9067f7a52a4756a876e54db27c, {Tracking_from_domain_doesnt_match_to}, sberdevices.ru:5.0.1,7.1.1;100.64.160.123:7.1.2;127.0.0.199:7.1.2;d41d8cd98f00b204e9800998ecf8427e.com:7.1.1;p-i-exch-sc-m01.sberdevices.ru:5.0.1,7.1.1, FromAlignment: s, {Tracking_white_helo}, ApMailHostAddress: 100.64.160.123 X-MS-Exchange-Organization-SCL: -1 X-KSMG-AntiSpam-Interceptor-Info: scan successful X-KSMG-AntiPhishing: Clean X-KSMG-LinksScanning: Clean X-KSMG-AntiVirus: Kaspersky Secure Mail Gateway, version 2.0.1.6960, bases: 2023/07/15 07:52:00 #21618415 X-KSMG-AntiVirus-Status: Clean, skipped Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Define and init voltage configuration bits. Those bits are inited in vendor boot code (bl2, bl33) already so do it in the driver to not depend on other code. Introduced bits: REG11[0] - selects Vref. 0 - calibration voltage, 1 - VDDA. txlx and later SoCs support VDDA or calibration voltage as Vref, but others support only calibration voltage. For newer platforms vendor uses VDDA as default. REG11[1] - reserved bit. g12a and later SoCs must write 1, others SoCs write 0. REG11[5] - Vref voltage. 0 - 0.9v, 1 - 1.8v. g12a and later SoCs must write 0, others SoCs write 1. REG11[6] - selects common-mode voltage, 0: from AVDD, 1: from Vref. g12a and later SoCs must write 0, others SoCs write 1. Signed-off-by: George Stark --- drivers/iio/adc/meson_saradc.c | 48 ++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) diff --git a/drivers/iio/adc/meson_saradc.c b/drivers/iio/adc/meson_saradc.c index 806ba7cd7320..05fb30b81b8d 100644 --- a/drivers/iio/adc/meson_saradc.c +++ b/drivers/iio/adc/meson_saradc.c @@ -156,6 +156,10 @@ */ #define MESON_SAR_ADC_REG11 0x2c #define MESON_SAR_ADC_REG11_BANDGAP_EN BIT(13) + #define MESON_SAR_ADC_REG11_CMV_SEL BIT(6) + #define MESON_SAR_ADC_REG11_VREF_VOLTAGE BIT(5) + #define MESON_SAR_ADC_REG11_EOC BIT(1) + #define MESON_SAR_ADC_REG11_VREF_SEL BIT(0) =20 #define MESON_SAR_ADC_REG13 0x34 #define MESON_SAR_ADC_REG13_12BIT_CALIBRATION_MASK GENMASK(13, 8) @@ -216,6 +220,11 @@ .datasheet_name =3D "SAR_ADC_MUX_"#_sel, \ } =20 +enum meson_sar_adc_vref_sel { + VREF_CALIBATION_VOLTAGE =3D 0, + VREF_VDDA =3D 1, +}; + enum meson_sar_adc_avg_mode { NO_AVERAGING =3D 0x0, MEAN_AVERAGING =3D 0x1, @@ -314,6 +323,12 @@ struct meson_sar_adc_param { unsigned int temperature_multiplier; unsigned int temperature_divider; u8 disable_ring_counter; + bool has_reg11; + bool has_vref_select; + u8 vref_select; + u8 cmv_select; + u8 adc_eoc; + enum meson_sar_adc_vref_sel vref_volatge; }; =20 struct meson_sar_adc_data { @@ -974,6 +989,29 @@ static int meson_sar_adc_init(struct iio_dev *indio_de= v) MESON_SAR_ADC_REG3_CTRL_CONT_RING_COUNTER_EN, regval); =20 + if (priv->param->has_reg11) { + regval =3D FIELD_PREP(MESON_SAR_ADC_REG11_EOC, priv->param->adc_eoc); + regmap_update_bits(priv->regmap, MESON_SAR_ADC_REG11, + MESON_SAR_ADC_REG11_EOC, regval); + + if (priv->param->has_vref_select) { + regval =3D FIELD_PREP(MESON_SAR_ADC_REG11_VREF_SEL, + priv->param->vref_select); + regmap_update_bits(priv->regmap, MESON_SAR_ADC_REG11, + MESON_SAR_ADC_REG11_VREF_SEL, regval); + } + + regval =3D FIELD_PREP(MESON_SAR_ADC_REG11_VREF_VOLTAGE, + priv->param->vref_volatge); + regmap_update_bits(priv->regmap, MESON_SAR_ADC_REG11, + MESON_SAR_ADC_REG11_VREF_VOLTAGE, regval); + + regval =3D FIELD_PREP(MESON_SAR_ADC_REG11_CMV_SEL, + priv->param->cmv_select); + regmap_update_bits(priv->regmap, MESON_SAR_ADC_REG11, + MESON_SAR_ADC_REG11_CMV_SEL, regval); + } + ret =3D clk_set_parent(priv->adc_sel_clk, priv->clkin); if (ret) return dev_err_probe(dev, ret, "failed to set adc parent to clkin\n"); @@ -1195,6 +1233,9 @@ static const struct meson_sar_adc_param meson_sar_adc= _gxbb_param =3D { .bandgap_reg =3D MESON_SAR_ADC_REG11, .regmap_config =3D &meson_sar_adc_regmap_config_gxbb, .resolution =3D 10, + .has_reg11 =3D true, + .vref_volatge =3D 1, + .cmv_select =3D 1, }; =20 static const struct meson_sar_adc_param meson_sar_adc_gxl_param =3D { @@ -1204,6 +1245,9 @@ static const struct meson_sar_adc_param meson_sar_adc= _gxl_param =3D { .regmap_config =3D &meson_sar_adc_regmap_config_gxbb, .resolution =3D 12, .disable_ring_counter =3D 1, + .has_reg11 =3D true, + .vref_volatge =3D 1, + .cmv_select =3D 1, }; =20 static const struct meson_sar_adc_param meson_sar_adc_g12a_param =3D { @@ -1213,6 +1257,10 @@ static const struct meson_sar_adc_param meson_sar_ad= c_g12a_param =3D { .regmap_config =3D &meson_sar_adc_regmap_config_gxbb, .resolution =3D 12, .disable_ring_counter =3D 1, + .has_reg11 =3D true, + .adc_eoc =3D 1, + .has_vref_select =3D true, + .vref_select =3D VREF_VDDA, }; =20 static const struct meson_sar_adc_data meson_sar_adc_meson8_data =3D { --=20 2.38.4