From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.0 required=3.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED,DKIM_SIGNED,DKIM_VALID,FREEMAIL_FORGED_FROMDOMAIN, FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 61679C433E1 for ; Thu, 13 Aug 2020 11:18:25 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 29E4E20715 for ; Thu, 13 Aug 2020 11:18:25 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="fL7ez5xB"; dkim=fail reason="signature verification failed" (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="ey719sZn" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 29E4E20715 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:MIME-Version:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:Message-Id:Date:Subject:To:From:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:In-Reply-To:References:List-Owner; bh=TNuIgc301uITwwpJrMZIubVf1ayPrvVHGLsHF6tWw8o=; b=fL7ez5xBMcxYmuZWWuui2JBI/+ O3DtC7oz7EJMvA9EXsjqvmdXZ0ESAXh6L9mxQZIEpQKP20y8VQVW7XUwc9z66Vyd5CT42YF9mHDBP c4AXyZhECEurgY5Cr7y7MWxnACmUX7R9AgRgzDUUaS1J23OngonrGbPkr0doh8Y3+QxspJsiTNT/S ByIAhW6HEei3NRp8z2MJNGACxtbRzwhTtooQ8zcrsX7DzbP3xFIlBdwanL1glJlqNkeKm8G8n68s9 aa2eYiyclO1QZH6AtlWmFrpC4hFwpBEvITpWVs+X+m0b3px5K98elLhO3KbcmSgL5nxbH136YPw0S xwzpI4Uw==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1k6BDw-0000zi-V0; Thu, 13 Aug 2020 11:16:44 +0000 Received: from mail-pj1-x1041.google.com ([2607:f8b0:4864:20::1041]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1k6BDu-0000zI-PS for linux-arm-kernel@lists.infradead.org; Thu, 13 Aug 2020 11:16:43 +0000 Received: by mail-pj1-x1041.google.com with SMTP id mw10so2616056pjb.2 for ; Thu, 13 Aug 2020 04:16:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=LyVunrfnEItB+vDQ3FaJOfAC5LEvc4r9beaYcx2gG0w=; b=ey719sZnGwm8SdppzE8aE97WOqSouKD+bRw9ir4kW5jLHESXaV7x2WLVyWfK/FCMnl I6elWCfkxvwddWk14nJz867E/uNi5tPtNJZzHNW3g8MYrL2mVN5n9RuJtq2rsTgjOm5r uGdxSoDRNz325gCC7+rYLCfHo2d9XbR2whFISvfONTeX3ij7c9kzGOuEcBsvbV7rXUt6 NvfEZLkyYglTlJ46gJVmJLW2vBKzAF+rlnSH/udd5/7pyS4iJP1HJ+s/OOrKaKRUZQwN jm1fpTYEXqZWoSKtNHH0p3XTYVK+3P+QsyZqtgjQfLEJtJxiOEdonsFdIhrEOzep7ixo 51cQ== 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; bh=LyVunrfnEItB+vDQ3FaJOfAC5LEvc4r9beaYcx2gG0w=; b=IPpqd2cwNVcBYSdPl0TeZzsjugBC6ASXhU3ZSOknV+WfmSgaBotai6E9WxEq+AGQj7 h1egrCSfEKKFWg4cGWnF/yMhQ37/HrBbi3bkFPYHjYPsI078gdaKm3d+dRhRXpUzhFbI MxT12QF8uXqkZqovib6rHXqRkHJ00b6N7vH2ics7dWxLlKXgFohLnvSShpu4z0oyZEBO lgL5n6C9G0sTYfskxiqUH4ORx3JQNpnWsgxn6z2yGLF+3+FkTG6rfGe6ojI4YBlQK9l7 b8U/GNwJ51uSUO0AVPiDv48LejQrQqYKbi31qkAKJM1cVCOjW4ughjfKbOjvnIkYbtSv PZQw== X-Gm-Message-State: AOAM533h5oU7bq2QFZVSV7/0ErOQetGXRVf7wIBFI6CG+my4en8EuuFt TZerGxOdsVV0aexGHCBS0yQ= X-Google-Smtp-Source: ABdhPJycmYirrdd958Nwtaow7mof0XVqcJK9vnmdCnc4T5qUHFlDLRq/LCyi5moVn7e3Gkx3oRELiw== X-Received: by 2002:a17:90a:8589:: with SMTP id m9mr4664652pjn.109.1597317399003; Thu, 13 Aug 2020 04:16:39 -0700 (PDT) Received: from localhost.localdomain ([223.190.42.244]) by smtp.gmail.com with ESMTPSA id e29sm5689965pfj.92.2020.08.13.04.16.36 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 13 Aug 2020 04:16:38 -0700 (PDT) From: Amit Singh Tomar To: andre.przywara@arm.com, linus.walleij@linaro.org, alexandre.belloni@bootlin.com Subject: [PATCH] rtc: pl031: enable rtc alarm interrupt again Date: Thu, 13 Aug 2020 16:44:28 +0530 Message-Id: <1597317268-19537-1-git-send-email-amittomer25@gmail.com> X-Mailer: git-send-email 2.7.4 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200813_071642_864847_6642E68D X-CRM114-Status: GOOD ( 17.39 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-rtc@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Amit Singh Tomar MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org After commit c8ff5841a90b ("rtc: pl031: switch to rtc_time64_to_tm/ rtc_tm_to_time64"), it has been observed the rtc alarm interrupt is no more registered, and due to this waking up the system (using rtc alarm interrupt) from suspend state is no longer possible. Besides this, we get broken output from "hwclock". root@localhost:~# hwclock hwclock: select() to /dev/rtc to wait for clock tick timed out: No such file or directory This is due to the fact that call to pl031_alarm_irq_enable(dev, alarm->enabled) is removed (from pl031_set_alarm()) in commit c8ff5841a90b, and alarm interrupt never gets enabled. This commit fixes it by re-introduces the missing pl031_alarm_irq_enable(dev, alarm->enabled). Fixes: c8ff5841a90b ("rtc: pl031: switch to rtc_time64_to_tm/rtc_tm_to_time64") Signed-off-by: Amit Singh Tomar --- This patch is tested on QEMU ARM64 TCG guest Without this patch: root@localhost:~# echo +10 > /sys/class/rtc/rtc0/wakealarm && sleep 10 && cat /proc/interrupts | grep pl031 39: 0 0 GICv2 34 Level rtc-pl031 With this patch: root@localhost:~# echo +10 > /sys/class/rtc/rtc0/wakealarm && sleep 10 && cat /proc/interrupts | grep pl031 39: 1 0 GICv2 34 Level rtc-pl031 root@localhost:~# hwclock Thu Aug 13 11:00:06 2020 -1.009351 seconds root@localhost:~# echo +30 > /sys/class/rtc/rtc0/wakealarm root@localhost:~# echo -n mem > /sys/power/state root@localhost:~# hwclock -r Thu Aug 13 08:59:14 2020 -1.010357 seconds --- drivers/rtc/rtc-pl031.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/rtc/rtc-pl031.c b/drivers/rtc/rtc-pl031.c index 40d7450a1ce4..c6b89273feba 100644 --- a/drivers/rtc/rtc-pl031.c +++ b/drivers/rtc/rtc-pl031.c @@ -275,6 +275,7 @@ static int pl031_set_alarm(struct device *dev, struct rtc_wkalrm *alarm) struct pl031_local *ldata = dev_get_drvdata(dev); writel(rtc_tm_to_time64(&alarm->time), ldata->base + RTC_MR); + pl031_alarm_irq_enable(dev, alarm->enabled); return 0; } -- 2.7.4 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel