From nobody Sun Oct 5 12:50:53 2025 Received: from mout.gmx.net (mout.gmx.net [212.227.15.15]) (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 E345123504D for ; Mon, 4 Aug 2025 08:03:47 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=212.227.15.15 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1754294630; cv=none; b=h002FLKLE8oveuRz0+Lf0RgOZgBnKpRdeixVQncIpF5YIGYx/gbBOt9KdjuT2bpVRLPOXKabdHK6qtbu1r+WWhrYszLSZHap8sw0r9R1+t7Hx45vIdz0jPPxv4GC9p2wNf+rAx/wE9KHKkINBEfVs6RLcaCa1tOTokEq/yDw5n0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1754294630; c=relaxed/simple; bh=iZg57lekLIIuMZVGS+qCr+Kj0CnUVpi+tSa9ANKmN0E=; h=From:To:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=MvfELCh8tJ6DmLBPdXGzBUA4C8jVhTSKimqNE271qJBuTP3MaHM3/0w4g3rc+Yiwa4qDKxqWWqpD73uIdKIL9n5ypUgArpch4ix6dGrWgfbR0uxCpwZLVeirv3CELNaBRaMO+4KJQLgddrMzYWZ+a5BuTa06WaYcxh72yQ+OIUw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=gmx.de; spf=pass smtp.mailfrom=gmx.de; dkim=pass (2048-bit key) header.d=gmx.de header.i=markus.stockhausen@gmx.de header.b=bsx5iDRr; arc=none smtp.client-ip=212.227.15.15 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=gmx.de Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmx.de Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmx.de header.i=markus.stockhausen@gmx.de header.b="bsx5iDRr" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de; s=s31663417; t=1754294623; x=1754899423; i=markus.stockhausen@gmx.de; bh=LsrujtBMqwcuo5v1ZCZTEic0Ba9nT7qQaJ71gaCsfio=; h=X-UI-Sender-Class:From:To:Subject:Date:Message-ID:In-Reply-To: References:MIME-Version:Content-Type:Content-Transfer-Encoding:cc: content-transfer-encoding:content-type:date:from:message-id: mime-version:reply-to:subject:to; b=bsx5iDRreC5ghCDSdNe/w6exIjhLcoV8fOGqPW3HHYxztC6ssRU+7iVkE9pIIO8+ ilcnycDu+4t68RG83joFZ4YHyNb4r0s20pt5Iu7cW/t9mCsCBqSlMkQ0GdLDUXRjW O7B4M6boweq2U6q6Zapx4yojPk8KaNy5NNoDFnqZiKk3CGHg5vXtgrUx1Y7N19lTx G8O96mBcSAMO1AKccgJt8ORahojgHNJ0n9fuiemrAEEBaK7IIKIqM/A3xLwH0Y3KP Kn3/W7n45bJ4CHu55OHHs4ZL0hbn7ykji3cvo0Y2IgafNlA+6Sd2nPTbBEr8iMk0J BqTtbSIH9kTyhF1QIA== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from openwrt ([94.31.70.55]) by mail.gmx.net (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MBlxW-1uutvf0TBE-008jHd; Mon, 04 Aug 2025 10:03:43 +0200 From: Markus Stockhausen To: markus.stockhausen@gmx.de, daniel.lezcano@linaro.org, tglx@linutronix.de, linux-kernel@vger.kernel.org, howels@allthatwemight.be, bjorn@mork.no Subject: [PATCH 1/4] clocksource/drivers/timer-rtl-otto: work around dying timers Date: Mon, 4 Aug 2025 04:03:25 -0400 Message-ID: <20250804080328.2609287-2-markus.stockhausen@gmx.de> X-Mailer: git-send-email 2.47.0 In-Reply-To: <20250804080328.2609287-1-markus.stockhausen@gmx.de> References: <20250804080328.2609287-1-markus.stockhausen@gmx.de> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Provags-ID: V03:K1:kDYr4F+GsYaEoJcIxH/uERckAH94eukVqxeXjSmCgfP0jEeJsQq CLiTtxgufyEBjIX6Seq0hAFUlUZYD7tdLTSV4+8f8T5ANYIssGfYsrtDXCeuRy+FPDVohYd 2om7oq91NtIV33XC1hMsmnmh65kJIaTSFpO12MsHZeE/KZmfNw2G1Vg2XhlcmUDLySafsqN vcqYbp7rTDpy9PUsn8p/A== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:rwzkyALo6Lg=;gR/k1e9WmzsCNChU9Pu8Vc2234C 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 XXRhYv50uLWBSs= Content-Type: text/plain; charset="utf-8" The OpenWrt distribution has switched from kernel longterm 6.6 to 6.12. Reports show that devices with the Realtek Otto switch platform die during operation and are rebooted by the watchdog. Sorting out other possible reasons the Otto timer is to blame. The platform currently consists of 4 targets with different hardware revisions. It is not 100% clear which devices and revisions are affected. Analysis shows: A more aggressive sched/deadline handling leads to more timer starts with small intervals. This increases the bug chances. See https://marc.info/?l=3Dlinux-kernel&m=3D175276556023276&w=3D2 Focusing on the real issue a hardware limitation on some devices was found. There is a minimal chance that a timer ends without firing an interrupt if it is reprogrammed within the 5us before its expiration time. Work around this issue by introducing a bounce() function. It restarts the timer directly before the normal restart functions as follows: - Stop timer - Restart timer with a slow frequency. - Target time will be >5us - The subsequent normal restart is outside the critical window Downstream has already tested and confirmed a patch. See https://github.com/openwrt/openwrt/pull/19468 https://forum.openwrt.org/t/support-for-rtl838x-based-managed-switches/5787= 5/3788 Tested-by: Stephen Howell Tested-by: Bj=C3=B8rn Mork Signed-off-by: Markus Stockhausen --- drivers/clocksource/timer-rtl-otto.c | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/drivers/clocksource/timer-rtl-otto.c b/drivers/clocksource/tim= er-rtl-otto.c index 8a3068b36e75..8be45a11fb8b 100644 --- a/drivers/clocksource/timer-rtl-otto.c +++ b/drivers/clocksource/timer-rtl-otto.c @@ -38,6 +38,7 @@ #define RTTM_BIT_COUNT 28 #define RTTM_MIN_DELTA 8 #define RTTM_MAX_DELTA CLOCKSOURCE_MASK(28) +#define RTTM_MAX_DIVISOR GENMASK(15, 0) =20 /* * Timers are derived from the LXB clock frequency. Usually this is a fixed @@ -112,6 +113,22 @@ static irqreturn_t rttm_timer_interrupt(int irq, void = *dev_id) return IRQ_HANDLED; } =20 +static void rttm_bounce_timer(void __iomem *base, u32 mode) +{ + /* + * When a running timer has less than ~5us left, a stop/start sequence + * might fail. While the details are unknown the most evident effect is + * that the subsequent interrupt will not be fired. + * + * As a workaround issue an intermediate restart with a very slow + * frequency of ~3kHz keeping the target counter (>=3D8). So the follow + * up restart will always be issued outside the critical window. + */ + + rttm_disable_timer(base); + rttm_enable_timer(base, mode, RTTM_MAX_DIVISOR); +} + static void rttm_stop_timer(void __iomem *base) { rttm_disable_timer(base); @@ -129,6 +146,7 @@ static int rttm_next_event(unsigned long delta, struct = clock_event_device *clkev struct timer_of *to =3D to_timer_of(clkevt); =20 RTTM_DEBUG(to->of_base.base); + rttm_bounce_timer(to->of_base.base, RTTM_CTRL_COUNTER); rttm_stop_timer(to->of_base.base); rttm_set_period(to->of_base.base, delta); rttm_start_timer(to, RTTM_CTRL_COUNTER); @@ -141,6 +159,7 @@ static int rttm_state_oneshot(struct clock_event_device= *clkevt) struct timer_of *to =3D to_timer_of(clkevt); =20 RTTM_DEBUG(to->of_base.base); + rttm_bounce_timer(to->of_base.base, RTTM_CTRL_COUNTER); rttm_stop_timer(to->of_base.base); rttm_set_period(to->of_base.base, RTTM_TICKS_PER_SEC / HZ); rttm_start_timer(to, RTTM_CTRL_COUNTER); @@ -153,6 +172,7 @@ static int rttm_state_periodic(struct clock_event_devic= e *clkevt) struct timer_of *to =3D to_timer_of(clkevt); =20 RTTM_DEBUG(to->of_base.base); + rttm_bounce_timer(to->of_base.base, RTTM_CTRL_TIMER); rttm_stop_timer(to->of_base.base); rttm_set_period(to->of_base.base, RTTM_TICKS_PER_SEC / HZ); rttm_start_timer(to, RTTM_CTRL_TIMER); --=20 2.47.0 From nobody Sun Oct 5 12:50:53 2025 Received: from mout.gmx.net (mout.gmx.net [212.227.15.15]) (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 3EA85237A3B for ; Mon, 4 Aug 2025 08:04:03 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=212.227.15.15 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1754294646; cv=none; b=gNePcsrW+JYed3eD2eubwv1ASdG7CD8flVpk/Qk4VEzWtIksEXgLOwsXLuU9nk5w2mlsRcYtKgHzOKG9h1LEX6KqHLQC2KcZ6AYlVjkojvV4O50/YXCDqiUpAyJLoFLpVhqm30DkGj1+Cg+OLamOnfbbcaKYA6v13iriTZXUZAU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1754294646; c=relaxed/simple; bh=KzsHo+kgUPlsYrEEWaRzzCYLsJoIf4O6K4gsx/pE5J4=; h=From:To:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=ao9OiEOT/yJbmY4vrBckiCjJS1UWPeYgN0uA36ug5O6wIkMxX22kmfb86Dli7KZxGWWy/g7jK/u5F4TgcYeEPzYzE+yaJzkFt7XJbTK6iGgr/KII7DRHQT6g9QBioU8mRnVokq5CQhR96vi/3Cx/RpRiEcMISZYrnO1HPbxTAS0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=gmx.de; spf=pass smtp.mailfrom=gmx.de; dkim=pass (2048-bit key) header.d=gmx.de header.i=markus.stockhausen@gmx.de header.b=c280J59d; arc=none smtp.client-ip=212.227.15.15 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=gmx.de Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmx.de Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmx.de header.i=markus.stockhausen@gmx.de header.b="c280J59d" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de; s=s31663417; t=1754294623; x=1754899423; i=markus.stockhausen@gmx.de; bh=TqB88G7sI205GAB/OWBTEwraPdPpAotdd3nrSs9o+Mk=; h=X-UI-Sender-Class:From:To:Subject:Date:Message-ID:In-Reply-To: References:MIME-Version:Content-Type:Content-Transfer-Encoding:cc: content-transfer-encoding:content-type:date:from:message-id: mime-version:reply-to:subject:to; b=c280J59diVslEJA02ad66rvfJ5vOk2ALp6jtX/ifuHoXViuynUs5Ajoh/MLr3wPu 5zN1pj3BtjwPmWA0DI9BY1w1NZDnkNh/dkuuHRbepjOdI7db5jNit0X9SpOzM3AM9 lXqwJ8Lhcp6Qg9eTlmLHQGU3TAhDdpwAnuSU8cGWl5AAvj079uGnkjqchO6Xa7aRw M2OIxLDNEqcEXVVO403dt/uAbn9OU/SF3fctgxseKDvgZrGRbg3gPZZGYyutHBNES INYRdEFs4+6CMkMGsoVGUZ1DXWQqXT9DsFtFbJnNPsX4ZN3oBHJ9s6fo7tYSoZKXi oZw303r4MnIJ7JP5Kw== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from openwrt ([94.31.70.55]) by mail.gmx.net (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1N7zFZ-1uWWFg1Dmd-00qtoE; Mon, 04 Aug 2025 10:03:43 +0200 From: Markus Stockhausen To: markus.stockhausen@gmx.de, daniel.lezcano@linaro.org, tglx@linutronix.de, linux-kernel@vger.kernel.org, howels@allthatwemight.be, bjorn@mork.no Subject: [PATCH 2/4] clocksource/drivers/timer-rtl-otto: drop set_counter function Date: Mon, 4 Aug 2025 04:03:26 -0400 Message-ID: <20250804080328.2609287-3-markus.stockhausen@gmx.de> X-Mailer: git-send-email 2.47.0 In-Reply-To: <20250804080328.2609287-1-markus.stockhausen@gmx.de> References: <20250804080328.2609287-1-markus.stockhausen@gmx.de> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Provags-ID: V03:K1:Xb6Z5QBZDqYurJnjHZaFbcyVZZ5Jc9R93Hd/lWpjyJv9g3C5KRz V2YDb9qoTnmrslAp+ywy7jJVNkC0s+UpjPCh94Y/RDqAlZwRimdgBI3kFOsBxqjpx3k3wwm ZRFpi67CeoXQ45u6ztzAtbpMPY5qsgmIDsMRT41FC/yJXrziCeilC4bQiu5Vmh5RK4xTovl 6uu4GR/bhyDIWyg0rFmeg== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:k63kHVqWMZI=;wnuyfROQS+065UrskAemgy6WyhH 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 eL82IbSD776PVw= Content-Type: text/plain; charset="utf-8" The current counter value is a read only register. It will be reset when writing a new target timer value with rttm_set_period(). rttm_set_counter() is essentially a noop. Drop it. While this makes rttm_start_timer() and rttm_enable_timer() the same functions keep both to make the established abstraction layers for register and control functions active. Downstream has already tested and confirmed a patch. See https://github.com/openwrt/openwrt/pull/19468 https://forum.openwrt.org/t/support-for-rtl838x-based-managed-switches/5787= 5/3788 Tested-by: Stephen Howell Tested-by: Bj=C3=B8rn Mork Signed-off-by: Markus Stockhausen --- drivers/clocksource/timer-rtl-otto.c | 6 ------ 1 file changed, 6 deletions(-) diff --git a/drivers/clocksource/timer-rtl-otto.c b/drivers/clocksource/tim= er-rtl-otto.c index 8be45a11fb8b..48ba1164f3fb 100644 --- a/drivers/clocksource/timer-rtl-otto.c +++ b/drivers/clocksource/timer-rtl-otto.c @@ -56,11 +56,6 @@ struct rttm_cs { }; =20 /* Simple internal register functions */ -static inline void rttm_set_counter(void __iomem *base, unsigned int count= er) -{ - iowrite32(counter, base + RTTM_CNT); -} - static inline unsigned int rttm_get_counter(void __iomem *base) { return ioread32(base + RTTM_CNT); @@ -137,7 +132,6 @@ static void rttm_stop_timer(void __iomem *base) =20 static void rttm_start_timer(struct timer_of *to, u32 mode) { - rttm_set_counter(to->of_base.base, 0); rttm_enable_timer(to->of_base.base, mode, to->of_clk.rate / RTTM_TICKS_PE= R_SEC); } =20 --=20 2.47.0 From nobody Sun Oct 5 12:50:53 2025 Received: from mout.gmx.net (mout.gmx.net [212.227.15.18]) (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 3FA5823A9BE for ; Mon, 4 Aug 2025 08:04:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=212.227.15.18 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1754294645; cv=none; b=uO+xnx/en7W2m3LhLmkhOHNijem5UvX4Y8qykdvaxt9qW4QJyaJ46QCHou4myJYVRr/R71JlLRgPvfqAeSTcwoHgkKB4SeUFF1AfVrc1uRzB0yhuPepsFFWo/WkJmKSoEaqU8PY8oiOvZFxSclztgaajE66q/hQBegch9L44nSs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1754294645; c=relaxed/simple; bh=vzFx82vV0vr6mMz1Z6IT0Dd2ubmzk/i7rSdHVE0NwHo=; h=From:To:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=pBXiau/OA3V7pur+2ERE5QXeI9CZMc0aqqLtKZv+BeUjFchq8JgHBaw2ZYivMivwBEkNFktHpX8/tJ0uQBPe6l4tYGeTuFJdO0usTXh+shHKexOV6ch4NMMOofnMlM+lH9YTkJ/Ii+vFCIpEAJHtC4VR61HA3qJ7Jya7kheEnX8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=gmx.de; spf=pass smtp.mailfrom=gmx.de; dkim=pass (2048-bit key) header.d=gmx.de header.i=markus.stockhausen@gmx.de header.b=LhIcN+jo; arc=none smtp.client-ip=212.227.15.18 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=gmx.de Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmx.de Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmx.de header.i=markus.stockhausen@gmx.de header.b="LhIcN+jo" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de; s=s31663417; t=1754294623; x=1754899423; i=markus.stockhausen@gmx.de; bh=HzVaQGDPIYSbSHCUX8mZ7P1G+XecZ/J/O7wLLc8uSwA=; h=X-UI-Sender-Class:From:To:Subject:Date:Message-ID:In-Reply-To: References:MIME-Version:Content-Type:Content-Transfer-Encoding:cc: content-transfer-encoding:content-type:date:from:message-id: mime-version:reply-to:subject:to; b=LhIcN+jo4hmBSS9oHtYZ256k6C9tkQ7MVn7c/HDIPvbeLb/o72i94EfWE5r2u63I CVBpn3BPWEqqXquAdgtghwMUE2Wz+AjmmHsFzHx9V/uvRFg+dEMEpNgeYeaCZHdvN 1k5TSp5oEUMqCShtxYa9YKa6sjkyHW3EZERL7i8HIMLGH0x1SvUjIpZzgvr3xz4Bo 6K03szUNEAnees7rTIzJLT6EGmzIc96fysOl7uW1YC6ITmUn9czhtpTL1OKM1xCVF CNL3Z8hYsv+3+yj3IibLzqXD+Tbgz7LhB0ajmtFoXydEH8hwfKhVJqtc+c2DvHh9U oPFV0tr82OZOchFAcg== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from openwrt ([94.31.70.55]) by mail.gmx.net (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1M26vL-1ulJ0Y1vTd-00G78G; Mon, 04 Aug 2025 10:03:43 +0200 From: Markus Stockhausen To: markus.stockhausen@gmx.de, daniel.lezcano@linaro.org, tglx@linutronix.de, linux-kernel@vger.kernel.org, howels@allthatwemight.be, bjorn@mork.no Subject: [PATCH 3/4] clocksource/drivers/timer-rtl-otto: do not interfere with interrupts Date: Mon, 4 Aug 2025 04:03:27 -0400 Message-ID: <20250804080328.2609287-4-markus.stockhausen@gmx.de> X-Mailer: git-send-email 2.47.0 In-Reply-To: <20250804080328.2609287-1-markus.stockhausen@gmx.de> References: <20250804080328.2609287-1-markus.stockhausen@gmx.de> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Provags-ID: V03:K1:0hXl94sGqeDwUOgo8GUI8UIukLFVGquOsqvgXAWbRnjUUnJxaRC bV1OV8DdhoJKertvLtIKs0Zaee4786ewbjzBb2v1CA7yESvw7PE7W3S5QP2NidPMp+pOr41 2f7G1l6ambU4u5zMudvPJWpyOnDtXgg0aLTILl8/kKYuopcu191FqW5uLqKT0nQtcgFNT2a 7F37VZfKAtkLOnH7ICcfQ== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:9WRsymVBm54=;2bEXltqR3YDJsgulS+pspUa3YFQ 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 aA== Content-Type: text/plain; charset="utf-8" During normal operation the timers are reprogrammed including an interrupt acknowledgement. This has no effect as the whole timer is setup from scratch afterwards. Especially in an interrupt this has already been done by rttm_timer_interrupt(). Change the behaviour as follows: - Use rttm_disable_timer() during reprogramming - Keep rttm_stop_timer() for all other use cases. Downstream has already tested and confirmed a patch. See https://github.com/openwrt/openwrt/pull/19468 https://forum.openwrt.org/t/support-for-rtl838x-based-managed-switches/5787= 5/3788 Tested-by: Stephen Howell Tested-by: Bj=C3=B8rn Mork Signed-off-by: Markus Stockhausen --- drivers/clocksource/timer-rtl-otto.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/clocksource/timer-rtl-otto.c b/drivers/clocksource/tim= er-rtl-otto.c index 48ba1164f3fb..42f702aca689 100644 --- a/drivers/clocksource/timer-rtl-otto.c +++ b/drivers/clocksource/timer-rtl-otto.c @@ -141,7 +141,7 @@ static int rttm_next_event(unsigned long delta, struct = clock_event_device *clkev =20 RTTM_DEBUG(to->of_base.base); rttm_bounce_timer(to->of_base.base, RTTM_CTRL_COUNTER); - rttm_stop_timer(to->of_base.base); + rttm_disable_timer(to->of_base.base); rttm_set_period(to->of_base.base, delta); rttm_start_timer(to, RTTM_CTRL_COUNTER); =20 @@ -154,7 +154,7 @@ static int rttm_state_oneshot(struct clock_event_device= *clkevt) =20 RTTM_DEBUG(to->of_base.base); rttm_bounce_timer(to->of_base.base, RTTM_CTRL_COUNTER); - rttm_stop_timer(to->of_base.base); + rttm_disable_timer(to->of_base.base); rttm_set_period(to->of_base.base, RTTM_TICKS_PER_SEC / HZ); rttm_start_timer(to, RTTM_CTRL_COUNTER); =20 @@ -167,7 +167,7 @@ static int rttm_state_periodic(struct clock_event_devic= e *clkevt) =20 RTTM_DEBUG(to->of_base.base); rttm_bounce_timer(to->of_base.base, RTTM_CTRL_TIMER); - rttm_stop_timer(to->of_base.base); + rttm_disable_timer(to->of_base.base); rttm_set_period(to->of_base.base, RTTM_TICKS_PER_SEC / HZ); rttm_start_timer(to, RTTM_CTRL_TIMER); =20 --=20 2.47.0 From nobody Sun Oct 5 12:50:53 2025 Received: from mout.gmx.net (mout.gmx.net [212.227.15.19]) (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 212E4235045 for ; Mon, 4 Aug 2025 08:04:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=212.227.15.19 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1754294645; cv=none; b=PYst5mFAks41avi9wwxCmtXfNItGCHwkR7jyYC154WupnJHUA69dxYdKFafajIEpl4PtUIoFXp0LJ99RfRDePDme2mTmL/2dYXzP8j42fmTqMylURtH8jIpRsRDNBtO4Mf2AIFxS7SGVfOMsQOvWBnzSDn+yfwqBzVHupSCmAz4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1754294645; c=relaxed/simple; bh=vM/64Xm9BoHSIklScFHYPjkxIx0tlfo7hzjJbLJM3CA=; h=From:To:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Z44ga9/KXnala1/ywRIOB3fbz2re5t/uR07EJ00wOJsjQwhlhoMe5KvIFw0JlGQ3fLY5Oxvfup9X3pV0+0KQOsz7WYtt5KnMG9Yql3m/NjhnlmiXqVLNaGnsbDvxrCS1P86KBvNNuSK9CDEeiIqU7Nnp+ZW1fuzp0EU84f19ndo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=gmx.de; spf=pass smtp.mailfrom=gmx.de; dkim=pass (2048-bit key) header.d=gmx.de header.i=markus.stockhausen@gmx.de header.b=IGhs0aG2; arc=none smtp.client-ip=212.227.15.19 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=gmx.de Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmx.de Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmx.de header.i=markus.stockhausen@gmx.de header.b="IGhs0aG2" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de; s=s31663417; t=1754294624; x=1754899424; i=markus.stockhausen@gmx.de; bh=g1rzoG9f0oHQcMo7RkUNLvEibz7XkPzWojlZocSeReI=; h=X-UI-Sender-Class:From:To:Subject:Date:Message-ID:In-Reply-To: References:MIME-Version:Content-Transfer-Encoding:cc: content-transfer-encoding:content-type:date:from:message-id: mime-version:reply-to:subject:to; b=IGhs0aG2JRTSgPoI3iGeDdm5ddcdcMyWF7eoXFgn5GU4OmdNPS+oFmdbFQBP4TzS BUTMaoznHQou3pujlXslhSHlXcACScN/yhZGkXmT8CNHBC2sjGOylXjoFI4SCHGX7 YYeMpIpgJdVS1I0hJW37Glcp0UqBeW6aSFYRZmgEgv1tWNByjOqLfwEqORiH+nnfP Kb6jM/C2i5fraMbhOmT23Rd3A4vS8mzujErYVvS+4TLOrb9Oi59uduYMSQ+8MjMYH sqMowSVtpxWDG3A9/qXPd65xnWx3dH2AFadR7/EGmmW2sPS9+xwqLyClurNIBAalI Gma2e5sgnDOZx+5oBw== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from openwrt ([94.31.70.55]) by mail.gmx.net (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MEUzA-1upxyf2cJO-002ejv; Mon, 04 Aug 2025 10:03:43 +0200 From: Markus Stockhausen To: markus.stockhausen@gmx.de, daniel.lezcano@linaro.org, tglx@linutronix.de, linux-kernel@vger.kernel.org, howels@allthatwemight.be, bjorn@mork.no Subject: [PATCH 4/4] clocksource/drivers/timer-rtl-otto: simplify documentation Date: Mon, 4 Aug 2025 04:03:28 -0400 Message-ID: <20250804080328.2609287-5-markus.stockhausen@gmx.de> X-Mailer: git-send-email 2.47.0 In-Reply-To: <20250804080328.2609287-1-markus.stockhausen@gmx.de> References: <20250804080328.2609287-1-markus.stockhausen@gmx.de> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Provags-ID: V03:K1:mcAzbTgXMmIRzGD6D4AVBX5ajz08F82s1hYcUTqdf+7ffLgpMxP g1wYZ1Mo9PtaaygkXfRJaHlCilM9tELAwRhgKXZhyIrhn78vax4zO/Y/CmDr3AbFh/o1CZi 1UqbSwrvcPCKVmoehQJZhl5RILLDZ//LWI3t1YTKqzoBf5haG47iqxTS19xWRuPQ2dAphtC M/ib9mRoHbjai7APdgJMw== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:y2cf+GR8dAQ=;jAJ/UduJdY6DTrU/sBLQl+jktAH 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 Content-Type: text/plain; charset="utf-8" While the main SoC PLL is responsible for the lexra bus frequency it has no implications on the the timer divisior. Update the comments accordingly. Signed-off-by: Markus Stockhausen --- drivers/clocksource/timer-rtl-otto.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/drivers/clocksource/timer-rtl-otto.c b/drivers/clocksource/tim= er-rtl-otto.c index 42f702aca689..6113d2fdd4de 100644 --- a/drivers/clocksource/timer-rtl-otto.c +++ b/drivers/clocksource/timer-rtl-otto.c @@ -41,12 +41,10 @@ #define RTTM_MAX_DIVISOR GENMASK(15, 0) =20 /* - * Timers are derived from the LXB clock frequency. Usually this is a fixed - * multiple of the 25 MHz oscillator. The 930X SOC is an exception from th= at. - * Its LXB clock has only dividers and uses the switch PLL of 2.45 GHz as = its - * base. The only meaningful frequencies we can achieve from that are 175.= 000 - * MHz and 153.125 MHz. The greatest common divisor of all explained possi= ble - * speeds is 3125000. Pin the timers to this 3.125 MHz reference frequency. + * Timers are derived from the lexra bus (LXB) clock frequency. This is 17= 5 MHz + * on RTL930x and 200 MHz on the other platforms. With 3.125 MHz choose a = common + * divisor to have enough range and detail. This provides comparability be= tween + * the different platforms. */ #define RTTM_TICKS_PER_SEC 3125000 =20 --=20 2.47.0