Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756035AbcLZXLj (ORCPT ); Mon, 26 Dec 2016 18:11:39 -0500 Received: from 6.mo177.mail-out.ovh.net ([46.105.51.249]:47138 "EHLO 6.mo177.mail-out.ovh.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755866AbcLZXLi (ORCPT ); Mon, 26 Dec 2016 18:11:38 -0500 X-Greylist: delayed 1806 seconds by postgrey-1.27 at vger.kernel.org; Mon, 26 Dec 2016 18:11:38 EST From: Lukasz Majewski To: Thierry Reding , Sascha Hauer , Stefan Agner , linux-pwm@vger.kernel.org, Bhuvanchandra DV , linux-kernel@vger.kernel.org Cc: Fabio Estevam , Fabio Estevam , Boris Brezillon , Lothar Wassmann , kernel@pengutronix.de, Lukasz Majewski Subject: [PATCH v3 RESEND 00/11] pwm: imx: Provide atomic operation for IMX PWM driver Date: Mon, 26 Dec 2016 23:55:50 +0100 Message-Id: <1482792961-12702-1-git-send-email-l.majewski@majess.pl> X-Mailer: git-send-email 2.1.4 In-Reply-To: <1477259146-19167-1-git-send-email-l.majewski@majess.pl> References: <1477259146-19167-1-git-send-email-l.majewski@majess.pl> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Ovh-Tracer-Id: 11535407495834288773 X-VR-SPAMSTATE: OK X-VR-SPAMSCORE: -100 X-VR-SPAMCAUSE: gggruggvucftvghtrhhoucdtuddrfeelfedrledvgdduieeiucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecuqfggjfdpvefjgfevmfevgfenuceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddm Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2164 Lines: 66 This patch set brings atomic operation to i.MX's PWMv2 driver. This work has been supported and suggested by Boris Brezillon [1] and Stefan Agner, by showing how simple the transition could be :-). It has been divided into several steps: - Remove ipg clock enable/disable code (as proposed by Sascha Hauer) - this is the most notable change for v3 - Provide different pwm ops for PWMv1 and PWMv2 - Separate PWMv1 commits from "generic" and non atomic PWM code NOTE: Since I do _not_ have board with PWMv1, I would like to ask somebody for testing - Move some imx_config_v2 code to separate functions - Provide PWM atomic implementation (the ->apply() driver) for PWMv2 in a single patch for better readability. - Remove redundant PWM code (disable, enable, config callbacks) - Update proper documentation entries - Provide support for polarity inversion on top of atomic PWM rework Test HW: -------- This patch set has been tested on i.MX6q board with v4.9 vanila kernel SHA1: 69973b830859bc6529a7a0468ba0d80ee5117826 The PWM operation has been tested with pwm_bl backlight driver by changing its brightness. [1]: http://patchwork.ozlabs.org/patch/685402/ Lothar Wassmann (2): pwm: print error messages with pr_err() instead of pr_debug() pwm: core: make the PWM_POLARITY flag in DTB optional Lukasz Majewski (8): pwm: imx: Add separate set of pwm ops for PWMv1 and PWMv2 pwm: imx: Rewrite imx_pwm_*_v1 code to facilitate switch to atomic pwm operation pwm: imx: Move PWMv2 software reset code to a separate function pwm: imx: Move PWMv2 wait for fifo slot code to a separate function pwm: imx: Provide atomic PWM support for i.MX PWMv2 pwm: imx: Remove redundant i.MX PWMv2 code pwm: imx: doc: Update imx-pwm.txt documentation entry pwm: imx: Add polarity inversion support to i.MX's PWMv2 Sascha Hauer (1): pwm: imx: remove ipg clock Documentation/devicetree/bindings/pwm/imx-pwm.txt | 6 +- drivers/pwm/core.c | 26 +-- drivers/pwm/pwm-imx.c | 247 ++++++++++------------ 3 files changed, 134 insertions(+), 145 deletions(-) -- 2.1.4