All of lore.kernel.org
 help / color / mirror / Atom feed
From: Arnd Bergmann <arnd@kernel.org>
To: netdev@vger.kernel.org
Cc: Arnd Bergmann <arnd@arndb.de>,
	"David S. Miller" <davem@davemloft.net>,
	"Maciej W. Rozycki" <macro@orcam.me.uk>,
	Alexei Starovoitov <ast@kernel.org>, Andrew Lunn <andrew@lunn.ch>,
	Andrii Nakryiko <andriin@fb.com>,
	Bartosz Golaszewski <bgolaszewski@baylibre.com>,
	Christophe JAILLET <christophe.jaillet@wanadoo.fr>,
	Doug Berger <opendmb@gmail.com>,
	Eric Dumazet <edumazet@google.com>,
	Finn Thain <fthain@telegraphics.com.au>,
	Florian Fainelli <f.fainelli@gmail.com>,
	Geert Uytterhoeven <geert@linux-m68k.org>,
	Jakub Kicinski <kuba@kernel.org>, Jessica Yu <jeyu@kernel.org>,
	Michael Schmitz <schmitzmic@gmail.com>,
	Paul Gortmaker <paul.gortmaker@windriver.com>,
	Sam Creasey <sammy@sammy.net>,
	linux-kernel@vger.kernel.org,
	bcm-kernel-feedback-list@broadcom.com
Subject: [PATCH v2 10/14] [net-next] make legacy ISA probe optional
Date: Tue,  3 Aug 2021 13:40:47 +0200	[thread overview]
Message-ID: <20210803114051.2112986-11-arnd@kernel.org> (raw)
In-Reply-To: <20210803114051.2112986-1-arnd@kernel.org>

From: Arnd Bergmann <arnd@arndb.de>

There are very few ISA drivers left that rely on the static probing from
drivers/net/Space.o. Make them all select a new CONFIG_NETDEV_LEGACY_INIT
symbol, and drop the entire probe logic when that is disabled.

The 9 drivers that are called from Space.c are the same set that
calls netdev_boot_setup_check().

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 drivers/net/Kconfig                 | 7 +++++++
 drivers/net/Makefile                | 3 ++-
 drivers/net/appletalk/Kconfig       | 4 +++-
 drivers/net/ethernet/3com/Kconfig   | 1 +
 drivers/net/ethernet/8390/Kconfig   | 3 +++
 drivers/net/ethernet/8390/ne.c      | 2 ++
 drivers/net/ethernet/amd/Kconfig    | 2 ++
 drivers/net/ethernet/cirrus/Kconfig | 1 +
 drivers/net/ethernet/smsc/Kconfig   | 1 +
 9 files changed, 22 insertions(+), 2 deletions(-)

diff --git a/drivers/net/Kconfig b/drivers/net/Kconfig
index 56213a8a1ec5..c8b4eea14374 100644
--- a/drivers/net/Kconfig
+++ b/drivers/net/Kconfig
@@ -606,4 +606,11 @@ config NET_FAILOVER
 	  a VM with direct attached VF by failing over to the paravirtual
 	  datapath when the VF is unplugged.
 
+config NETDEV_LEGACY_INIT
+	bool
+	depends on ISA
+	help
+	  Drivers that call netdev_boot_setup_check() should select this
+	  symbol, everything else no longer needs it.
+
 endif # NETDEVICES
diff --git a/drivers/net/Makefile b/drivers/net/Makefile
index a48a664605a3..6701211118c5 100644
--- a/drivers/net/Makefile
+++ b/drivers/net/Makefile
@@ -18,7 +18,8 @@ obj-$(CONFIG_MACVLAN) += macvlan.o
 obj-$(CONFIG_MACVTAP) += macvtap.o
 obj-$(CONFIG_MII) += mii.o
 obj-$(CONFIG_MDIO) += mdio.o
-obj-$(CONFIG_NET) += Space.o loopback.o
+obj-$(CONFIG_NET) += loopback.o
+obj-$(CONFIG_NETDEV_LEGACY_INIT) += Space.o
 obj-$(CONFIG_NETCONSOLE) += netconsole.o
 obj-y += phy/
 obj-y += mdio/
diff --git a/drivers/net/appletalk/Kconfig b/drivers/net/appletalk/Kconfig
index 43918398f0d3..90b9f1d6eda9 100644
--- a/drivers/net/appletalk/Kconfig
+++ b/drivers/net/appletalk/Kconfig
@@ -52,7 +52,9 @@ config LTPC
 
 config COPS
 	tristate "COPS LocalTalk PC support"
