From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wm1-f52.google.com (mail-wm1-f52.google.com [209.85.128.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 819B42D3EE5 for ; Thu, 5 Mar 2026 10:41:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.52 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772707303; cv=none; b=CRN2Hl1I6+OVY4v9VMngrrTRPlMRDvfFIhrGfC0J1K+iKmvQmj/WxdFH/9PbImh0apRyGBnFBW8co++qb/jQnlHrUea9fbV3FNvHLR4TG0iMyh4LphSxhrqreeIUiQqejswsKim4kh6FbwN57Gm+oc+L4b/i9opoR9Gfq6oHM6U= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772707303; c=relaxed/simple; bh=BiD0vSs1uRo+SuuIvS70kuwMhR7WLva1VsuKsB/4qSQ=; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version:Content-Type; b=SzfHiqiM2YxfJ8I5QGaF2m8p4ba/cqBXhimWfN1cxORJU37guLLZUbe4GelmSrqSZdUASRrK3Z7mOiDHyoA4CVMaIpu1/r3iR32WaCawfJFu7h6Exo4Vhk5o64KwElfFxsF4QZzID26jYxCg6vBNhofXrYGLmIRpE9gIQm7uQo4= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=NCbUk/MZ; arc=none smtp.client-ip=209.85.128.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="NCbUk/MZ" Received: by mail-wm1-f52.google.com with SMTP id 5b1f17b1804b1-4806bf39419so65100395e9.1 for ; Thu, 05 Mar 2026 02:41:42 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1772707301; x=1773312101; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=Uy5K6i+BQ/ZCb+F1ScR3BTCuEFkunym54py6/4zT4Xk=; b=NCbUk/MZmmRaF8mVgQmXzixLdQBR4za+ml6fKEDGr9kkgjeJnVLnba59H+j92/vQZB OQ2CKeamnceNMz+CZotZ3kEaa7RzoWQrF1mcmAQML0mjrza1WdABwWeLl2VIR5p6KCa1 AwCVaY5qDOEBxw0AjvbRIPlJ8JWN3AfZ2ZOFBLcnEiXW15Yg+c/nJ7eaBvpXg1gOXvfg XIhWbkfeVlyaCESMAIENewbx1EgfqdXOp61i47WPCfbJvYUMZuSv8ExxPVUm2YXvjdUu jeP6IgCaOL7iwMmAq8sCOc7DLJSUmUx7LvGrY0cflIhPbftcXbLTy+zvaLb85Er91BYY UFFQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772707301; x=1773312101; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=Uy5K6i+BQ/ZCb+F1ScR3BTCuEFkunym54py6/4zT4Xk=; b=mjOdUByh7XsELCu6Rh3uLyFcbIXsxGzgBmtM8TxOwECK34Br29ujiznHEabkhqPLp/ jQ9eSFFyzuN0sdPO4waYnkTlfMpeThUZWri4QZjTt6lPYE48VKNNHp81H+mHtDD0k1xl /hQG9T0m4XyWzfVLG/2JlQMeUEF561xAsbL7IlKhwsPx1Z0JMCHN3T4pMJtc2OZq6Byv Kcan6DJHm+bkGHybTmFWM8wkxlJxDt/73gq3RwknqaUMD+WFc9GCA4xGf6SQ3EijoL8j tMRqhCcAT1o8i0CR9abQN5hby/0zOSly1SVAXcQDvNNLHYhnkCdiVgrvk75rEac4JoXR tutA== X-Forwarded-Encrypted: i=1; AJvYcCX9AXXDG8T44liYxFLkcIBuECKWOhQO9rECeBUifVon6Sh/vSRehkByBhxMzhGusa4LcaFd1+aSX/pWQ34=@vger.kernel.org X-Gm-Message-State: AOJu0YwxrskXLEppuXOW6o/wUF8WZyxcCrDjHOmvGjveiK987CdrdrYL 0cd6zY2Mjo9seDmHtZDCK0m2jOHKTGSDSZtXiPsTm9NurpPbisFGPQk9 X-Gm-Gg: ATEYQzxd1JgiCGDjCjTqKf1UAxe87kPXYSCyJ/dox6Sjas8raCVoiDrDvuVrPxX1ZOk ZEhHl3vTGqsVNDVr7Rf+aqjycHkCGHlTPejlsPq0Ep1eVTPfT+FN1W7LGJkCRgZy50+By8a9JxY xHmyP/sX98kFVgfiVx1NWUAoBpQkJlBdMg/qquwqCTK2HqJx0hoazZ+jOeKy7vcQUngm/TPSI38 B5rXJrsLkGeNnoHP3UznIA9rp0WgFRjA3u6roaNhPEvREScGLuI6APfC8o+J7ojlYM6TK5xGiD0 qQB4jJwa5ovQ1ZF3zgvZT/9EhGtprabIOTp3kpEWmSVUIvj54S9U0hSgnm9gGWzb4YwYINaOq8G a/q62TnWYwD6/gcOM0JX78gGRdeMCbtPP/LfmDazsNNBSkC1DODYZ58acqG+2cGN25Yv7gdHLZa f8Q64gqr/c00EifRkQpfvkvfaRmoqBk3WFH8YHBKwHrDMamXPAegrzvxx/MlSO7ndDSaIZiRWgA qj30LXqyIKo X-Received: by 2002:a05:600c:1d21:b0:47d:403a:277 with SMTP id 5b1f17b1804b1-4851ee7b570mr29539135e9.4.1772707300639; Thu, 05 Mar 2026 02:41:40 -0800 (PST) Received: from snowdrop.snailnet.com (82-69-66-36.dsl.in-addr.zen.co.uk. [82.69.66.36]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-439b03db76bsm34322545f8f.18.2026.03.05.02.41.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 05 Mar 2026 02:41:40 -0800 (PST) From: david.laight.linux@gmail.com To: Johannes Zink , Alexandre Torgue , =?UTF-8?q?Alexis=20Lothor=C3=A9?= , Andrew Lunn , Bartosz Golaszewski , Chen-Yu Tsai , "David S. Miller" , Eric Dumazet , Gatien Chevallier , Jakub Kicinski , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-stm32@st-md-mailman.stormreply.com, Maxime Chevallier , Maxime Coquelin , netdev@vger.kernel.org, Paolo Abeni , "Russell King (Oracle)" Cc: David Laight Subject: [PATCH net-next 1/1] net: stmac: actually error requests to change the auxiliary snapshot capture channel Date: Thu, 5 Mar 2026 10:41:33 +0000 Message-Id: <20260305104133.3101-1-david.laight.linux@gmail.com> X-Mailer: git-send-email 2.39.5 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit From: David Laight Commit 2ddd05d1d5ed ("net: stmmac: do not silently change auxiliary snapshot capture channel") added code that attempted to return -EBUSY to a PTP_CLK_REQ_EXTTS request whan a snapshot was already enabled. However it tested bits in 'acr_value' after they had been masked off so the check would never return an error. Change the code so that the test actually works. Note that when the commit message says: Previously in case of a PTP_CLK_REQ_EXTTS request, previously active auxiliary snapshot capture channels were silently dropped and the new channel was activated. this only refers to two commits earlier (a few minutes earlier). Prior to that only a single fixed snapshot channel could be enabled. Note that the check will reject requests to re-enable the currently enabled channel. Plausibly the best fix is just to delete the check completely. Signed-off-by: David Laight --- Found by a test for FIELD_GET() returning 'constant zero' from a non-constant 'reg' value. drivers/net/ethernet/stmicro/stmmac/stmmac_ptp.c | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_ptp.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_ptp.c index 3e30172fa129..aa17335a2031 100644 --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_ptp.c +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_ptp.c @@ -222,19 +222,16 @@ static int stmmac_enable(struct ptp_clock_info *ptp, write_unlock_irqrestore(&priv->ptp_lock, flags); break; } - case PTP_CLK_REQ_EXTTS: { - u8 channel; - + case PTP_CLK_REQ_EXTTS: mutex_lock(&priv->aux_ts_lock); acr_value = readl(ptpaddr + PTP_ACR); - channel = ilog2(FIELD_GET(PTP_ACR_MASK, acr_value)); - acr_value &= ~PTP_ACR_MASK; if (on) { - if (FIELD_GET(PTP_ACR_MASK, acr_value)) { + u32 enabled_snapshots = FIELD_GET(PTP_ACR_MASK, acr_value); + if (enabled_snapshots) { netdev_err(priv->dev, "Cannot enable auxiliary snapshot %d as auxiliary snapshot %d is already enabled", - rq->extts.index, channel); + rq->extts.index, ilog2(enabled_snapshots)); mutex_unlock(&priv->aux_ts_lock); return -EBUSY; } @@ -245,6 +242,7 @@ static int stmmac_enable(struct ptp_clock_info *ptp, acr_value |= PTP_ACR_ATSEN(rq->extts.index); acr_value |= PTP_ACR_ATSFC; } else { + acr_value &= ~PTP_ACR_MASK; priv->plat->flags &= ~STMMAC_FLAG_EXT_SNAPSHOT_EN; } netdev_dbg(priv->dev, "Auxiliary Snapshot %d %s.\n", @@ -256,7 +254,6 @@ static int stmmac_enable(struct ptp_clock_info *ptp, !(acr_value & PTP_ACR_ATSFC), 10, 10000); break; - } default: break; -- 2.39.5