Linux Audio

Check our new training course

Loading...
# Kconfig - 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"
	depends on NET_L2_ETHERNET && HAS_MCUX
	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_PROMISCUOUS_MODE
	bool "Enable 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_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 "Enable 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"
	depends on ETH_MCUX
	default 2
	range 1 16
	help
	  Set the number of RX buffers provided to the MCUX driver.

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

config ETH_MCUX_0
	bool "MCUX Ethernet port 0"
	help
	 Include port 0 driver

config ETH_MCUX_0_NAME
	string "Driver name"
	depends on ETH_MCUX_0
	default "ETH_0"

config ETH_MCUX_0_IRQ_PRI
	int "Controller interrupt priority"
	depends on ETH_MCUX_0
	default 0
	help
	  IRQ priority

choice ETH_MCUX_0_MAC_SELECT
	prompt "MAC address"
	help
	  Choose how to configure MAC address.

config ETH_MCUX_0_UNIQUE_MAC
	bool "Stable MAC address"
	help
	  Generate MAC address from MCU's unique identification register.

config ETH_MCUX_0_RANDOM_MAC
	bool "Random MAC address"
	help
	  Generate a random MAC address dynamically on each reboot.
	  Note that using this choice and rebooting a board may leave
	  stale MAC address in peers' ARP caches and lead to issues and
	  delays in communication. (Use "ip neigh flush all" on Linux
	  peers to clear ARP cache.)

config ETH_MCUX_0_MANUAL_MAC
	bool "Manual MAC address"

endchoice

if ETH_MCUX_0_MANUAL_MAC

config ETH_MCUX_0_MAC3
	hex "MAC Address Byte 3"
	default 0
	range 0 0xff
	help
	  This is the byte 3 of the MAC address.

config ETH_MCUX_0_MAC4
	hex "MAC Address Byte 4"
	default 0
	range 0 0xff
	help
	  This is the byte 4 of the MAC address.

config ETH_MCUX_0_MAC5
	hex "MAC Address Byte 5"
	default 0
	range 0 0xff
	help
	  This is the byte 5 of the MAC address.
endif

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

if PTP_CLOCK_MCUX

config ETH_MCUX_PTP_RX_BUFFERS
	int "Size of the RX timestamp ring buffer"
	default 10
	help
	  Set the number of RX buffers provided to the MCUX driver
	  to store timestamps.

config ETH_MCUX_PTP_TX_BUFFERS
	int "Size of the TX timestamp ring buffer"
	default 10
	help
	  Set the number of TX buffers provided to the MCUX driver
	  to store timestamps.

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

endif # PTP_CLOCK_MCUX

endif