From patchwork Mon Oct 11 15:57:10 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Olivier Moysan X-Patchwork-Id: 12550405 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 mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id B7E5CC433F5 for ; Mon, 11 Oct 2021 15:59:47 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 82D6560EB1 for ; Mon, 11 Oct 2021 15:59:47 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 82D6560EB1 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=foss.st.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-ID:Date:Subject:CC :To:From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=PNhs47AgPgJjZGohsF2it2IAzGBSsDbWbDMJE88sZuA=; b=4Dyextyo7A27zG XbyqrlxfdDxr/8MNnlT6u8t7y8mZvtcCmJBbanyoaE3ND0huM9xSs6GH4VxXpGH84wi3JXkUn0x5s 1GBMqruOmHIKFAiS4b6ep1StroGjfetquEN+IL+Ov239eXWmHW7ZEgMUL2WTC/vcNUjyBDTooV877 fPcFG2F7GBXGAo8hil3alG6z6DFSJVpzeX0FjP35BWGcTYztKeKJNn4kTKCIAD9ODxTVgmaeRWtIk GJ1n24jMJ2sMNwwf2zRzOel2vWgxWcD1mYIYjcfWpPGrAv8g68dFlGNvcHG0SMdkz0THJBewts4KS 1BLsXBTukQI3z+jW3DiA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1mZxgt-009z4c-C2; Mon, 11 Oct 2021 15:58:15 +0000 Received: from mx08-00178001.pphosted.com ([91.207.212.93] helo=mx07-00178001.pphosted.com) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1mZxgp-009z2h-DT for linux-arm-kernel@lists.infradead.org; Mon, 11 Oct 2021 15:58:13 +0000 Received: from pps.filterd (m0046660.ppops.net [127.0.0.1]) by mx07-00178001.pphosted.com (8.16.1.2/8.16.1.2) with SMTP id 19B9sOND023189; Mon, 11 Oct 2021 17:58:00 +0200 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=foss.st.com; h=from : to : cc : subject : date : message-id : mime-version : content-type; s=selector1; bh=W/s3u3+Z9QbqBfrXJaxmOrhalio76CjYsV89ygdkHVg=; b=jGFf6RCXrJDKS9RnjXArl3lt2YWafxnUJ5EUTviALU3rO9LXXkzCBywpwVRKr4TMEJI1 oi1hVS+QnhjGnOn/GJBJ1sqG+unmbFlunt4CyR4aDX5xyPa7nmVFGd/RMrA5EJe8nusP DjVoWE3hWug0O+coFPOO6X0EvWHs4nxI793kPvveeGdeQSlCv31LaKD+xIl8fiXH02QN OVMf0ZJbB+AnZ7byHC2qMOUBmStIFT/RqvQjUOC5j9tX3K95ALQ0rzADYe6s29N2t9OF aEtsrEN/F04RGyN1c+aNT9R6Bh1XZG0OuSRXDonjbt4JAw1qVedDZpTYfJiykOvZtLkc Iw== Received: from beta.dmz-eu.st.com (beta.dmz-eu.st.com [164.129.1.35]) by mx07-00178001.pphosted.com with ESMTP id 3bmdxrkung-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 11 Oct 2021 17:58:00 +0200 Received: from euls16034.sgp.st.com (euls16034.sgp.st.com [10.75.44.20]) by beta.dmz-eu.st.com (STMicroelectronics) with ESMTP id CE3D310002A; Mon, 11 Oct 2021 17:57:59 +0200 (CEST) Received: from Webmail-eu.st.com (sfhdag2node2.st.com [10.75.127.5]) by euls16034.sgp.st.com (STMicroelectronics) with ESMTP id C3D43231DE0; Mon, 11 Oct 2021 17:57:59 +0200 (CEST) Received: from localhost (10.75.127.48) by SFHDAG2NODE2.st.com (10.75.127.5) with Microsoft SMTP Server (TLS) id 15.0.1497.18; Mon, 11 Oct 2021 17:57:59 +0200 From: Olivier Moysan To: Alexandre Torgue , Fabrice Gasnier , Jonathan Cameron , "Lars-Peter Clausen" , Maxime Coquelin , Olivier Moysan , Rob Herring CC: , , , , Subject: [PATCH v4 0/7] iio: adc: stm32-adc: add internal channels support Date: Mon, 11 Oct 2021 17:57:10 +0200 Message-ID: <20211011155717.1594-1-olivier.moysan@foss.st.com> X-Mailer: git-send-email 2.17.1 MIME-Version: 1.0 X-Originating-IP: [10.75.127.48] X-ClientProxiedBy: SFHDAG1NODE2.st.com (10.75.127.2) To SFHDAG2NODE2.st.com (10.75.127.5) X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.182.1,Aquarius:18.0.790,Hydra:6.0.425,FMLib:17.0.607.475 definitions=2021-10-11_05,2021-10-11_01,2020-04-07_01 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20211011_085811_781146_31887B47 X-CRM114-Status: GOOD ( 14.34 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org This patchset adds support of ADC2 internal channels VDDCORE, VREFINT and VBAT on STM32MP15x SoCs. The generic IIO channel bindings is also introduced here to provide this feature. The legacy channel binding is kept for backward compatibility. Changes in v2: - Add 'deprecated' to channels legacy properties in ADC bindings - Add set/clr service for common registers, to make code more generic in internal channels enable/disable services. - Expose vrefint channel as a processed channel to return the actual value of vrefp. - Minor code improvements Changes in v3: - fix vrefint sampling time check. Changes in v4: - fix binding - add dedicated spin lock for common register - manage probe_defer on nvmem read Olivier Moysan (7): dt-bindings: iio: stm32-adc: add generic channel binding dt-bindings: iio: stm32-adc: add nvmem support for vrefint internal channel iio: adc: stm32-adc: split channel init into several routines iio: adc: stm32-adc: add support of generic channels binding iio: adc: stm32-adc: add support of internal channels iio: adc: stm32-adc: add vrefint calibration support iio: adc: stm32-adc: use generic binding for sample-time .../bindings/iio/adc/st,stm32-adc.yaml | 108 ++++- drivers/iio/adc/stm32-adc-core.c | 1 + drivers/iio/adc/stm32-adc-core.h | 10 + drivers/iio/adc/stm32-adc.c | 422 ++++++++++++++++-- 4 files changed, 486 insertions(+), 55 deletions(-)