From patchwork Fri Mar 30 10:01:18 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fabrice Gasnier X-Patchwork-Id: 893201 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 40CHHj3ngwz9sX8 for ; Fri, 30 Mar 2018 21:03:13 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751207AbeC3KC5 (ORCPT ); Fri, 30 Mar 2018 06:02:57 -0400 Received: from mx07-00178001.pphosted.com ([62.209.51.94]:63679 "EHLO mx07-00178001.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751337AbeC3KCn (ORCPT ); Fri, 30 Mar 2018 06:02:43 -0400 Received: from pps.filterd (m0046037.ppops.net [127.0.0.1]) by mx07-.pphosted.com (8.16.0.21/8.16.0.21) with SMTP id w2U9xw1X014719; Fri, 30 Mar 2018 12:01:58 +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 2h1ggs0rpd-1 (version=TLSv1 cipher=ECDHE-RSA-AES256-SHA bits=256 verify=NOT); Fri, 30 Mar 2018 12:01:58 +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 87EBF34; Fri, 30 Mar 2018 10:01:56 +0000 (GMT) Received: from Webmail-eu.st.com (sfhdag5node3.st.com [10.75.127.15]) by zeta.dmz-eu.st.com (STMicroelectronics) with ESMTP id 335A226B4; Fri, 30 Mar 2018 10:01:56 +0000 (GMT) Received: from localhost (10.75.127.49) by SFHDAG5NODE3.st.com (10.75.127.15) with Microsoft SMTP Server (TLS) id 15.0.1347.2; Fri, 30 Mar 2018 12:01:55 +0200 From: Fabrice Gasnier To: , , CC: , , , , , , , , , , Subject: [PATCH v3 0/6] Add support for PWM input capture on STM32 Date: Fri, 30 Mar 2018 12:01:18 +0200 Message-ID: <1522404084-24903-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.49] X-ClientProxiedBy: SFHDAG8NODE1.st.com (10.75.127.22) To SFHDAG5NODE3.st.com (10.75.127.15) X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:, , definitions=2018-03-30_04:, , 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 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 | 219 +++++++++++++++++- drivers/pwm/pwm-stm32.c | 257 +++++++++++++++++++++ include/linux/mfd/stm32-timers.h | 44 ++++ 5 files changed, 541 insertions(+), 2 deletions(-)