-	depends on DEV_APPLETALK && (ISA || EISA)
+	depends on DEV_APPLETALK && ISA
+	depends on NETDEVICES
+	select NETDEV_LEGACY_INIT
 	help
 	  This allows you to use COPS AppleTalk cards to connect to LocalTalk
 	  networks. You also need version 1.3.3 or later of the netatalk
diff --git a/drivers/net/ethernet/3com/Kconfig b/drivers/net/ethernet/3com/Kconfig
index a52a3740f0c9..706bd59bf645 100644
--- a/drivers/net/ethernet/3com/Kconfig
+++ b/drivers/net/ethernet/3com/Kconfig
@@ -34,6 +34,7 @@ config EL3
 config 3C515
 	tristate "3c515 ISA \"Fast EtherLink\""
 	depends on ISA && ISA_DMA_API && !PPC32
+	select NETDEV_LEGACY_INIT
 	help
 	  If you have a 3Com ISA EtherLink XL "Corkscrew" 3c515 Fast Ethernet
 	  network card, say Y here.
diff --git a/drivers/net/ethernet/8390/Kconfig b/drivers/net/ethernet/8390/Kconfig
index 9f4b302fd2ce..a4130e643342 100644
--- a/drivers/net/ethernet/8390/Kconfig
+++ b/drivers/net/ethernet/8390/Kconfig
@@ -102,6 +102,7 @@ config MCF8390
 config NE2000
 	tristate "NE2000/NE1000 support"
 	depends on (ISA || (Q40 && m) || MACH_TX49XX || ATARI_ETHERNEC)
+	select NETDEV_LEGACY_INIT if ISA
 	select CRC32
 	help
 	  If you have a network (Ethernet) card of this type, say Y here.
@@ -169,6 +170,7 @@ config STNIC
 config ULTRA
 	tristate "SMC Ultra support"
 	depends on ISA
+	select NETDEV_LEGACY_INIT
 	select CRC32
 	help
 	  If you have a network (Ethernet) card of this type, say Y here.
@@ -186,6 +188,7 @@ config ULTRA
 config WD80x3
 	tristate "WD80*3 support"
 	depends on ISA
+	select NETDEV_LEGACY_INIT
 	select CRC32
 	help
 	  If you have a network (Ethernet) card of this type, say Y here.
diff --git a/drivers/net/ethernet/8390/ne.c b/drivers/net/ethernet/8390/ne.c
index e9756d0ea5b8..d0bbe2180b9e 100644
--- a/drivers/net/ethernet/8390/ne.c
+++ b/drivers/net/ethernet/8390/ne.c
@@ -951,6 +951,7 @@ static int __init ne_init(void)
 }
 module_init(ne_init);
 
+#ifdef CONFIG_NETDEV_LEGACY_INIT
 struct net_device * __init ne_probe(int unit)
 {
 	int this_dev;
@@ -991,6 +992,7 @@ struct net_device * __init ne_probe(int unit)
 
 	return ERR_PTR(-ENODEV);
 }
+#endif
 #endif /* MODULE */
 
 static void __exit ne_exit(void)
diff --git a/drivers/net/ethernet/amd/Kconfig b/drivers/net/ethernet/amd/Kconfig
index d0b0609bbe23..c6a3abec86f5 100644
--- a/drivers/net/ethernet/amd/Kconfig
+++ b/drivers/net/ethernet/amd/Kconfig
@@ -46,6 +46,7 @@ config AMD8111_ETH
 config LANCE
 	tristate "AMD LANCE and PCnet (AT1500 and NE2100) support"
 	depends on ISA && ISA_DMA_API && !ARM && !PPC32
+	select NETDEV_LEGACY_INIT
 	help
 	  If you have a network (Ethernet) card of this type, say Y here.
 	  Some LinkSys cards are of this type.
@@ -132,6 +133,7 @@ config PCMCIA_NMCLAN
 config NI65
 	tristate "NI6510 support"
 	depends on ISA && ISA_DMA_API && !ARM && !PPC32
+	select NETDEV_LEGACY_INIT
 	help
 	  If you have a network (Ethernet) card of this type, say Y here.
 
diff --git a/drivers/net/ethernet/cirrus/Kconfig b/drivers/net/ethernet/cirrus/Kconfig
index 7141340a8b0e..dac1764ba740 100644
--- a/drivers/net/ethernet/cirrus/Kconfig
+++ b/drivers/net/ethernet/cirrus/Kconfig
@@ -26,6 +26,7 @@ config CS89x0_ISA
 	depends on ISA
 	depends on !PPC32
 	depends on CS89x0_PLATFORM=n
