From patchwork Thu Feb 22 01:15:55 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Justin Chen X-Patchwork-Id: 876455 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-rtc-owner@vger.kernel.org; receiver=) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3zmxJZ2yV1z9sW6 for ; Thu, 22 Feb 2018 12:16:30 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751534AbeBVBQ2 (ORCPT ); Wed, 21 Feb 2018 20:16:28 -0500 Received: from rnd-relay.smtp.broadcom.com ([192.19.229.170]:55489 "EHLO rnd-relay.smtp.broadcom.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751413AbeBVBQ2 (ORCPT ); Wed, 21 Feb 2018 20:16:28 -0500 Received: from nis-sj1-27.broadcom.com (nis-sj1-27.lvn.broadcom.net [10.75.144.136]) by rnd-relay.smtp.broadcom.com (Postfix) with ESMTP id E979730C018; Wed, 21 Feb 2018 17:16:26 -0800 (PST) Received: from stbirv-lnx-1.igp.broadcom.net (stbirv-lnx-1.igp.broadcom.net [10.67.48.32]) by nis-sj1-27.broadcom.com (Postfix) with ESMTP id B6DA7AC0729; Wed, 21 Feb 2018 17:16:26 -0800 (PST) From: Justin Chen To: linux-rtc@vger.kernel.org Cc: a.zummo@towertech.it, alexandre.belloni@free-electrons.com, computersforpeace@gmail.com, gregory.0xf0@gmail.com, f.fainelli@gmail.com, bcm-kernel-feedback-list@broadcom.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Justin Chen , Justin Chen Subject: [PATCH] rtc: brcmstb-waketimer: Set wktmr prescaler Date: Wed, 21 Feb 2018 17:15:55 -0800 Message-Id: <1519262155-15580-1-git-send-email-justin.chen@broadcom.com> X-Mailer: git-send-email 2.7.4 Sender: linux-rtc-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-rtc@vger.kernel.org The HW default is one tick per second, however instead of assuming this, lets make sure the waketimer is actually one tick per second before arming the alarm. Signed-off-by: Justin Chen Reviewed-by: Florian Fainelli --- drivers/rtc/rtc-brcmstb-waketimer.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/rtc/rtc-brcmstb-waketimer.c b/drivers/rtc/rtc-brcmstb-waketimer.c index 796ac79..46116b7 100644 --- a/drivers/rtc/rtc-brcmstb-waketimer.c +++ b/drivers/rtc/rtc-brcmstb-waketimer.c @@ -60,6 +60,10 @@ static void brcmstb_waketmr_set_alarm(struct brcmstb_waketmr *timer, { brcmstb_waketmr_clear_alarm(timer); + /* Make sure we are actually counting in seconds */ + writel_relaxed(BRCMSTB_WKTMR_DEFAULT_FREQ, + timer->base + BRCMSTB_WKTMR_PRESCALER); + writel_relaxed(secs + 1, timer->base + BRCMSTB_WKTMR_ALARM); }