From patchwork Wed Apr 9 13:19:54 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Axel Lin X-Patchwork-Id: 337843 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 325CD140148 for ; Wed, 9 Apr 2014 23:20:01 +1000 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932847AbaDINUA (ORCPT ); Wed, 9 Apr 2014 09:20:00 -0400 Received: from mail-pd0-f170.google.com ([209.85.192.170]:41692 "EHLO mail-pd0-f170.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932748AbaDINUA (ORCPT ); Wed, 9 Apr 2014 09:20:00 -0400 Received: by mail-pd0-f170.google.com with SMTP id v10so2462643pde.1 for ; Wed, 09 Apr 2014 06:19:59 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:message-id:subject:from:to:cc:date:content-type :mime-version:content-transfer-encoding; bh=i2FjmHy+pth/3ACqvBFGAUbMNkTR9zEBArTDo19CUyU=; b=Dgq5wRPfMAi92WrTuOStBJzDb/TC+T5YTS/R277WmLnktblnjR/d4xUXXTiuiwasEZ SfV9PZVh2R9uT2OzknBjhwQh0J9oz9hOm4id9/DMIEn1JDz059UPTW3XpLxseRwY3IKg 5p62xwnKS9c/5aVB8HpRViKwQ9O7svQyHtH62/5ywe+/iCi8AdRmNu7pfoh4U1UUOxNa ZND4GmrPpyOSp8LFHGSgntiLtLAiMmyObeTUG6ElAXz/bzVswf0XaiRVMlx731FU/aVV HT5thvTiZT3bJLxEo9KIMVYp2dWPXsMQWWFXzpZQ+JzBicWpYe940ZUXutsqRqRSjWjs ginQ== X-Gm-Message-State: ALoCoQkv+dwAQJxn9MTefwLWvoKtGE/e6bBdsL/QbElEJOAeF538zTq4CAs/pxSbVr1XCT4mHcL2 X-Received: by 10.68.170.66 with SMTP id ak2mr12066262pbc.5.1397049599314; Wed, 09 Apr 2014 06:19:59 -0700 (PDT) Received: from [192.168.0.102] (218-164-132-98.dynamic.hinet.net. [218.164.132.98]) by mx.google.com with ESMTPSA id c7sm2613236pbt.0.2014.04.09.06.19.56 for (version=TLSv1 cipher=RC4-SHA bits=128/128); Wed, 09 Apr 2014 06:19:58 -0700 (PDT) Message-ID: <1397049594.5246.1.camel@phoenix> Subject: [PATCH RESEND] PWM: ab8500: Fix wrong value shift for disable/enable PWM From: Axel Lin To: Thierry Reding Cc: Linus Walleij , Alexandre BOURDIOL , Philippe Begnic , linux-pwm@vger.kernel.org Date: Wed, 09 Apr 2014 21:19:54 +0800 X-Mailer: Evolution 3.8.4-0ubuntu1 Mime-Version: 1.0 Sender: linux-pwm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pwm@vger.kernel.org Current code only works when pdev->id is 1. Fix it by passing correct bitvalues argument to abx500_mask_and_set_register_interruptible. Having DISABLE_PWM/ENABLE_PWM does not make the code better in readability because the bitvalues depends on pdev->id. Thus drop defines for DISABLE_PWM/ENABLE_PWM. This patch also removes a unnecessary return in ab8500_pwm_disable. Signed-off-by: Axel Lin Acked-by: Linus Walleij Acked-by: Alexandre BOURDIOL Acked-by: Philippe Begnic --- drivers/pwm/pwm-ab8500.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/drivers/pwm/pwm-ab8500.c b/drivers/pwm/pwm-ab8500.c index 1d07a6f..d51dc15 100644 --- a/drivers/pwm/pwm-ab8500.c +++ b/drivers/pwm/pwm-ab8500.c @@ -20,10 +20,6 @@ #define AB8500_PWM_OUT_CTRL2_REG 0x61 #define AB8500_PWM_OUT_CTRL7_REG 0x66 -/* backlight driver constants */ -#define ENABLE_PWM 1 -#define DISABLE_PWM 0 - struct ab8500_pwm_chip { struct pwm_chip chip; }; @@ -64,7 +60,7 @@ static int ab8500_pwm_enable(struct pwm_chip *chip, struct pwm_device *pwm) ret = abx500_mask_and_set_register_interruptible(chip->dev, AB8500_MISC, AB8500_PWM_OUT_CTRL7_REG, - 1 << (chip->base - 1), ENABLE_PWM); + 1 << (chip->base - 1), 1 << (chip->base - 1)); if (ret < 0) dev_err(chip->dev, "%s: Failed to enable PWM, Error %d\n", pwm->label, ret); @@ -77,11 +73,10 @@ static void ab8500_pwm_disable(struct pwm_chip *chip, struct pwm_device *pwm) ret = abx500_mask_and_set_register_interruptible(chip->dev, AB8500_MISC, AB8500_PWM_OUT_CTRL7_REG, - 1 << (chip->base - 1), DISABLE_PWM); + 1 << (chip->base - 1), 0); if (ret < 0) dev_err(chip->dev, "%s: Failed to disable PWM, Error %d\n", pwm->label, ret); - return; } static const struct pwm_ops ab8500_pwm_ops = {