Skip to contentSkip to conversation

2.5: make gigabit ethernet into a real submenu

PATCH In review Tomas Szepe 3 participants 7 messages Dec 31, 2002 – Jan 1, 2003

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 2.5: make gigabit ethernet into a real submenu

Linus,

The attached unidiff creates a parent entry for all gigabit ethernet interfaces, making the submenu consistent with that of 10/100. Suggested by Robert P. J. Day. Trivial patch against 2.5-bkcurrent.

Please apply,

Signature · 124 lines
Tomas Szepe <[email protected]>


diff -urN a/drivers/net/Kconfig b/drivers/net/Kconfig
--- a/drivers/net/Kconfig	2002-12-24 10:45:39.000000000 +0100
+++ b/drivers/net/Kconfig	2002-12-31 08:49:44.000000000 +0100
@@ -1578,9 +1578,36 @@
 menu "Ethernet (1000 Mbit)"
 	depends on NETDEVICES
 
+config NET_GIGABIT_ETH
+	bool "Ethernet (1000 Mbit)"
+	---help---
+	  Ethernet (also called IEEE 802.3 or ISO 8802-2) is the most common
+	  type of Local Area Network (LAN) in universities and companies.
+
+	  Common varieties of Ethernet are: 10BASE-2 or Thinnet (10 Mbps over
+	  coaxial cable, linking computers in a chain), 10BASE-T or twisted
+	  pair (10 Mbps over twisted pair cable, linking computers to central
+	  hubs), 10BASE-F (10 Mbps over optical fiber links, using hubs),
+	  100BASE-TX (100 Mbps over two twisted pair cables, using hubs),
+	  100BASE-T4 (100 Mbps over 4 standard voice-grade twisted pair
+	  cables, using hubs), 100BASE-FX (100 Mbps over optical fiber links)
+	  [the 100BASE varieties are also known as Fast Ethernet], and Gigabit
+	  Ethernet (1 Gbps over optical fiber or short copper links).
+
+	  If your Linux machine will be connected to an Ethernet and you have
+	  a gigabit Ethernet network interface card (NIC) installed in your
+	  computer, say Y here and read the Ethernet-HOWTO, available from
+	  <http://www.linuxdoc.org/docs.html#howto>.  You will then also have
+	  to say Y to the driver for your particular NIC.
+
+	  Note that the answer to this question won't directly affect the
+	  kernel: saying N will just cause the configurator to skip all
+	  the questions about gigabit Ethernet network cards. If unsure,
+	  say N.
+
 config ACENIC
 	tristate "Alteon AceNIC/3Com 3C985/NetGear GA620 Gigabit support"
-	depends on PCI
+	depends on NET_GIGABIT_ETH && PCI
 	---help---
 	  Say Y here if you have an Alteon AceNIC, 3Com 3C985(B), NetGear
 	  GA620, SGI Gigabit or Farallon PN9000-SX PCI Gigabit Ethernet
@@ -1609,7 +1636,7 @@
 
 config DL2K
 	tristate "D-Link DL2000-based Gigabit Ethernet support"
-	depends on PCI
+	depends on NET_GIGABIT_ETH && PCI
 	help
 	  This driver supports D-Link 2000-based gigabit ethernet cards, which
 	  includes
@@ -1623,7 +1650,7 @@
 
 config E1000
 	tristate "Intel(R) PRO/1000 Gigabit Ethernet support"
-	depends on PCI
+	depends on NET_GIGABIT_ETH && PCI
 	---help---
 	  This driver supports Intel(R) PRO/1000 gigabit ethernet family of
 	  adapters, which includes:
@@ -1671,7 +1698,7 @@
 
 config MYRI_SBUS
 	tristate "MyriCOM Gigabit Ethernet support"
-	depends on SBUS
+	depends on NET_GIGABIT_ETH && SBUS
 	help
 	  This driver supports MyriCOM Sbus gigabit Ethernet cards.
 
@@ -1682,7 +1709,7 @@
 
 config NS83820
 	tristate "National Semiconduct DP83820 support"
-	depends on PCI
+	depends on NET_GIGABIT_ETH && PCI
 	help
 	  This is a driver for the National Semiconductor DP83820 series
 	  of gigabit ethernet MACs.  Cards using this chipset include
@@ -1692,7 +1719,7 @@
 
 config HAMACHI
 	tristate "Packet Engines Hamachi GNIC-II support"
-	depends on PCI
+	depends on NET_GIGABIT_ETH && PCI
 	help
 	  If you have a Gigabit Ethernet card of this type, say Y and read
 	  the Ethernet-HOWTO, available from
