From patchwork Wed Nov 7 09:36:12 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?Q2zDqW1lbnQgUMOpcm9u?= X-Patchwork-Id: 994159 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@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=linux-pwm-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="XqIbrLIC"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42qhBZ41bXz9sD4 for ; Wed, 7 Nov 2018 20:36:38 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726598AbeKGTGF (ORCPT ); Wed, 7 Nov 2018 14:06:05 -0500 Received: from mail-wr1-f68.google.com ([209.85.221.68]:38005 "EHLO mail-wr1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726097AbeKGTGE (ORCPT ); Wed, 7 Nov 2018 14:06:04 -0500 Received: by mail-wr1-f68.google.com with SMTP id d10-v6so16624720wrs.5; Wed, 07 Nov 2018 01:36:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=wNkiWquytzIqLeOP3eKOFmMm6R01FT86AfhqFpG4g48=; b=XqIbrLIC31xYGqWwggdzDzuvsgf/cxH2xpBgRY/hGcevJul4KXTmIgK2dffKIk9S+a LlwgHq/HUUIYs17qkU9KDswdwHhrlL/CY9JRcyCm335mHHp61QQXrJ2Ruam9sKN7/bsT eBrQoW4Bc+E9hAABSVDYfG2oW9qT+kNA2J86g+8MQqZart/HCVKNM1lwKZ5xhozYMYQd kqGBE0PMBShhYziaPH6DUvR7O122fyP3P52MKZl4j4mfb6ON8tIqcbDAyK/geIwtBFnp iIULA8TkR6Zz8rQis5sFaamqUzE3DIx+Ofi5b4XJRB8yQ96qMhfZ+6yoXYHPF3tzRH2u 0cKw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=wNkiWquytzIqLeOP3eKOFmMm6R01FT86AfhqFpG4g48=; b=cLAWPCOaB9sTQiM/bR9qV1Qv9jCs2pGaEzvRGAks/HyUSnKmK0FdW9S4GaC3J/4hgO Bb1CGThrHnuFOxy/UM23fAYctoqBs9lByB7G7eEsc+yRkak9Pf/sNzXrCFDFrHk+OgTb IVf404EXFcjpUKNXPrU3G9fbAvaxcSIMGofxjJ839Wp08st/2f3bDOOsPjJSrdfqsqtH 3r49dSyuP/yunmKpQzhXIg0pGI5+p1/TXEuuSTmO+8zsbWt0fZdwjkPOreUP7Ri513+e 2lMNFVgGgsCVaEuE49ojb3o27pIf9ofUKd7y0Obb78was4AZOaRONMPrVHR6NzqdZDM8 k1jg== X-Gm-Message-State: AGRZ1gLfPgi3NuLFoSUAy2iHmEj14rGV74ASoEFsMTDqT67ferJWClDs MK4/rOsM1enQN7sq5y2yCxc= X-Google-Smtp-Source: AJdET5fCrg0gy3zqIVvY86zkdl6v4mXt7BFxtBqS37A46Rb6MoJWYZPl08VUesAlZW+iuL1+m1nVCQ== X-Received: by 2002:adf:91c3:: with SMTP id 61-v6mr1152454wri.97.1541583390871; Wed, 07 Nov 2018 01:36:30 -0800 (PST) Received: from cperon-Latitude-7490.devialet.com (static-css-csd-151233.business.bouyguestelecom.com. [176.162.151.233]) by smtp.gmail.com with ESMTPSA id c14-v6sm350206wmh.44.2018.11.07.01.36.29 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 07 Nov 2018 01:36:30 -0800 (PST) From: =?utf-8?b?Q2zDqW1lbnQgUMOpcm9u?= To: Thierry Reding , Florian Fainelli , Ray Jui , Scott Branden Cc: bcm-kernel-feedback-list@broadcom.com, linux-pwm@vger.kernel.org, linux-kernel@vger.kernel.org, =?utf-8?b?Q2zDqW1lbnQgUMOpcm9u?= Subject: [PATCH 1/2] pwm: kconfig: enable kona pwm to be built for cygnus arch Date: Wed, 7 Nov 2018 10:36:12 +0100 Message-Id: <20181107093613.26734-1-peron.clem@gmail.com> X-Mailer: git-send-email 2.19.1 MIME-Version: 1.0 Sender: linux-pwm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pwm@vger.kernel.org The Cygnus architecture use a Kona PWM. This is already present in the device tree but can't be built actually. Hence, allow the Kona PWM to be built for Cygnus arch. Signed-off-by: Clément Péron --- drivers/pwm/Kconfig | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/pwm/Kconfig b/drivers/pwm/Kconfig index 763ee50ea57d..76d56fc8b1b7 100644 --- a/drivers/pwm/Kconfig +++ b/drivers/pwm/Kconfig @@ -88,7 +88,8 @@ config PWM_BCM_IPROC config PWM_BCM_KONA tristate "Kona PWM support" - depends on ARCH_BCM_MOBILE + depends on ARCH_BCM_MOBILE || ARCH_BCM_CYGNUS + default ARCH_BCM_CYGNUS help Generic PWM framework driver for Broadcom Kona PWM block. From patchwork Wed Nov 7 09:36:13 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?Q2zDqW1lbnQgUMOpcm9u?= X-Patchwork-Id: 994160 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@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=linux-pwm-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="u9pdVTgB"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42qhBg3B1hz9sCm for ; Wed, 7 Nov 2018 20:36:43 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726357AbeKGTGP (ORCPT ); Wed, 7 Nov 2018 14:06:15 -0500 Received: from mail-wr1-f68.google.com ([209.85.221.68]:33033 "EHLO mail-wr1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726097AbeKGTGP (ORCPT ); Wed, 7 Nov 2018 14:06:15 -0500 Received: by mail-wr1-f68.google.com with SMTP id u9-v6so6269920wrr.0; Wed, 07 Nov 2018 01:36:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=KQGegao9zNeFUWhEcMMURli/nhZvxVqW1koxmyGrXEs=; b=u9pdVTgB1+KoAklw347BeovvNFFyRpuBjjvL54JdBIpbpWjq560Tzz2Atr0HQlc3uP KOfiPW77/VCl7O/vnVqyCjLxmwwIoBLZmbgN106cvjm2C1SilVAofnmUlKynAxk2hDoU 0mEVDNlfxs+9WrRI88GPZiviIyVGhUII6jRTlvy7SLi2DOAkXBMxW91ZNsvlwiHqGVKK BFHa2QYbuU7537x4j7Gqxq129bzewEBRGgEjYW3CrIPMnbxACEwwtfauhtnsbd9RnNfk Z590jFzGSESYpj6DUDcAl1gehWMncmllfsWv3uX49oM/ij2ZgdsOF9a+dXzcKtwR0UXv v0Bg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=KQGegao9zNeFUWhEcMMURli/nhZvxVqW1koxmyGrXEs=; b=oBT1cENtly9TkUypin5bdetfQCKqaWDWNYBCpemZH8Tj74I9hw51gaW85CHUOcUvkT JnhDO0MYMwZDiIJw2RzMUQINS5EPKFNFsjg+4OeFPunFuCRIqPcrLSJRNPfXmNoUjJl8 vexBPkwDCs67yvZgYBjnpjaXrA1ZhlkqGSZCv82KRIO1vazfy7+U2DF1RneMbjwH01Fd 3ELhDitVMlInTr1/2ySDmbmv1TLoNxuSoakd9as3TvWXs8F6e2xAESQDfsOFbO9Jjc+q 43rPoEKhGAbGICsubqlegHinjVpsAeZgCYuK89NWkGo809AD9omGK0p0vhNEXOZtmS6v Xe/Q== X-Gm-Message-State: AGRZ1gIB1RfivZf84G8qX/sNIEzoPgo0j+lPN1lO1/KJda1uvVIPxrIw fxv3gF1OEpDNGR8x+J+Ks9XypulLjsZ+hQ== X-Google-Smtp-Source: AJdET5drwXab/UEhDMYfmw58fDV+uGLRgdSLJ+0I0HBQb9IwUNjGBBn7wZ9PGmAvN/txsP+i+VFNjg== X-Received: by 2002:adf:8919:: with SMTP id s25-v6mr1099830wrs.44.1541583400877; Wed, 07 Nov 2018 01:36:40 -0800 (PST) Received: from cperon-Latitude-7490.devialet.com (static-css-csd-151233.business.bouyguestelecom.com. [176.162.151.233]) by smtp.gmail.com with ESMTPSA id c14-v6sm350206wmh.44.2018.11.07.01.36.40 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 07 Nov 2018 01:36:40 -0800 (PST) From: =?utf-8?b?Q2zDqW1lbnQgUMOpcm9u?= To: Thierry Reding , Florian Fainelli , Ray Jui , Scott Branden Cc: bcm-kernel-feedback-list@broadcom.com, linux-pwm@vger.kernel.org, linux-kernel@vger.kernel.org, Suji Velupillai , =?utf-8?b?Q2zDqW1lbnQgUMOpcm9u?= Subject: [PATCH 2/2] pwm: bcm-kona: apply pwm settings on enable Date: Wed, 7 Nov 2018 10:36:13 +0100 Message-Id: <20181107093613.26734-2-peron.clem@gmail.com> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181107093613.26734-1-peron.clem@gmail.com> References: <20181107093613.26734-1-peron.clem@gmail.com> MIME-Version: 1.0 Sender: linux-pwm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pwm@vger.kernel.org From: Suji Velupillai When pwm_bl framework calls enable, a call to pwm_is_enabled(pwm) still return false, this prevents the backlight being turn on at boot time. Signed-off-by: Suji Velupillai Signed-off-by: Clément Péron --- drivers/pwm/pwm-bcm-kona.c | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/drivers/pwm/pwm-bcm-kona.c b/drivers/pwm/pwm-bcm-kona.c index 09a95aeb3a70..d991d53c4b38 100644 --- a/drivers/pwm/pwm-bcm-kona.c +++ b/drivers/pwm/pwm-bcm-kona.c @@ -108,8 +108,8 @@ static void kona_pwmc_apply_settings(struct kona_pwmc *kp, unsigned int chan) ndelay(400); } -static int kona_pwmc_config(struct pwm_chip *chip, struct pwm_device *pwm, - int duty_ns, int period_ns) +static int __pwmc_config(struct pwm_chip *chip, struct pwm_device *pwm, + int duty_ns, int period_ns, bool pwmc_enabled) { struct kona_pwmc *kp = to_kona_pwmc(chip); u64 val, div, rate; @@ -155,7 +155,7 @@ static int kona_pwmc_config(struct pwm_chip *chip, struct pwm_device *pwm, * always calculated above to ensure the new values are * validated immediately instead of on enable. */ - if (pwm_is_enabled(pwm)) { + if (pwm_is_enabled(pwm) || pwmc_enabled) { kona_pwmc_prepare_for_settings(kp, chan); value = readl(kp->base + PRESCALE_OFFSET); @@ -173,6 +173,12 @@ static int kona_pwmc_config(struct pwm_chip *chip, struct pwm_device *pwm, return 0; } +static int kona_pwmc_config(struct pwm_chip *chip, struct pwm_device *pwm, + int duty_ns, int period_ns) +{ + return __pwmc_config(chip, pwm, duty_ns, period_ns, false); +} + static int kona_pwmc_set_polarity(struct pwm_chip *chip, struct pwm_device *pwm, enum pwm_polarity polarity) { @@ -216,8 +222,8 @@ static int kona_pwmc_enable(struct pwm_chip *chip, struct pwm_device *pwm) return ret; } - ret = kona_pwmc_config(chip, pwm, pwm_get_duty_cycle(pwm), - pwm_get_period(pwm)); + ret = __pwmc_config(chip, pwm, pwm_get_duty_cycle(pwm), + pwm_get_period(pwm), true); if (ret < 0) { clk_disable_unprepare(kp->clk); return ret;