This patch is to add hardware timestamping support for ENETC. On Rx, timestamping is enabled for all frames. On Tx, we only instruct the hardware to timestamp the frames marked accordingly by the stack. Because the RX BD ring dynamic allocation has not been supported and it is too expensive to use extended RX BDs if timestamping is not used, a Kconfig option is used to enable extended RX BDs in order to support hardware timestamping. This option will be removed once RX BD ring dynamic allocation is implemented. Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com> Signed-off-by: Claudiu Manoil <claudiu.manoil@nxp.com> Signed-off-by: David S. Miller <davem@davemloft.net>
42 lines
1.5 KiB
Plaintext
42 lines
1.5 KiB
Plaintext
# SPDX-License-Identifier: GPL-2.0
|
|
config FSL_ENETC
|
|
tristate "ENETC PF driver"
|
|
depends on PCI && PCI_MSI && (ARCH_LAYERSCAPE || COMPILE_TEST)
|
|
help
|
|
This driver supports NXP ENETC gigabit ethernet controller PCIe
|
|
physical function (PF) devices, managing ENETC Ports at a privileged
|
|
level.
|
|
|
|
If compiled as module (M), the module name is fsl-enetc.
|
|
|
|
config FSL_ENETC_VF
|
|
tristate "ENETC VF driver"
|
|
depends on PCI && PCI_MSI && (ARCH_LAYERSCAPE || COMPILE_TEST)
|
|
help
|
|
This driver supports NXP ENETC gigabit ethernet controller PCIe
|
|
virtual function (VF) devices enabled by the ENETC PF driver.
|
|
|
|
If compiled as module (M), the module name is fsl-enetc-vf.
|
|
|
|
config FSL_ENETC_PTP_CLOCK
|
|
tristate "ENETC PTP clock driver"
|
|
depends on PTP_1588_CLOCK_QORIQ && (FSL_ENETC || FSL_ENETC_VF)
|
|
default y
|
|
help
|
|
This driver adds support for using the ENETC 1588 timer
|
|
as a PTP clock. This clock is only useful if your PTP
|
|
programs are getting hardware time stamps on the PTP Ethernet
|
|
packets using the SO_TIMESTAMPING API.
|
|
|
|
If compiled as module (M), the module name is fsl-enetc-ptp.
|
|
|
|
config FSL_ENETC_HW_TIMESTAMPING
|
|
bool "ENETC hardware timestamping support"
|
|
depends on FSL_ENETC || FSL_ENETC_VF
|
|
help
|
|
Enable hardware timestamping support on the Ethernet packets
|
|
using the SO_TIMESTAMPING API. Because the RX BD ring dynamic
|
|
allocation has not been supported and it is too expensive to use
|
|
extended RX BDs if timestamping is not used, this option enables
|
|
extended RX BDs in order to support hardware timestamping.
|