xref: /openbmc/linux/drivers/net/ethernet/cavium/Kconfig (revision f6b19b354d50c5ae46ad66b5273f92e563fbc847)
14863dea3SSunil Goutham#
24863dea3SSunil Goutham# Cavium ethernet device configuration
34863dea3SSunil Goutham#
44863dea3SSunil Goutham
54863dea3SSunil Gouthamconfig NET_VENDOR_CAVIUM
67a4264a9SAndreas Schwab	bool "Cavium ethernet drivers"
7f21fb3edSRaghu Vatsavayi	default y
84863dea3SSunil Goutham	---help---
9f21fb3edSRaghu Vatsavayi	  Select this option if you want enable Cavium network support.
104863dea3SSunil Goutham
11f21fb3edSRaghu Vatsavayi	  If you have a Cavium SoC or network adapter, say Y.
124863dea3SSunil Goutham
134863dea3SSunil Gouthamif NET_VENDOR_CAVIUM
144863dea3SSunil Goutham
154863dea3SSunil Gouthamconfig THUNDER_NIC_PF
164863dea3SSunil Goutham	tristate "Thunder Physical function driver"
1774525cc5SArnd Bergmann	depends on 64BIT && PCI
184863dea3SSunil Goutham	select THUNDER_NIC_BGX
194863dea3SSunil Goutham	---help---
204863dea3SSunil Goutham	  This driver supports Thunder's NIC physical function.
21f21fb3edSRaghu Vatsavayi	  The NIC provides the controller and DMA engines to
22f21fb3edSRaghu Vatsavayi	  move network traffic to/from the memory. The NIC
23f21fb3edSRaghu Vatsavayi	  works closely with TNS, BGX and SerDes to implement the
24f21fb3edSRaghu Vatsavayi	  functions replacing and virtualizing those of a typical
25f21fb3edSRaghu Vatsavayi	  standalone PCIe NIC chip.
264863dea3SSunil Goutham
274863dea3SSunil Gouthamconfig THUNDER_NIC_VF
284863dea3SSunil Goutham	tristate "Thunder Virtual function driver"
294a875509SSunil Goutham	imply CAVIUM_PTP
3074525cc5SArnd Bergmann	depends on 64BIT && PCI
314863dea3SSunil Goutham	---help---
324863dea3SSunil Goutham	  This driver supports Thunder's NIC virtual function
334863dea3SSunil Goutham
344863dea3SSunil Gouthamconfig	THUNDER_NIC_BGX
354863dea3SSunil Goutham	tristate "Thunder MAC interface driver (BGX)"
36e40562abSAlexander Sverdlin	depends on 64BIT && PCI
37274b0b39SRadha Mohan Chintakuntla	select PHYLIB
3874525cc5SArnd Bergmann	select MDIO_THUNDER if PCI
396465859aSSunil Goutham	select THUNDER_NIC_RGX
404863dea3SSunil Goutham	---help---
414863dea3SSunil Goutham	  This driver supports programming and controlling of MAC
424863dea3SSunil Goutham	  interface from NIC physical function driver.
434863dea3SSunil Goutham
446465859aSSunil Gouthamconfig	THUNDER_NIC_RGX
456465859aSSunil Goutham	tristate "Thunder MAC interface driver (RGX)"
46e40562abSAlexander Sverdlin	depends on 64BIT && PCI
476465859aSSunil Goutham	select PHYLIB
4874525cc5SArnd Bergmann	select MDIO_THUNDER if PCI
496465859aSSunil Goutham	---help---
506465859aSSunil Goutham	  This driver supports configuring XCV block of RGX interface
516465859aSSunil Goutham	  present on CN81XX chip.
526465859aSSunil Goutham
538c56df37SRadoslaw Biernackiconfig CAVIUM_PTP
548c56df37SRadoslaw Biernacki	tristate "Cavium PTP coprocessor as PTP clock"
55e40562abSAlexander Sverdlin	depends on 64BIT && PCI
568c56df37SRadoslaw Biernacki	imply PTP_1588_CLOCK
578c56df37SRadoslaw Biernacki	---help---
588c56df37SRadoslaw Biernacki	  This driver adds support for the Precision Time Protocol Clocks and
598c56df37SRadoslaw Biernacki	  Timestamping coprocessor (PTP) found on Cavium processors.
608c56df37SRadoslaw Biernacki	  PTP provides timestamping mechanism that is suitable for use in IEEE 1588
618c56df37SRadoslaw Biernacki	  Precision Time Protocol or other purposes.  Timestamps can be used in
628c56df37SRadoslaw Biernacki	  BGX, TNS, GTI, and NIC blocks.
638c56df37SRadoslaw Biernacki
64f21fb3edSRaghu Vatsavayiconfig LIQUIDIO
65f21fb3edSRaghu Vatsavayi	tristate "Cavium LiquidIO support"
66e40562abSAlexander Sverdlin	depends on 64BIT && PCI
6774525cc5SArnd Bergmann	depends on PCI
68d1cbfd77SNicolas Pitre	imply PTP_1588_CLOCK
69f21fb3edSRaghu Vatsavayi	select FW_LOADER
703dc817d2SRaghu Vatsavayi	select LIBCRC32C
71*f6b19b35SJiri Pirko	select NET_DEVLINK
72f21fb3edSRaghu Vatsavayi	---help---
73f21fb3edSRaghu Vatsavayi	  This driver supports Cavium LiquidIO Intelligent Server Adapters
74e86b1ab6SRaghu Vatsavayi	  based on CN66XX, CN68XX and CN23XX chips.
75f21fb3edSRaghu Vatsavayi
76f21fb3edSRaghu Vatsavayi	  To compile this driver as a module, choose M here: the module
77f21fb3edSRaghu Vatsavayi	  will be called liquidio.  This is recommended.
78f21fb3edSRaghu Vatsavayi
79d07a147fSDavid Daneyconfig OCTEON_MGMT_ETHERNET
80d07a147fSDavid Daney	tristate "Octeon Management port ethernet driver (CN5XXX, CN6XXX)"
81d07a147fSDavid Daney	depends on CAVIUM_OCTEON_SOC
82d07a147fSDavid Daney	select PHYLIB
83d07a147fSDavid Daney	select MDIO_OCTEON
84d07a147fSDavid Daney	default y
85d07a147fSDavid Daney	help
86d07a147fSDavid Daney	  Enable the ethernet driver for the management
87d07a147fSDavid Daney	  port on Cavium Networks' Octeon CN57XX, CN56XX, CN55XX,
88d07a147fSDavid Daney	  CN54XX, CN52XX, and CN6XXX chips.
89d07a147fSDavid Daney
90111fc64aSRaghu Vatsavayiconfig LIQUIDIO_VF
91111fc64aSRaghu Vatsavayi	tristate "Cavium LiquidIO VF support"
92111fc64aSRaghu Vatsavayi	depends on 64BIT && PCI_MSI
93cd7aeb1fSNicolas Pitre	imply PTP_1588_CLOCK
94111fc64aSRaghu Vatsavayi	---help---
95111fc64aSRaghu Vatsavayi	  This driver supports Cavium LiquidIO Intelligent Server Adapter
96111fc64aSRaghu Vatsavayi	  based on CN23XX chips.
97111fc64aSRaghu Vatsavayi
98111fc64aSRaghu Vatsavayi	  To compile this driver as a module, choose M here: The module
99111fc64aSRaghu Vatsavayi	  will be called liquidio_vf. MSI-X interrupt support is required
100111fc64aSRaghu Vatsavayi	  for this driver to work correctly
101111fc64aSRaghu Vatsavayi
1024863dea3SSunil Gouthamendif # NET_VENDOR_CAVIUM
103