Linux Audio

Check our new training course

Embedded Linux Audio

Check our new training course
with Creative Commons CC-BY-SA
lecture materials

Bootlin logo

Elixir Cross Referencer

Loading...
# ETH_MCUX Ethernet driver configuration options

# Copyright (c) 2016-2017 ARM Ltd
# SPDX-License-Identifier: Apache-2.0

menuconfig ETH_MCUX
	bool "MCUX Ethernet driver"
	default y
	depends on DT_HAS_NXP_KINETIS_ETHERNET_ENABLED
	select NOCACHE_MEMORY if HAS_MCUX_CACHE
	select ARM_MPU if CPU_CORTEX_M7
	select NET_POWER_MANAGEMENT if PM_DEVICE
	help
	  Enable MCUX Ethernet driver.  Note, this driver performs one shot PHY
	  setup.  There is no support for PHY disconnect, reconnect or
	  configuration change.

if ETH_MCUX

config ETH_MCUX_USE_DTCM_FOR_DMA_BUFFER
	bool "Use DTCM for hardware DMA buffers"
	default y
	help
	  Place the hardware DMA buffers into DTCM for better networking
	  performance

config ETH_MCUX_PROMISCUOUS_MODE
	bool "Promiscuous mode"
	help
	  Place the Ethernet receiver in promiscuous mode. This may be useful
	  for debugging and not needed for normal work.

config ETH_MCUX_RMII_EXT_CLK
	bool "RMII clock from external sources"
	help
	  Setting this option will configure MCUX clock block to feed RMII
	  reference clock from external source (ENET_1588_CLKIN)

config ETH_MCUX_NO_PHY_SMI
	bool "Do not use SMI for PHY communication"
	help
	  Some PHY devices, with DSA capabilities do not use SMI for
	  communication with MAC ENET controller. Other busses - like SPI
	  or I2C are used instead.

config ETH_MCUX_PHY_TICK_MS
	int "PHY poll period (ms)"
	default 1000
	range 100 30000
	help
	  Set the PHY status polling period.

config ETH_MCUX_PHY_EXTRA_DEBUG
	bool "Additional detailed PHY debug"
	help
	  Enable additional PHY related debug information related to
	  PHY status polling.

config ETH_MCUX_RX_BUFFERS
	int "Number of MCUX RX buffers"
	default 6
	range 6 16
	help
	  Set the number of RX buffers provided to the MCUX driver.

config ETH_MCUX_PHY_RESET
	bool "Reset the PHY at boot"
	help
	  Reset the ethernet PHY at boot. Requires dts properties int-gpios and
	  reset-gpios to be present.

config ETH_MCUX_TX_BUFFERS
	int "Number of MCUX TX buffers"
	default 1
	range 1 16
	help
	  Set the number of TX buffers provided to the MCUX driver.

config ETH_MCUX_HW_ACCELERATION
	bool "Hardware acceleration"
	help
	  Enable hardware acceleration for the following:
	  - IPv4, UDP and TCP checksum (both Rx and Tx)

config PTP_CLOCK_MCUX
	bool "MCUX PTP clock driver support"
	default y
	depends on PTP_CLOCK || NET_L2_PTP
	help
	  Enable MCUX PTP clock support.

if PTP_CLOCK_MCUX

config ETH_MCUX_PTP_CLOCK_SRC_HZ
	int "Frequency of the clock source for the PTP timer"
	default 50000000 if SOC_SERIES_KINETIS_K6X
	default 50000000 if SOC_SERIES_IMX_RT10XX
	default 24000000 if SOC_SERIES_IMX_RT11XX
	help
	  Set the frequency in Hz sourced to the PTP timer.
	  If the value is set properly, the timer will be accurate.

config ETH_MCUX_PTP_CLOCK_INIT_PRIO
	int
	default 85
	help
	  MCUX PTP Clock initialization priority level. There is
	  a dependency from the network stack that this device
	  initializes before network stack (NET_INIT_PRIO).

endif # PTP_CLOCK_MCUX

endif # ETH_MCUX