@@ -1706,7 +1733,7 @@
 
 config YELLOWFIN
 	tristate "Packet Engines Yellowfin Gigabit-NIC support (EXPERIMENTAL)"
-	depends on PCI && EXPERIMENTAL
+	depends on NET_GIGABIT_ETH && PCI && EXPERIMENTAL
 	---help---
 	  Say Y here if you have a Packet Engines G-NIC PCI Gigabit Ethernet
 	  adapter or the SYM53C885 Ethernet controller. The Gigabit adapter is
@@ -1721,7 +1748,7 @@
 
 config R8169
 	tristate "Realtek 8169 gigabit ethernet support"
-	depends on PCI
+	depends on NET_GIGABIT_ETH && PCI
 	---help---
 	  Say Y here if you have a Realtek 8169 PCI Gigabit Ethernet adapter.
 
@@ -1732,7 +1759,7 @@
 
 config SK98LIN
 	tristate "SysKonnect SK-98xx support"
-	depends on PCI
+	depends on NET_GIGABIT_ETH && PCI
 	---help---
 	  Say Y here if you have a SysKonnect SK-98xx Gigabit Ethernet Server
 	  Adapter. The following adapters are supported by this driver:
@@ -1760,7 +1787,7 @@
 
 config TIGON3
 	tristate "Broadcom Tigon3 support"
-	depends on PCI
+	depends on NET_GIGABIT_ETH && PCI
 	help
 	  This driver supports Broadcom Tigon3 based gigabit Ethernet cards.
#1 lore raw
Quoted 4 lines · Tomas Szepe

The attached unidiff creates a parent entry for all gigabit ethernet interfaces, making the submenu consistent with that of 10/100. Suggested by Robert P. J. Day. Trivial patch against 2.5-bkcurrent.

Hmm.. Wouldn't it be nicer to instead of :

...
menu "Ethernet (1000 Mbit)"
depends on NETDEVICES

+config NET_GIGABIT_ETH
+ bool "Ethernet (1000 Mbit)"
+ ---help---
+ Ethernet (also called IEEE 802.3 or ISO 8802-2) is the most common
...

have

...
+config NET_GIGABIT_ETH
+ bool "Ethernet (1000 Mbit)"
+ depends on NETDEVICES
+ ---help---
+ Ethernet (also called IEEE 802.3 or ISO 8802-2) is the most common
...
menu "Ethernet (1000 Mbit)"
depends on NET_GIGABIT_ETH
...

so that the you don't even see the things if you don't select for them?

Untested, but it would seem to be the more natural approach..

Linus

#2 lore raw
Quoted 8 lines

[[email protected]]

Quoted 4 lines · Tomas Szepe

The attached unidiff creates a parent entry for all gigabit ethernet interfaces, making the submenu consistent with that of 10/100. Suggested by Robert P. J. Day. Trivial patch against 2.5-bkcurrent.

Quoted 6 lines

Hmm.. Wouldn't it be nicer to instead of :
[snip]
have
[snip]
so that the you don't even see the things if you don't select for them? Untested, but it would seem to be the more natural approach..

Oh yes, definitely, I just wanted to be consistent with 10/100. So here comes gigabit the way you suggested (tested, seems to work fine), next I'll be sending a fix for 10/100, then see if there are any more menus like that left in the current config setup.

Signature · 128 lines
Tomas Szepe <[email protected]>

diff -urN a/drivers/net/Kconfig b/drivers/net/Kconfig
--- a/drivers/net/Kconfig	2002-12-24 10:45:39.000000000 +0100
+++ b/drivers/net/Kconfig	2003-01-01 14:10:09.000000000 +0100
@@ -1575,12 +1575,40 @@
 #	Gigabit Ethernet
 #
 
-menu "Ethernet (1000 Mbit)"
+config NET_GIGABIT_ETH
 	depends on NETDEVICES
