From patchwork Tue Oct 12 13:19:17 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Olivier Moysan X-Patchwork-Id: 12552639 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 E0DC0C433F5 for ; Tue, 12 Oct 2021 13:30:04 +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 AAB2560F23 for ; Tue, 12 Oct 2021 13:30:04 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org AAB2560F23 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=RV6lEMhEjW4Zxhwg3/Nk9CwRHUfiiAd+QHj5cVRRZYs=; b=CDL3LRuNUcReOR 8TRFkLizcG6egoaMo6vM5rQHyANa9fCjL9nhMmXRkgx35MSNWKxjwA4eSrsHHDcYWSvT5GtqJHQLa RujGQMpYOTUIo0T+DNNi1PWftVrbydaslyxK96kmkxssokH3M4JlcfXNTY8lr1OILlL3Q+rV+s1BN BCHJdVCe+qcrGfl/vv07ZUrw3vaKZBIVkxCXAS7iGbBCuVs/G8TAVRvDLE4ETHXhFeRP8/4WFJ2hp t82PeIsBIZbraWHGT09LXQrGHxNfF1KfF610NV3ovL9Q537qZ9bOYFbnNV7JkYTIgah42iGK1vM4K hXdKPsNrbP6tMCX3OSDA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1maHp0-00CwsK-5t; Tue, 12 Oct 2021 13:27:58 +0000 Received: from mx07-00178001.pphosted.com ([185.132.182.106]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1maHhA-00CsiS-7w for linux-arm-kernel@lists.infradead.org; Tue, 12 Oct 2021 13:19:54 +0000 Received: from pps.filterd (m0241204.ppops.net [127.0.0.1]) by mx07-00178001.pphosted.com (8.16.1.2/8.16.1.2) with SMTP id 19CAvRwq003731; Tue, 12 Oct 2021 15:19:41 +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=0F0ed+pt48TJV3kqS/4SR+vtKoJbvfQZR+/QJTx4w3g=; b=z2W9Iopf5mCeTXwd5VrgVKUvruq8b4GuPdHb23H3WRgdWb1kkAqRS5frUj1OW9L2EUOj WztoqR/LZW3ZDITpwXxRZnQZQv+b6C0mJ6g+0F8nBqSx2jkj1auvjrIaMB5yeJzOPvme ZEFwxq1ZO7LIZal3xKK2BgBjjrmX4Irxx24fqEA4vXIFITyjdJEnoLQ1MlKhDX1eXpro VSf40N+VWroaB0uO46RBFqSjJeb1++GaTpPlohuHj3vLquANLb9usdfSAYMpH6raf3iZ l4dLjXJTqkWcK7FBd0O35aOVEudeq7ZPvZCqtKphbrbjt3qjgD4i+BuDBNaNuiYZjqmK dw== Received: from beta.dmz-eu.st.com (beta.dmz-eu.st.com [164.129.1.35]) by mx07-00178001.pphosted.com with ESMTP id 3bn1bjc6k8-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 12 Oct 2021 15:19:41 +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 C29A910002A; Tue, 12 Oct 2021 15:19:40 +0200 (CEST) Received: from Webmail-eu.st.com (sfhdag2node2.st.com [10.75.127.5]) by euls16034.sgp.st.com (STMicroelectronics) with ESMTP id BA76C21E68F; Tue, 12 Oct 2021 15:19:40 +0200 (CEST) Received: from localhost (10.75.127.49) by SFHDAG2NODE2.st.com (10.75.127.5) with Microsoft SMTP Server (TLS) id 15.0.1497.18; Tue, 12 Oct 2021 15:19:40 +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: Tue, 12 Oct 2021 15:19:17 +0200 Message-ID: <20211012131924.31952-1-olivier.moysan@foss.st.com> X-Mailer: git-send-email 2.17.1 MIME-Version: 1.0 X-Originating-IP: [10.75.127.49] X-ClientProxiedBy: SFHDAG2NODE3.st.com (10.75.127.6) 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-12_03,2021-10-12_01,2020-04-07_01 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20211012_061952_884957_344FB213 X-CRM114-Status: GOOD ( 15.35 ) 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 Changes in v5: - fix binding example 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(-)