Received: by 2002:ab2:3350:0:b0:1f4:6588:b3a7 with SMTP id o16csp359300lqe; Sat, 6 Apr 2024 04:31:45 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCVIclbzKkwca3iN4k3LYK6qAKC8u683quhu/9cAhPmpdwFAOunQpuOLDbXgseSdDpv/M7FMDGGEQjYkDVLihDE6BHieWKwQfukP9VShcw== X-Google-Smtp-Source: AGHT+IEe/rSUzeXAfThPeC4h8FO5q6ZZK/QSjBED9xoXijZme3gsneW3cb3boTUXN/gvhszzBQh6 X-Received: by 2002:a50:9b57:0:b0:56b:f5ae:ae58 with SMTP id a23-20020a509b57000000b0056bf5aeae58mr2476483edj.29.1712403104955; Sat, 06 Apr 2024 04:31:44 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1712403104; cv=pass; d=google.com; s=arc-20160816; b=atsN51vxNnxk8d4o3DiVC9lI4+yzUmHERVS1XN2r6HReZO6LbLLWBNG5r+R11SoyXe ArqW+mw5tdRQzRE41EraEuqT6jV+qSqK6vsMGiu1Ky+Ldvfi+4CoCCBWE+kaadWpkLg1 zw4GI7v0CW6jOjB+iqTOuGa4OrIVimQhFZtw9YxoG4DiSANyktsXZZRngRSEh90c7HFg F6HVZ4JsRLclE4E/gx68cNUy6xb3RJyAw4tQfIYfl59Tchfl0HsGe1SsLOEEbARHEZDG f0I8n8cf4H0RClltvaCbks0UQv39VF2r3VK+VpGlOBRJlE09dQM+ePAVatHvA1Qrht09 hVuQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:references:in-reply-to:message-id :date:subject:cc:to:from:dkim-signature; bh=pxoFMN8i0lztvACcG3MyEVHzdwKc7yQ/ttNu8hJdE6A=; fh=yEGAcB6c11bv/hMacXJtvSvMQQrGJJnmwD3VXod7fNQ=; b=izPjrE3SqCBufl+K8elWM+b4VU+WAf+9lYVUPERz9f/xqZ8UmTdAnMBPT+Jq/vCjF2 5Fs3NYSJYXznosZd66AzP9O87CombwKDJo/CrUNdGoSSToXWTUrDX3UQMkDxJDmHg1Gj GIIjPQnqzyseHlKa4PaF6jxFnJyjxbARGAgH80XfTcov8gZBU6aPV6KGLSl6CjEQl24w 9tyE85yBjrFIFG9t/9+37Goii+L1SX3qsUY1g/XJL+h65lyPiyQLIkoV/ah52Z4ckW+K LADvxAHLuHusS9Bm+badl6L38eS8RTSM/w9Bd/vpISb/AdBu8am99VTil1b62VLF69FP v//Q==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=ORp0hN7U; arc=pass (i=1 dkim=pass dkdomain=kernel.org); spf=pass (google.com: domain of linux-kernel+bounces-133909-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:4601:e00::3 as permitted sender) smtp.mailfrom="linux-kernel+bounces-133909-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from am.mirrors.kernel.org (am.mirrors.kernel.org. [2604:1380:4601:e00::3]) by mx.google.com with ESMTPS id p1-20020a50cd81000000b0056e2e962f95si1647670edi.164.2024.04.06.04.31.44 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 06 Apr 2024 04:31:44 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel+bounces-133909-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:4601:e00::3 as permitted sender) client-ip=2604:1380:4601:e00::3; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=ORp0hN7U; arc=pass (i=1 dkim=pass dkdomain=kernel.org); spf=pass (google.com: domain of linux-kernel+bounces-133909-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:4601:e00::3 as permitted sender) smtp.mailfrom="linux-kernel+bounces-133909-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by am.mirrors.kernel.org (Postfix) with ESMTPS id AA4D01F21B4A for ; Sat, 6 Apr 2024 11:31:44 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 80931364DA; Sat, 6 Apr 2024 11:31:23 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="ORp0hN7U" Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A762732C96 for ; Sat, 6 Apr 2024 11:31:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1712403082; cv=none; b=DO0BPjcDaMb2oN61tCC5WqJQLDmv7iWnvIz4kLgplMx4W2S+d0SzNVShBasrCfPAIl1urKgc4seRrGotdvcb+pqKX+Pexl45aIiL7/rzpRI4x4T+q4EIaa2JApCApJJlCVSHM30OFUXXikxIIrcLzCadsqHSS/6luHO0Bn5rJNA= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1712403082; c=relaxed/simple; bh=66gmc8NYeVWAyoDrDcv4Y+x0uF90S93OHXhD2YCJ+6Y=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=RqHtA0BPHFGREYj1LXe1SADsveePxRE8Fd+wSu5FJ8L0nioeyH++kuFQshR3w1CoeXwa80+H1Cp6xh/wXUqpkdtze/Jnf22+6Yq1QoRkw+wro183IzGSIIn4cUzQRR1hliOMEdAn0GsKRJMsNC1crTVx1oF8+zsQaDdDOvBgbaI= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=ORp0hN7U; arc=none smtp.client-ip=10.30.226.201 Received: by smtp.kernel.org (Postfix) with ESMTPSA id D956BC43141; Sat, 6 Apr 2024 11:31:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1712403082; bh=66gmc8NYeVWAyoDrDcv4Y+x0uF90S93OHXhD2YCJ+6Y=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=ORp0hN7UO4eAFVjTVf+j76i3KDprQYwqJpkNxvDrt+iPdVVS6f0JuqH2XGji5lexO VMgDm9Bm7R1z1XzoynU/F8vM/ab82da/na0x9fdYRATW5wtdBxEgqs2ueta2Wn1r6Y kenWH0Xtfzq4OppuuLViU5DSllzVe1rMeN332aV+AcqgyZ/tyNr0UyN222Nz8VlgGi xCVAAraEpdqZc/56/nku3IRctwH2c9uid1h4GtwLQ+5tSFSsD0/HrGGssaMTeb6LL4 hCqSEkaNErssRXqLItMqPpvkhkj/w7jRvglqDVMz818h7r4fNWOH4zZ3RZrUQqmjV1 skUKAikVI+gVg== From: Jisheng Zhang To: Daniel Lezcano , Thomas Gleixner , Paul Walmsley , Palmer Dabbelt , Albert Ou , Samuel Holland Cc: linux-kernel@vger.kernel.org, linux-riscv@lists.infradead.org Subject: [PATCH v2 2/3] clocksource/drivers/timer-clint: Add set_state_shutdown Date: Sat, 6 Apr 2024 19:17:56 +0800 Message-ID: <20240406111757.1597-3-jszhang@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240406111757.1597-1-jszhang@kernel.org> References: <20240406111757.1597-1-jszhang@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Add clocksource detach/shutdown callback to disable RISC-V timer interrupt when switching out clockevent from clint timer to another timer. Signed-off-by: Jisheng Zhang --- drivers/clocksource/timer-clint.c | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/drivers/clocksource/timer-clint.c b/drivers/clocksource/timer-clint.c index 09fd292eb83d..1c17eff9861e 100644 --- a/drivers/clocksource/timer-clint.c +++ b/drivers/clocksource/timer-clint.c @@ -119,11 +119,21 @@ static int clint_clock_next_event(unsigned long delta, return 0; } +static int clint_clock_shutdown(struct clock_event_device *evt) +{ + void __iomem *r = clint_timer_cmp + + cpuid_to_hartid_map(smp_processor_id()); + + writeq_relaxed(U64_MAX, r); + return 0; +} + static DEFINE_PER_CPU(struct clock_event_device, clint_clock_event) = { - .name = "clint_clockevent", - .features = CLOCK_EVT_FEAT_ONESHOT, - .rating = 100, - .set_next_event = clint_clock_next_event, + .name = "clint_clockevent", + .features = CLOCK_EVT_FEAT_ONESHOT, + .rating = 100, + .set_next_event = clint_clock_next_event, + .set_state_shutdown = clint_clock_shutdown, }; static int clint_timer_starting_cpu(unsigned int cpu) -- 2.43.0