+	bool "Ethernet (1000 Mbit)"
+	---help---
+	  Ethernet (also called IEEE 802.3 or ISO 8802-2) is the most common
+	  type of Local Area Network (LAN) in universities and companies.
+
+	  Common varieties of Ethernet are: 10BASE-2 or Thinnet (10 Mbps over
+	  coaxial cable, linking computers in a chain), 10BASE-T or twisted
+	  pair (10 Mbps over twisted pair cable, linking computers to central
+	  hubs), 10BASE-F (10 Mbps over optical fiber links, using hubs),
+	  100BASE-TX (100 Mbps over two twisted pair cables, using hubs),
+	  100BASE-T4 (100 Mbps over 4 standard voice-grade twisted pair
+	  cables, using hubs), 100BASE-FX (100 Mbps over optical fiber links)
+	  [the 100BASE varieties are also known as Fast Ethernet], and Gigabit
+	  Ethernet (1 Gbps over optical fiber or short copper links).
+
+	  If your Linux machine will be connected to an Ethernet and you have
+	  a gigabit Ethernet network interface card (NIC) installed in your
+	  computer, say Y here and read the Ethernet-HOWTO, available from
+	  <http://www.linuxdoc.org/docs.html#howto>.  You will then also have
+	  to say Y to the driver for your particular NIC.
+
+	  Note that the answer to this question won't directly affect the
+	  kernel: saying N will just cause the configurator to skip all
+	  the questions about gigabit Ethernet network cards. If unsure,
+	  say N.
+
+menu "Ethernet (1000 Mbit)"
+	depends on NET_GIGABIT_ETH
 
 config ACENIC
 	tristate "Alteon AceNIC/3Com 3C985/NetGear GA620 Gigabit support"
-	depends on PCI
+	depends on NET_GIGABIT_ETH && PCI
 	---help---
 	  Say Y here if you have an Alteon AceNIC, 3Com 3C985(B), NetGear
 	  GA620, SGI Gigabit or Farallon PN9000-SX PCI Gigabit Ethernet
@@ -1609,7 +1637,7 @@
 
 config DL2K
 	tristate "D-Link DL2000-based Gigabit Ethernet support"
-	depends on PCI
+	depends on NET_GIGABIT_ETH && PCI
 	help
 	  This driver supports D-Link 2000-based gigabit ethernet cards, which
 	  includes
@@ -1623,7 +1651,7 @@
 
 config E1000
 	tristate "Intel(R) PRO/1000 Gigabit Ethernet support"
-	depends on PCI
+	depends on NET_GIGABIT_ETH && PCI
 	---help---
 	  This driver supports Intel(R) PRO/1000 gigabit ethernet family of
 	  adapters, which includes:
@@ -1671,7 +1699,7 @@
 
 config MYRI_SBUS
 	tristate "MyriCOM Gigabit Ethernet support"
-	depends on SBUS
+	depends on NET_GIGABIT_ETH && SBUS
 	help
 	  This driver supports MyriCOM Sbus gigabit Ethernet cards.
 
@@ -1682,7 +1710,7 @@
 
 config NS83820
 	tristate "National Semiconduct DP83820 support"
-	depends on PCI
+	depends on NET_GIGABIT_ETH && PCI
 	help
 	  This is a driver for the National Semiconductor DP83820 series
 	  of gigabit ethernet MACs.  Cards using this chipset include
@@ -1692,7 +1720,7 @@
 
 config HAMACHI
 	tristate "Packet Engines Hamachi GNIC-II support"
-	depends on PCI
+	depends on NET_GIGABIT_ETH && PCI
 	help
 	  If you have a Gigabit Ethernet card of this type, say Y and read
 	  the Ethernet-HOWTO, available from
@@ -1706,7 +1734,7 @@
 
 config YELLOWFIN
 	tristate "Packet Engines Yellowfin Gigabit-NIC support (EXPERIMENTAL)"
-	depends on PCI && EXPERIMENTAL
+	depends on NET_GIGABIT_ETH && PCI && EXPERIMENTAL
 	---help---
 	  Say Y here if you have a Packet Engines G-NIC PCI Gigabit Ethernet
 	  adapter or the SYM53C885 Ethernet controller. The Gigabit adapter is
@@ -1721,7 +1749,7 @@
 
 config R8169
 	tristate "Realtek 8169 gigabit ethernet support"
-	depends on PCI
+	depends on NET_GIGABIT_ETH && PCI
 	---help---
 	  Say Y here if you have a Realtek 8169 PCI Gigabit Ethernet adapter.
 
@@ -1732,7 +1760,7 @@
 
 config SK98LIN
 	tristate "SysKonnect SK-98xx support"
-	depends on PCI
+	depends on NET_GIGABIT_ETH && PCI
 	---help---
 	  Say Y here if you have a SysKonnect SK-98xx Gigabit Ethernet Server
 	  Adapter. The following adapters are supported by this driver:
@@ -1760,7 +1788,7 @@
 
 config TIGON3
 	tristate "Broadcom Tigon3 support"
