From patchwork Mon Apr 16 16:19:15 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fabrice Gasnier X-Patchwork-Id: 898761 Return-Path: X-Original-To: incoming-dt@patchwork.ozlabs.org Delivered-To: patchwork-incoming-dt@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=devicetree-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=st.com Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 40Ptrs4HZ0z9s3G for ; Tue, 17 Apr 2018 02:20:13 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752750AbeDPQUL (ORCPT ); Mon, 16 Apr 2018 12:20:11 -0400 Received: from mx07-00178001.pphosted.com ([62.209.51.94]:46218 "EHLO mx07-00178001.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752770AbeDPQUK (ORCPT ); Mon, 16 Apr 2018 12:20:10 -0400 Received: from pps.filterd (m0046668.ppops.net [127.0.0.1]) by mx07-.pphosted.com (8.16.0.21/8.16.0.21) with SMTP id w3GGETks003663; Mon, 16 Apr 2018 18:19:33 +0200 Received: from beta.dmz-eu.st.com (beta.dmz-eu.st.com [164.129.1.35]) by mx07-00178001.pphosted.com with ESMTP id 2hbd6ct8pn-1 (version=TLSv1 cipher=ECDHE-RSA-AES256-SHA bits=256 verify=NOT); Mon, 16 Apr 2018 18:19:33 +0200 Received: from zeta.dmz-eu.st.com (zeta.dmz-eu.st.com [164.129.230.9]) by beta.dmz-eu.st.com (STMicroelectronics) with ESMTP id E085E3A; Mon, 16 Apr 2018 16:19:32 +0000 (GMT) Received: from Webmail-eu.st.com (gpxdag5node6.st.com [10.75.127.79]) by zeta.dmz-eu.st.com (STMicroelectronics) with ESMTP id AFEBF5145; Mon, 16 Apr 2018 16:19:32 +0000 (GMT) Received: from localhost (10.75.127.122) by GPXDAG5NODE6.st.com (10.75.127.79) with Microsoft SMTP Server (TLS) id 15.0.1347.2; Mon, 16 Apr 2018 18:19:32 +0200 From: Fabrice Gasnier To: , CC: , , , , , , , , , , , Subject: [PATCH v4 0/6] Add support for PWM input capture on STM32 Date: Mon, 16 Apr 2018 18:19:15 +0200 Message-ID: <1523895561-4073-1-git-send-email-fabrice.gasnier@st.com> X-Mailer: git-send-email 1.9.1 MIME-Version: 1.0 X-Originating-IP: [10.75.127.122] X-ClientProxiedBy: GPXDAG5NODE5.st.com (10.75.127.78) To GPXDAG5NODE6.st.com (10.75.127.79) X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2018-04-16_08:, , signatures=0 Sender: devicetree-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org This series adds support for capture to stm32-pwm driver. Capture is based on DMAs. - First two patches add support for requesting DMAs to MFD core - Next three patches add support for capture to stm32-pwm driver - This has been tested on stm32429i-eval board. --- Changes in v4: - Lee's comments on patch 2 (mfd: stm32-timers: add support for dmas) Add kerneldoc header, better format comments. Changes in v3: - Dropped 2 precusor patches applied by Thierry in pwm tree: "pwm: stm32: fix, remove unused struct device" "pwm: stm32: protect common prescaler for all channels" - Note: this series applies on top on pwm tree - Implements Lee's comments on MFD part: rework stm32_timers_dma struct, exported routine prototype now use generic device struct, more various comments (see patch 2 changelog). Resend v2: - Add collected Acks Changes in v2: - Abstract DMA handling from child driver: move it to MFD core - Rework pwm capture routines to adopt this change - Comment on optional dma support, beautify DMAs probe Fabrice Gasnier (6): dt-bindings: mfd: stm32-timers: add support for dmas mfd: stm32-timers: add support for dmas pwm: stm32: add capture support pwm: stm32: improve capture by tuning counter prescaler pwm: stm32: use input prescaler to improve period capture ARM: dts: stm32: Enable pwm3 input capture on stm32f429i-eval .../devicetree/bindings/mfd/stm32-timers.txt | 20 ++ arch/arm/boot/dts/stm32429i-eval.dts | 3 + drivers/mfd/stm32-timers.c | 227 +++++++++++++++++- drivers/pwm/pwm-stm32.c | 257 +++++++++++++++++++++ include/linux/mfd/stm32-timers.h | 44 ++++ 5 files changed, 549 insertions(+), 2 deletions(-)