+	select NETDEV_LEGACY_INIT
 	select CS89x0
 	help
 	  Support for CS89x0 chipset based Ethernet cards. If you have a
diff --git a/drivers/net/ethernet/smsc/Kconfig b/drivers/net/ethernet/smsc/Kconfig
index c52a38df0e0d..72e42a868346 100644
--- a/drivers/net/ethernet/smsc/Kconfig
+++ b/drivers/net/ethernet/smsc/Kconfig
@@ -23,6 +23,7 @@ config SMC9194
 	tristate "SMC 9194 support"
 	depends on ISA
 	select CRC32
+	select NETDEV_LEGACY_INIT
 	help
 	  This is support for the SMC9xxx based Ethernet cards. Choose this
 	  option if you have a DELL laptop with the docking station, or
-- 
2.29.2


  parent reply	other threads:[~2021-08-03 11:42 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-08-03 11:40 [PATCH v2 00/14] [net-next] drivers/net/Space.c cleanup Arnd Bergmann
2021-08-03 11:40 ` [PATCH v2 01/14] [net-next] bcmgenet: remove call to netdev_boot_setup_check Arnd Bergmann
2021-08-03 11:40 ` [PATCH v2 02/14] [net-next] natsemi: sonic: stop calling netdev_boot_setup_check Arnd Bergmann
2021-08-03 11:40 ` [PATCH v2 03/14] [net-next] appletalk: ltpc: remove static probing Arnd Bergmann
2021-08-03 11:40 ` [PATCH v2 04/14] [net-next] 3c509: stop calling netdev_boot_setup_check Arnd Bergmann
2021-08-03 11:40 ` [PATCH v2 05/14] [net-next] cs89x0: rework driver configuration Arnd Bergmann
2021-09-01 17:19   ` Guenter Roeck
2021-08-03 11:40 ` [PATCH v2 06/14] [net-next] m68k: remove legacy probing Arnd Bergmann
2021-08-03 11:40 ` [PATCH v2 07/14] [net-next] ax88796: export ax_NS8390_init() hook Arnd Bergmann
2021-08-03 11:40 ` [PATCH v2 08/14] [net-next] xsurf100: drop include of lib8390.c Arnd Bergmann
2021-09-01  7:10   ` Geert Uytterhoeven
2021-08-03 11:40 ` [PATCH v2 09/14] [net-next] move netdev_boot_setup into Space.c Arnd Bergmann
2021-08-03 11:40 ` Arnd Bergmann [this message]
2021-08-11 14:50   ` [PATCH v2 10/14] [net-next] make legacy ISA probe optional Geert Uytterhoeven
2021-09-07  8:24     ` Geert Uytterhoeven
2021-09-07 13:19       ` Arnd Bergmann
2021-08-03 11:40 ` [PATCH v2 11/14] [net-next] wan: remove stale Kconfig entries Arnd Bergmann
2021-08-03 11:40 ` [PATCH v2 12/14] [net-next] wan: remove sbni/granch driver Arnd Bergmann
2021-08-03 11:40 ` [PATCH v2 13/14] [net-next] wan: hostess_sv11: use module_init/module_exit helpers Arnd Bergmann
2021-08-03 11:40 ` [PATCH v2 14/14] [net-next] ethernet: isa: convert to module_init/module_exit Arnd Bergmann
2021-08-03 12:30 ` [PATCH v2 00/14] [net-next] drivers/net/Space.c cleanup patchwork-bot+netdevbpf

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=20210803114051.2112986-11-arnd@kernel.org \
    --to=arnd@kernel.org \
    --cc=andrew@lunn.ch \
    --cc=andriin@fb.com \
    --cc=arnd@arndb.de \
    --cc=ast@kernel.org \
    --cc=bcm-kernel-feedback-list@broadcom.com \
    --cc=bgolaszewski@baylibre.com \
    --cc=christophe.jaillet@wanadoo.fr \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=f.fainelli@gmail.com \
    --cc=fthain@telegraphics.com.au \
    --cc=geert@linux-m68k.org \
    --cc=jeyu@kernel.org \
    --cc=kuba@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=macro@orcam.me.uk \
    --cc=netdev@vger.kernel.org \
    --cc=opendmb@gmail.com \
    --cc=paul.gortmaker@windriver.com \
    --cc=sammy@sammy.net \
    --cc=schmitzmic@gmail.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.