-	depends on PCI
+	depends on NET_GIGABIT_ETH && PCI
 	help
 	  This driver supports Broadcom Tigon3 based gigabit Ethernet cards.
#3 lore raw

drivers/net/Kconfig

Quoted 26 lines · Tomas Szepe
Quoted 8 lines

[[email protected]]

Quoted 4 lines · Tomas Szepe

The attached unidiff creates a parent entry for all gigabit ethernet interfaces, making the submenu consistent with that of 10/100. Suggested by Robert P. J. Day. Trivial patch against 2.5-bkcurrent.

Quoted 6 lines

Hmm.. Wouldn't it be nicer to instead of :
[snip]
have
[snip]
so that the you don't even see the things if you don't select for them? Untested, but it would seem to be the more natural approach..

Oh yes, definitely, I just wanted to be consistent with 10/100. So here comes gigabit the way you suggested (tested, seems to work fine), next I'll be sending a fix for 10/100, then see if there are any more menus like that left in the current config setup.

Signature · 3 lines
Tomas Szepe <[email protected]>

diff -urN a/drivers/net/Kconfig b/drivers/net/Kconfig
drivers/net/Kconfig +0 -0

... <snip> ...

perhaps a trivial question: the first patch you sent out was against the Config.in file, which made perfect sense to me. this patch is against the "Kconfig" file. i'm not sure what that means, i see no such file. (then again, being a kernel newbie, i probably just don't understand some of the fundamentals.)

is "Kconfig" a precursor to what will eventually become the Config.in file?

rday

#4 lore raw
Quoted 9 lines

[[email protected]]

... <snip> ...

perhaps a trivial question: the first patch you sent out was against the Config.in file, which made perfect sense to me. this patch is against the "Kconfig" file. i'm not sure what that means, i see no such file. (then again, being a kernel newbie, i probably just don't understand some of the fundamentals.)

The first patch (Config.in) went to Marcelo, the 2.4 maintainer. The second patch (Kconfig) went to Linus, the 2.5 maintainer.

The kernel config system has been significantly reworked and improved during 2.5 development. Think of Kconfig as Config.in replacement.

Signature · 1 line
Tomas Szepe <[email protected]>
#5 lore raw
In reply to Tomas Szepe

Trivial: This is a follow-up to your "Gigabit Ethernet submenu" precedent.

Only show the 10/100 Mbit Ethernet submenu if the "10/100 Mbit Ethernet" entry is selected.

Signature · 27 lines
Tomas Szepe <[email protected]>

diff -urN a/drivers/net/Kconfig b/drivers/net/Kconfig
--- a/drivers/net/Kconfig	2003-01-01 14:10:09.000000000 +0100
+++ b/drivers/net/Kconfig	2003-01-01 14:25:27.000000000 +0100
@@ -148,10 +148,8 @@
 #	Ethernet
 #
 
-menu "Ethernet (10 or 100Mbit)"
-	depends on NETDEVICES
-
 config NET_ETHERNET
+	depends on NETDEVICES
 	bool "Ethernet (10 or 100Mbit)"
 	---help---
 	  Ethernet (also called IEEE 802.3 or ISO 8802-2) is the most common
@@ -177,6 +175,9 @@
 	  kernel: saying N will just cause the configurator to skip all
 	  the questions about Ethernet network cards. If unsure, say N.
 
+menu "Ethernet (10 or 100Mbit)"
+	depends on NET_ETHERNET
+
 config ARM_AM79C961A
 	bool "ARM EBSA110 AM79C961A support"
 	depends on NET_ETHERNET && ARM && ARCH_EBSA110
#6 lore raw
In reply to Tomas Szepe
Quoted 4 lines · Tomas Szepe

Oh yes, definitely, I just wanted to be consistent with 10/100. So here comes gigabit the way you suggested (tested, seems to work fine), next I'll be sending a fix for 10/100, then see if there are any more menus like that left in the current config setup.

the other oddities(?) i noticed were (some admittedly trivial):

1) Under General setup, turning off Power Management support deactivated all of ACPI support, but had a weird effect on its sibling, Advanced Power Management BIOS support. not sure if this is supposed to happen, it just looks weird.

2) under Input core support, if you deselect Joystick support, there are still a number of selectable joystick-related features available under Character devices -> Joysticks (although these appear to be more than just basic joystick options -- is that the reason?)

3) Radio adapters is currently subsumed under Video for Linux, under Multimedia devices, which seems inappropiate.

i'm sure there were a couple of other oddities i noticed, if anyone was interested.

rday