mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-28 03:35:27 +07:00
5d01fa0c6b
Add ldmvsw.c driver Details: The ldmvsw driver very closely follows the sunvnet.c code and makes use of the sunvnet_common.c code for core functionality. A significant difference between sunvnet and ldmvsw driver is sunvnet creates a network interface for each vnet-port *parent* node in the MD while the ldmvsw driver creates a network interface for every vsw-port node in the Machine Description (MD). Therefore the netdev_priv() for sunvnet is a vnet structure while the netdev_priv() for ldmvsw is a vnet_port structure. Vnet_port structures allocated by ldmvsw have the vsw bit set. When finding the net_device associated with a port, the common code keys off this bit to use either the net_device found in the vnet_port or the net_device in the vnet structure (see the VNET_PORT_TO_NET_DEVICE() macro in sunvnet_common.h). This scheme allows the common code to work with both drivers with minimal changes. Similar to Xen, network interfaces created by the ldmvsw driver will always have a HW Addr (i.e. mac address) of FE:FF:FF:FF:FF:FF and each will be assigned the devname "vif<cfg_handle>.<port_id>" - where <cfg_handle> and <port_id> are a unique handle/port pair assigned to the associated vsw-port node in the MD. Signed-off-by: Aaron Young <aaron.young@oracle.com> Signed-off-by: Rashmi Narasimhan <rashmi.narasimhan@oracle.com> Reviewed-by: Sowmini Varadhan <sowmini.varadhan@oracle.com> Reviewed-by: Alexandre Chartre <Alexandre.Chartre@oracle.com> Signed-off-by: David S. Miller <davem@davemloft.net>
103 lines
3.0 KiB
Plaintext
103 lines
3.0 KiB
Plaintext
#
|
|
# Sun network device configuration
|
|
#
|
|
|
|
config NET_VENDOR_SUN
|
|
bool "Sun devices"
|
|
default y
|
|
depends on SUN3 || SBUS || PCI || SUN_LDOMS
|
|
---help---
|
|
If you have a network (Ethernet) card belonging to this class, say Y.
|
|
|
|
Note that the answer to this question doesn't directly affect the
|
|
kernel: saying N will just cause the configurator to skip all
|
|
the questions about Sun network interfaces. If you say Y, you will be
|
|
asked for your specific card in the following questions.
|
|
|
|
if NET_VENDOR_SUN
|
|
|
|
config HAPPYMEAL
|
|
tristate "Sun Happy Meal 10/100baseT support"
|
|
depends on (SBUS || PCI)
|
|
select CRC32
|
|
---help---
|
|
This driver supports the "hme" interface present on most Ultra
|
|
systems and as an option on older Sbus systems. This driver supports
|
|
both PCI and Sbus devices. This driver also supports the "qfe" quad
|
|
100baseT device available in both PCI and Sbus configurations.
|
|
|
|
To compile this driver as a module, choose M here: the module
|
|
will be called sunhme.
|
|
|
|
config SUNBMAC
|
|
tristate "Sun BigMAC 10/100baseT support"
|
|
depends on SBUS
|
|
select CRC32
|
|
---help---
|
|
This driver supports the "be" interface available as an Sbus option.
|
|
This is Sun's older 100baseT Ethernet device.
|
|
|
|
To compile this driver as a module, choose M here: the module
|
|
will be called sunbmac.
|
|
|
|
config SUNQE
|
|
tristate "Sun QuadEthernet support"
|
|
depends on SBUS
|
|
select CRC32
|
|
---help---
|
|
This driver supports the "qe" 10baseT Ethernet device, available as
|
|
an Sbus option. Note that this is not the same as Quad FastEthernet
|
|
"qfe" which is supported by the Happy Meal driver instead.
|
|
|
|
To compile this driver as a module, choose M here: the module
|
|
will be called sunqe.
|
|
|
|
config SUNGEM
|
|
tristate "Sun GEM support"
|
|
depends on PCI
|
|
select CRC32
|
|
select SUNGEM_PHY
|
|
---help---
|
|
Support for the Sun GEM chip, aka Sun GigabitEthernet/P 2.0. See also
|
|
<http://docs.oracle.com/cd/E19455-01/806-3985-10/806-3985-10.pdf>.
|
|
|
|
config CASSINI
|
|
tristate "Sun Cassini support"
|
|
depends on PCI
|
|
select CRC32
|
|
---help---
|
|
Support for the Sun Cassini chip, aka Sun GigaSwift Ethernet. See also
|
|
<http://docs.oracle.com/cd/E19113-01/giga.ether.pci/817-4341-10/817-4341-10.pdf>.
|
|
|
|
config SUNVNET_COMMON
|
|
bool
|
|
depends on SUN_LDOMS
|
|
default y if SUN_LDOMS
|
|
|
|
config SUNVNET
|
|
tristate "Sun Virtual Network support"
|
|
depends on SUN_LDOMS
|
|
---help---
|
|
Support for virtual network devices under Sun Logical Domains.
|
|
|
|
config LDMVSW
|
|
tristate "Sun4v LDoms Virtual Switch support"
|
|
depends on SUN_LDOMS
|
|
---help---
|
|
Support for virtual switch devices under Sun4v Logical Domains.
|
|
This driver adds a network interface for every vsw-port node
|
|
found in the machine description of a service domain.
|
|
Linux bridge/switch software can use these interfaces for
|
|
guest domain network interconnectivity or guest domain
|
|
connection to a physical network on a service domain.
|
|
|
|
config NIU
|
|
tristate "Sun Neptune 10Gbit Ethernet support"
|
|
depends on PCI
|
|
select CRC32
|
|
---help---
|
|
This enables support for cards based upon Sun's
|
|
Neptune chipset.
|
|
|
|
endif # NET_VENDOR_SUN
|