xref: /linux/drivers/net/ethernet/cavium/Kconfig (revision cdd5b5a9761fd66d17586e4f4ba6588c70e640ea)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
24863dea3SSunil Goutham#
34863dea3SSunil Goutham# Cavium ethernet device configuration
44863dea3SSunil Goutham#
54863dea3SSunil Goutham
64863dea3SSunil Gouthamconfig NET_VENDOR_CAVIUM
77a4264a9SAndreas Schwab	bool "Cavium ethernet drivers"
8f21fb3edSRaghu Vatsavayi	default y
9a7f7f624SMasahiro Yamada	help
10f21fb3edSRaghu Vatsavayi	  Select this option if you want enable Cavium network support.
114863dea3SSunil Goutham
12f21fb3edSRaghu Vatsavayi	  If you have a Cavium SoC or network adapter, say Y.
134863dea3SSunil Goutham
144863dea3SSunil Gouthamif NET_VENDOR_CAVIUM
154863dea3SSunil Goutham
164863dea3SSunil Gouthamconfig THUNDER_NIC_PF
174863dea3SSunil Goutham	tristate "Thunder Physical function driver"
1874525cc5SArnd Bergmann	depends on 64BIT && PCI
194863dea3SSunil Goutham	select THUNDER_NIC_BGX
20a7f7f624SMasahiro Yamada	help
214863dea3SSunil Goutham	  This driver supports Thunder's NIC physical function.
22f21fb3edSRaghu Vatsavayi	  The NIC provides the controller and DMA engines to
23f21fb3edSRaghu Vatsavayi	  move network traffic to/from the memory. The NIC
24f21fb3edSRaghu Vatsavayi	  works closely with TNS, BGX and SerDes to implement the
25f21fb3edSRaghu Vatsavayi	  functions replacing and virtualizing those of a typical
26f21fb3edSRaghu Vatsavayi	  standalone PCIe NIC chip.
274863dea3SSunil Goutham
284863dea3SSunil Gouthamconfig THUNDER_NIC_VF
294863dea3SSunil Goutham	tristate "Thunder Virtual function driver"
304a875509SSunil Goutham	imply CAVIUM_PTP
3174525cc5SArnd Bergmann	depends on 64BIT && PCI
32a7f7f624SMasahiro Yamada	help
334863dea3SSunil Goutham	  This driver supports Thunder's NIC virtual function
344863dea3SSunil Goutham
354863dea3SSunil Gouthamconfig	THUNDER_NIC_BGX
364863dea3SSunil Goutham	tristate "Thunder MAC interface driver (BGX)"
37e40562abSAlexander Sverdlin	depends on 64BIT && PCI
38274b0b39SRadha Mohan Chintakuntla	select PHYLIB
3974525cc5SArnd Bergmann	select MDIO_THUNDER if PCI
406465859aSSunil Goutham	select THUNDER_NIC_RGX
41a7f7f624SMasahiro Yamada	help
424863dea3SSunil Goutham	  This driver supports programming and controlling of MAC
434863dea3SSunil Goutham	  interface from NIC physical function driver.
444863dea3SSunil Goutham
456465859aSSunil Gouthamconfig	THUNDER_NIC_RGX
466465859aSSunil Goutham	tristate "Thunder MAC interface driver (RGX)"
47e40562abSAlexander Sverdlin	depends on 64BIT && PCI
486465859aSSunil Goutham	select PHYLIB
4974525cc5SArnd Bergmann	select MDIO_THUNDER if PCI
50a7f7f624SMasahiro Yamada	help
516465859aSSunil Goutham	  This driver supports configuring XCV block of RGX interface
526465859aSSunil Goutham	  present on CN81XX chip.
536465859aSSunil Goutham
548c56df37SRadoslaw Biernackiconfig CAVIUM_PTP
558c56df37SRadoslaw Biernacki	tristate "Cavium PTP coprocessor as PTP clock"
56e40562abSAlexander Sverdlin	depends on 64BIT && PCI
57b6d49cabSClay McClure	depends on PTP_1588_CLOCK
58a7f7f624SMasahiro Yamada	help
598c56df37SRadoslaw Biernacki	  This driver adds support for the Precision Time Protocol Clocks and
608c56df37SRadoslaw Biernacki	  Timestamping coprocessor (PTP) found on Cavium processors.
618c56df37SRadoslaw Biernacki	  PTP provides timestamping mechanism that is suitable for use in IEEE 1588
628c56df37SRadoslaw Biernacki	  Precision Time Protocol or other purposes.  Timestamps can be used in
638c56df37SRadoslaw Biernacki	  BGX, TNS, GTI, and NIC blocks.
648c56df37SRadoslaw Biernacki
65*f71be9d0SMasahiro Yamadaconfig LIQUIDIO_CORE
66*f71be9d0SMasahiro Yamada	tristate
67*f71be9d0SMasahiro Yamada
68f21fb3edSRaghu Vatsavayiconfig LIQUIDIO
69f21fb3edSRaghu Vatsavayi	tristate "Cavium LiquidIO support"
70e40562abSAlexander Sverdlin	depends on 64BIT && PCI
7174525cc5SArnd Bergmann	depends on PCI
72e5f31552SArnd Bergmann	depends on PTP_1588_CLOCK_OPTIONAL
73f21fb3edSRaghu Vatsavayi	select FW_LOADER
743dc817d2SRaghu Vatsavayi	select LIBCRC32C
75*f71be9d0SMasahiro Yamada	select LIQUIDIO_CORE
76f6b19b35SJiri Pirko	select NET_DEVLINK
77a7f7f624SMasahiro Yamada	help
78f21fb3edSRaghu Vatsavayi	  This driver supports Cavium LiquidIO Intelligent Server Adapters
79e86b1ab6SRaghu Vatsavayi	  based on CN66XX, CN68XX and CN23XX chips.
80f21fb3edSRaghu Vatsavayi
81f21fb3edSRaghu Vatsavayi	  To compile this driver as a module, choose M here: the module
82f21fb3edSRaghu Vatsavayi	  will be called liquidio.  This is recommended.
83f21fb3edSRaghu Vatsavayi
84d07a147fSDavid Daneyconfig OCTEON_MGMT_ETHERNET
85d07a147fSDavid Daney	tristate "Octeon Management port ethernet driver (CN5XXX, CN6XXX)"
86d07a147fSDavid Daney	depends on CAVIUM_OCTEON_SOC
87d07a147fSDavid Daney	select PHYLIB
88d07a147fSDavid Daney	select MDIO_OCTEON
89d07a147fSDavid Daney	default y
90d07a147fSDavid Daney	help
91d07a147fSDavid Daney	  Enable the ethernet driver for the management
92d07a147fSDavid Daney	  port on Cavium Networks' Octeon CN57XX, CN56XX, CN55XX,
93d07a147fSDavid Daney	  CN54XX, CN52XX, and CN6XXX chips.
94d07a147fSDavid Daney
95111fc64aSRaghu Vatsavayiconfig LIQUIDIO_VF
96111fc64aSRaghu Vatsavayi	tristate "Cavium LiquidIO VF support"
97111fc64aSRaghu Vatsavayi	depends on 64BIT && PCI_MSI
98e5f31552SArnd Bergmann	depends on PTP_1588_CLOCK_OPTIONAL
99*f71be9d0SMasahiro Yamada	select LIQUIDIO_CORE
100a7f7f624SMasahiro Yamada	help
101111fc64aSRaghu Vatsavayi	  This driver supports Cavium LiquidIO Intelligent Server Adapter
102111fc64aSRaghu Vatsavayi	  based on CN23XX chips.
103111fc64aSRaghu Vatsavayi
104111fc64aSRaghu Vatsavayi	  To compile this driver as a module, choose M here: The module
105111fc64aSRaghu Vatsavayi	  will be called liquidio_vf. MSI-X interrupt support is required
106111fc64aSRaghu Vatsavayi	  for this driver to work correctly
107111fc64aSRaghu Vatsavayi
1084863dea3SSunil Gouthamendif # NET_VENDOR_CAVIUM
109