From: Arnd Bergmann <arnd@kernel.org>
To: Giuseppe Cavallaro <peppe.cavallaro@st.com>,
Alexandre Torgue <alexandre.torgue@foss.st.com>,
Jose Abreu <joabreu@synopsys.com>,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
Maxime Coquelin <mcoquelin.stm32@gmail.com>,
Simon Horman <simon.horman@corigine.com>,
Maxime Chevallier <maxime.chevallier@bootlin.com>
Cc: Arnd Bergmann <arnd@arndb.de>,
Christian Marangi <ansuelsmth@gmail.com>,
Jon Hunter <jonathanh@nvidia.com>,
Bhadram Varka <vbhadram@nvidia.com>,
Samin Guo <samin.guo@starfivetech.com>,
netdev@vger.kernel.org, linux-stm32@st-md-mailman.stormreply.com,
linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org
Subject: [PATCH 1/2] stmmac: fix pcs_lynx link failure
Date: Wed, 7 Jun 2023 15:56:32 +0200 [thread overview]
Message-ID: <20230607135638.1341101-1-arnd@kernel.org> (raw)
From: Arnd Bergmann <arnd@arndb.de>
The mdio code in stmmac now directly links into both the lynx_pcs and
the xpcs device drivers, but the lynx_pcs dependency is only enforced
for the altera variant of stmmac, which is the one that actually uses it.
Building stmmac for a non-altera platform therefore causes a link
failure:
arm-linux-gnueabi-ld: drivers/net/ethernet/stmicro/stmmac/stmmac_mdio.o: in function `stmmac_mdio_unregister':
stmmac_mdio.c:(.text+0x1418): undefined reference to `lynx_pcs_destroy'
I've tried to come up with a patch that moves this dependency back into
the dwmac-socfpga.c file, but there was no easy and obvious way to
do this. It also seems that this would not be a proper solution, but
instead there should be a real abstraction for pcs drivers that lets
device drivers handle this transparently.
As the lynx_pcs driver is tiny, it appears that we can just avoid the
link error by always forcing it to be built when the stmmac driver
is, even for non-altera platforms. This matches what we already do
for the xpcs variant that is used by the intel and tegra variants of
stmmac.
Fixes: 5d1f3fe7d2d54 ("net: stmmac: dwmac-sogfpga: use the lynx pcs driver")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
drivers/net/ethernet/stmicro/stmmac/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/stmicro/stmmac/Kconfig b/drivers/net/ethernet/stmicro/stmmac/Kconfig
index 5583f0b055ec7..fa956f2081a53 100644
--- a/drivers/net/ethernet/stmicro/stmmac/Kconfig
+++ b/drivers/net/ethernet/stmicro/stmmac/Kconfig
@@ -5,6 +5,7 @@ config STMMAC_ETH
depends on PTP_1588_CLOCK_OPTIONAL
select MII
select PCS_XPCS
+ select PCS_LYNX
select PAGE_POOL
select PHYLINK
select CRC32
@@ -160,7 +161,6 @@ config DWMAC_SOCFPGA
select MFD_SYSCON
select MDIO_REGMAP
select REGMAP_MMIO
- select PCS_LYNX
help
Support for ethernet controller on Altera SOCFPGA
--
2.39.2
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
WARNING: multiple messages have this Message-ID (diff)
From: Arnd Bergmann <arnd@kernel.org>
To: Giuseppe Cavallaro <peppe.cavallaro@st.com>,
Alexandre Torgue <alexandre.torgue@foss.st.com>,
Jose Abreu <joabreu@synopsys.com>,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
Maxime Coquelin <mcoquelin.stm32@gmail.com>,
Simon Horman <simon.horman@corigine.com>,
Maxime Chevallier <maxime.chevallier@bootlin.com>
Cc: Arnd Bergmann <arnd@arndb.de>,
Christian Marangi <ansuelsmth@gmail.com>,
Jon Hunter <jonathanh@nvidia.com>,
Bhadram Varka <vbhadram@nvidia.com>,
Samin Guo <samin.guo@starfivetech.com>,
netdev@vger.kernel.org, linux-stm32@st-md-mailman.stormreply.com,
linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org
Subject: [PATCH 1/2] stmmac: fix pcs_lynx link failure
Date: Wed, 7 Jun 2023 15:56:32 +0200 [thread overview]
Message-ID: <20230607135638.1341101-1-arnd@kernel.org> (raw)
From: Arnd Bergmann <arnd@arndb.de>
The mdio code in stmmac now directly links into both the lynx_pcs and
the xpcs device drivers, but the lynx_pcs dependency is only enforced
for the altera variant of stmmac, which is the one that actually uses it.
Building stmmac for a non-altera platform therefore causes a link
failure:
arm-linux-gnueabi-ld: drivers/net/ethernet/stmicro/stmmac/stmmac_mdio.o: in function `stmmac_mdio_unregister':
stmmac_mdio.c:(.text+0x1418): undefined reference to `lynx_pcs_destroy'
I've tried to come up with a patch that moves this dependency back into
the dwmac-socfpga.c file, but there was no easy and obvious way to
do this. It also seems that this would not be a proper solution, but
instead there should be a real abstraction for pcs drivers that lets
device drivers handle this transparently.
As the lynx_pcs driver is tiny, it appears that we can just avoid the
link error by always forcing it to be built when the stmmac driver
is, even for non-altera platforms. This matches what we already do
for the xpcs variant that is used by the intel and tegra variants of
stmmac.
Fixes: 5d1f3fe7d2d54 ("net: stmmac: dwmac-sogfpga: use the lynx pcs driver")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
drivers/net/ethernet/stmicro/stmmac/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/stmicro/stmmac/Kconfig b/drivers/net/ethernet/stmicro/stmmac/Kconfig
index 5583f0b055ec7..fa956f2081a53 100644
--- a/drivers/net/ethernet/stmicro/stmmac/Kconfig
+++ b/drivers/net/ethernet/stmicro/stmmac/Kconfig
@@ -5,6 +5,7 @@ config STMMAC_ETH
depends on PTP_1588_CLOCK_OPTIONAL
select MII
select PCS_XPCS
+ select PCS_LYNX
select PAGE_POOL
select PHYLINK
select CRC32
@@ -160,7 +161,6 @@ config DWMAC_SOCFPGA
select MFD_SYSCON
select MDIO_REGMAP
select REGMAP_MMIO
- select PCS_LYNX
help
Support for ethernet controller on Altera SOCFPGA
--
2.39.2
next reply other threads:[~2023-06-07 13:57 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-06-07 13:56 Arnd Bergmann [this message]
2023-06-07 13:56 ` [PATCH 1/2] stmmac: fix pcs_lynx link failure Arnd Bergmann
2023-06-07 13:56 ` [PATCH 2/2] net: altera-tse: fix broken Kconfig dependency Arnd Bergmann
2023-06-07 14:12 ` [PATCH 1/2] stmmac: fix pcs_lynx link failure Russell King (Oracle)
2023-06-07 14:12 ` Russell King (Oracle)
2023-06-07 15:52 ` Simon Horman
2023-06-07 15:52 ` Simon Horman
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230607135638.1341101-1-arnd@kernel.org \
--to=arnd@kernel.org \
--cc=alexandre.torgue@foss.st.com \
--cc=ansuelsmth@gmail.com \
--cc=arnd@arndb.de \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=joabreu@synopsys.com \
--cc=jonathanh@nvidia.com \
--cc=kuba@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-stm32@st-md-mailman.stormreply.com \
--cc=maxime.chevallier@bootlin.com \
--cc=mcoquelin.stm32@gmail.com \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=peppe.cavallaro@st.com \
--cc=samin.guo@starfivetech.com \
--cc=simon.horman@corigine.com \
--cc=vbhadram@nvidia.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.