{"id":2231941,"url":"http://patchwork.ozlabs.org/api/1.2/patches/2231941/?format=json","web_url":"http://patchwork.ozlabs.org/project/linux-gpio/patch/20260501155421.3329862-4-elder@riscstar.com/","project":{"id":42,"url":"http://patchwork.ozlabs.org/api/1.2/projects/42/?format=json","name":"Linux GPIO development","link_name":"linux-gpio","list_id":"linux-gpio.vger.kernel.org","list_email":"linux-gpio@vger.kernel.org","web_url":"","scm_url":"","webscm_url":"","list_archive_url":"","list_archive_url_format":"","commit_url_format":""},"msgid":"<20260501155421.3329862-4-elder@riscstar.com>","list_archive_url":null,"date":"2026-05-01T15:54:11","name":"[net-next,03/12] net: pcs: pcs-xpcs: Preserve BMCR_ANENBLE during link up","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"a7707d3b0600ede6afdf3458b6f99dd33c3b1fc5","submitter":{"id":89551,"url":"http://patchwork.ozlabs.org/api/1.2/people/89551/?format=json","name":"Alex Elder","email":"elder@riscstar.com"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/linux-gpio/patch/20260501155421.3329862-4-elder@riscstar.com/mbox/","series":[{"id":502478,"url":"http://patchwork.ozlabs.org/api/1.2/series/502478/?format=json","web_url":"http://patchwork.ozlabs.org/project/linux-gpio/list/?series=502478","date":"2026-05-01T15:54:09","name":"net: enable TC956x support","version":1,"mbox":"http://patchwork.ozlabs.org/series/502478/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/2231941/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/2231941/checks/","tags":{},"related":[],"headers":{"Return-Path":"\n <linux-gpio+bounces-35955-incoming=patchwork.ozlabs.org@vger.kernel.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linux-gpio@vger.kernel.org"],"Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=riscstar-com.20251104.gappssmtp.com\n header.i=@riscstar-com.20251104.gappssmtp.com header.a=rsa-sha256\n header.s=20251104 header.b=Z5pLDII9;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=2600:3c04:e001:36c::12fc:5321; helo=tor.lore.kernel.org;\n envelope-from=linux-gpio+bounces-35955-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)","smtp.subspace.kernel.org;\n\tdkim=pass (2048-bit key) header.d=riscstar-com.20251104.gappssmtp.com\n header.i=@riscstar-com.20251104.gappssmtp.com header.b=\"Z5pLDII9\"","smtp.subspace.kernel.org;\n arc=none smtp.client-ip=209.85.219.49","smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=riscstar.com","smtp.subspace.kernel.org;\n spf=pass smtp.mailfrom=riscstar.com"],"Received":["from tor.lore.kernel.org (tor.lore.kernel.org\n [IPv6:2600:3c04:e001:36c::12fc:5321])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g6bL72977z1xqf\n\tfor <incoming@patchwork.ozlabs.org>; Sat, 02 May 2026 01:58:23 +1000 (AEST)","from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby tor.lore.kernel.org (Postfix) with ESMTP id 7FA7C30455F2\n\tfor <incoming@patchwork.ozlabs.org>; Fri,  1 May 2026 15:55:05 +0000 (UTC)","from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 45C2A3D75BC;\n\tFri,  1 May 2026 15:54:41 +0000 (UTC)","from mail-qv1-f49.google.com (mail-qv1-f49.google.com\n [209.85.219.49])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id F411A3D3302\n\tfor <linux-gpio@vger.kernel.org>; Fri,  1 May 2026 15:54:38 +0000 (UTC)","by mail-qv1-f49.google.com with SMTP id\n 6a1803df08f44-8b62ca1d28eso2336696d6.2\n        for <linux-gpio@vger.kernel.org>;\n Fri, 01 May 2026 08:54:38 -0700 (PDT)","from zippy.localdomain (c-75-72-117-212.hsd1.mn.comcast.net.\n [75.72.117.212])\n        by smtp.gmail.com with ESMTPSA id\n 6a1803df08f44-8b539aa7293sm26615406d6.22.2026.05.01.08.54.34\n        (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n        Fri, 01 May 2026 08:54:37 -0700 (PDT)"],"ARC-Seal":"i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1777650881; cv=none;\n b=J3//Yhw3xDjzeT5fBFWymP8tqrEAofXClXo2wxbL4RP5wsB940YVxZ5Hm0h72oeRhEwo0r6OEoGmY7AQeGQb5xTBMbSVb+zd4bdfGoQqnIPtXBF6ZldiDSKC7ieXARLg5bwIOtyzemXJs9B6Jps5xahEb6Upo98W149Ix6B/lRs=","ARC-Message-Signature":"i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1777650881; c=relaxed/simple;\n\tbh=vSMz0fMwD5nvE28rW2N/JHi9BJvlZF2OiadS95iYJ7w=;\n\th=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References:\n\t MIME-Version;\n b=PfiX54s2+X7wJBGESm85ZGFnKaxNE4TLWErxJVjNT1hl8b8ursTjlXeW/Z1+M+Ba9NjuFhBPvOCpHnLry6m5S/wAW52W7WN5oSX2qKxh6TlpQvD4MGDUhiFH/SpoCPL9dB8ooNojeQkbOFPYw7QEVD0foD+iPjM2bcHngwkrAkk=","ARC-Authentication-Results":"i=1; smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=riscstar.com;\n spf=pass smtp.mailfrom=riscstar.com;\n dkim=pass (2048-bit key) header.d=riscstar-com.20251104.gappssmtp.com\n header.i=@riscstar-com.20251104.gappssmtp.com header.b=Z5pLDII9;\n arc=none smtp.client-ip=209.85.219.49","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=riscstar-com.20251104.gappssmtp.com; s=20251104; t=1777650878;\n x=1778255678; darn=vger.kernel.org;\n        h=content-transfer-encoding:mime-version:references:in-reply-to\n         :message-id:date:subject:cc:to:from:from:to:cc:subject:date\n         :message-id:reply-to;\n        bh=aVr8Clh+n9i4UIz8+5GUPFBuftN5UkiMGfqWWtAa7So=;\n        b=Z5pLDII9inAZIYRk3mHwRycVsXtkdv+tJIEvThfg1icNH8qCTRn+9tTfuMPeovkW7P\n         aQyfaIEH442Fs0eM8ndBTO2CA74qq3PvbpncoYETsKlrO1XAZ+Aa/TUPukzfqc0z42dg\n         bjLWAYawkJmCx/oTfbXnbGm1HowNQ1loVD+lWT9od8pPZFGuQmtJJn10620MKicg1cXp\n         brPPS5wXGQWUUmaMzR8555yBCFcstfLYTEsZN6RqjSP+ev8ympE/3h8ThKfQfkvZoZ9G\n         nHyRUL0Afm51WMx/9vtY0l+lbCP7perMn1H3HIk+UUBm8ab9lrekzEb3fdpREmkWP5Y+\n         4C/A==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=1e100.net; s=20251104; t=1777650878; x=1778255678;\n        h=content-transfer-encoding:mime-version:references:in-reply-to\n         :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from\n         :to:cc:subject:date:message-id:reply-to;\n        bh=aVr8Clh+n9i4UIz8+5GUPFBuftN5UkiMGfqWWtAa7So=;\n        b=H9TzJj19qDh1sb4s1UFUpCcwBPI0imzyvlHq/dLKpWgXbDvakqTJe+bS3RXbd+mezH\n         /+rduvF+FqeJLqnD0lIajmew6HUGpcIAldqjVsx69mF9nOY4JylKVDdYaEnqKpbtT/tS\n         Z+3ylfmD5vT0+SIVhO/QKXJ+NYQaeRX6/7u07QH/wIPCZC4NYslQAKO+rSsPi2LtumGo\n         lVt8mtINXH18rbpgTfK0Y9CXOX6NzJ0D0i9cQqDbLte5U2F1u7NWveiK+r6Uva8XKv8s\n         gZorC5RSwEIx3j47N5XtYuSZEwZsYGpmkLF8+nELzUXfC+HOyhfJsMtvsCP/CFENkY0c\n         MC8A==","X-Forwarded-Encrypted":"i=1;\n AFNElJ+4G7AAQYmMUX6255tKv468DcryM3RdDJD+aX1f50VUTibO24IV9dMhZetG74u9mFSaq17QwmyQencv@vger.kernel.org","X-Gm-Message-State":"AOJu0YxhphIWJMwdbxHs+7Pe8Hr/tqGixkE80mkT+4c8PujwgbG/2gAt\n\tDyVXZLueP+dHL/dSx/rEpSfv8ZUcZB3vs0C+kNgh8N+MXHZJpm0u0FXuuEjONWE2svc=","X-Gm-Gg":"AeBDievH/3M5xNMcorhSE8oV0pgpbI+AVLOQsw+wG5uz5kmy0Tsjk8d5xthjUjynxYz\n\t6sZovVl89+nuOzYTv793xIiwGTskEFje+upPd+79gr8FrdviG9cyMWhIW10Hswe9r4xFiOMPguu\n\tsfjzIRNGQ8rHT+Ki+AyWDQ6Vbz0AJDw71qdO/0gplmfbQN9Our7aLUwUkKFzJq+N+ANPCIk5w2Y\n\t+rOPDBxEOkkQEmT4w2nj0C7X53H6tIu9dfRJXjUPeIUJwx6KyWLG/a6yrsIvqqKJqioXojUUcgW\n\tRx/yBUe8wrXGdyBFuy32effGV4lPWY+E2M2n/6sEbKGGhSLURekUGCTlKLQDEcEyhLmeQ3MPRf+\n\tVvSD0q9rhy7kmYxQG6T/9BK6VTqUHeMTcblOXLD71s3MlEv+Nt2Tz1i/u6Xb63BBE+qBTJWArLJ\n\tlxekVS69IxxN5FPpg8fFv5BwrjH4VU5AapzHxwZB8PsfPv5LKYWXFnN/q0sZVfnsAnoc8pFGbiC\n\t23MCA==","X-Received":"by 2002:a05:6214:483:b0:8ac:bb62:fe4a with SMTP id\n 6a1803df08f44-8b665f02857mr1068856d6.5.1777650878062;\n        Fri, 01 May 2026 08:54:38 -0700 (PDT)","From":"Alex Elder <elder@riscstar.com>","To":"andrew+netdev@lunn.ch,\n\tdavem@davemloft.net,\n\tedumazet@google.com,\n\tkuba@kernel.org,\n\tpabeni@redhat.com,\n\tmaxime.chevallier@bootlin.com,\n\trmk+kernel@armlinux.org.uk,\n\tandersson@kernel.org,\n\tkonradybcio@kernel.org,\n\trobh@kernel.org,\n\tkrzk+dt@kernel.org,\n\tconor+dt@kernel.org,\n\tlinusw@kernel.org,\n\tbrgl@kernel.org,\n\tarnd@arndb.de,\n\tgregkh@linuxfoundation.org","Cc":"Daniel Thompson <daniel@riscstar.com>,\n\telder@riscstar.com,\n\tmohd.anwar@oss.qualcomm.com,\n\ta0987203069@gmail.com,\n\talexandre.torgue@foss.st.com,\n\tast@kernel.org,\n\tboon.khai.ng@altera.com,\n\tchenchuangyu@xiaomi.com,\n\tchenhuacai@kernel.org,\n\tdaniel@iogearbox.net,\n\thawk@kernel.org,\n\thkallweit1@gmail.com,\n\tinochiama@gmail.com,\n\tjohn.fastabend@gmail.com,\n\tjulianbraha@gmail.com,\n\tlivelycarpet87@gmail.com,\n\tmatthew.gerlach@altera.com,\n\tmcoquelin.stm32@gmail.com,\n\tme@ziyao.cc,\n\tprabhakar.mahadev-lad.rj@bp.renesas.com,\n\trichardcochran@gmail.com,\n\trohan.g.thomas@altera.com,\n\tsdf@fomichev.me,\n\tsiyanteng@cqsoftware.com.cn,\n\tweishangjuan@eswincomputing.com,\n\twens@kernel.org,\n\tnetdev@vger.kernel.org,\n\tbpf@vger.kernel.org,\n\tlinux-arm-msm@vger.kernel.org,\n\tdevicetree@vger.kernel.org,\n\tlinux-gpio@vger.kernel.org,\n\tlinux-stm32@st-md-mailman.stormreply.com,\n\tlinux-arm-kernel@lists.infradead.org,\n\tlinux-kernel@vger.kernel.org","Subject":"[PATCH net-next 03/12] net: pcs: pcs-xpcs: Preserve BMCR_ANENBLE\n during link up","Date":"Fri,  1 May 2026 10:54:11 -0500","Message-ID":"<20260501155421.3329862-4-elder@riscstar.com>","X-Mailer":"git-send-email 2.51.0","In-Reply-To":"<20260501155421.3329862-1-elder@riscstar.com>","References":"<20260501155421.3329862-1-elder@riscstar.com>","Precedence":"bulk","X-Mailing-List":"linux-gpio@vger.kernel.org","List-Id":"<linux-gpio.vger.kernel.org>","List-Subscribe":"<mailto:linux-gpio+subscribe@vger.kernel.org>","List-Unsubscribe":"<mailto:linux-gpio+unsubscribe@vger.kernel.org>","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit"},"content":"From: Daniel Thompson <daniel@riscstar.com>\n\nCurrently the XCPS found on Toshiba TC9564 (a.k.a. Qualcomm QPS615)\nis unable to operate at 1000base-X and slower with a PHY connected\nusing SGMII/2500base-X (in our case a Qualcomm QCA8081). The link\nnegotiates speed correctly but the MAC can't get any packets out.\n\nThis attracted attention to the ANENABLE bit and we observed that the\nbit is currently set during config and cleared during link up.\nPreserving the bit during link up allows the system to work as expected.\n\nPerhaps I lack the imagination but I couldn't come up with any reason\nwhy keeping the ANENABLE bit set would break things for other XPCS\nimplementations. Let's ensure link up sets the bit for SGMII interfaces.\n\nSigned-off-by: Daniel Thompson <daniel@riscstar.com>\nSigned-off-by: Alex Elder <elder@riscstar.com>\n---\n drivers/net/pcs/pcs-xpcs.c | 5 ++++-\n 1 file changed, 4 insertions(+), 1 deletion(-)","diff":"diff --git a/drivers/net/pcs/pcs-xpcs.c b/drivers/net/pcs/pcs-xpcs.c\nindex b2c84b7e1e113..1d62d5b31c61c 100644\n--- a/drivers/net/pcs/pcs-xpcs.c\n+++ b/drivers/net/pcs/pcs-xpcs.c\n@@ -1263,11 +1263,14 @@ static void xpcs_link_up_sgmii_1000basex(struct dw_xpcs *xpcs,\n \t\t\t\t\t phy_interface_t interface,\n \t\t\t\t\t int speed, int duplex)\n {\n+\tu16 an_enable;\n \tint ret;\n \n \tif (neg_mode == PHYLINK_PCS_NEG_INBAND_ENABLED)\n \t\treturn;\n \n+\tan_enable = (interface == PHY_INTERFACE_MODE_SGMII ? BMCR_ANENABLE : 0);\n+\n \tif (interface == PHY_INTERFACE_MODE_1000BASEX) {\n \t\tif (speed != SPEED_1000) {\n \t\t\tdev_err(&xpcs->mdiodev->dev,\n@@ -1283,7 +1286,7 @@ static void xpcs_link_up_sgmii_1000basex(struct dw_xpcs *xpcs,\n \t}\n \n \tret = xpcs_write(xpcs, MDIO_MMD_VEND2, MII_BMCR,\n-\t\t\t mii_bmcr_encode_fixed(speed, duplex));\n+\t\t\t mii_bmcr_encode_fixed(speed, duplex) | an_enable);\n \tif (ret)\n \t\tdev_err(&xpcs->mdiodev->dev, \"%s: xpcs_write returned %pe\\n\",\n \t\t\t__func__, ERR_PTR(ret));\n","prefixes":["net-next","03/12"]}