zephyr/drivers/ethernet/Kconfig.mcux
Ulf Magnusson 48753144bd kconfig: ethernet: Remove duplicated dependencies
Some of these are from 'source'ing a file within a menu that has a
'depends on NET_L2_ETHERNET' (in drivers/ethernet/Kconfig) and then
adding another 'depends on NET_L2_ETHERNET' within it.

Similarly, subsys/net/l2/ethernet/Kconfig sources files within an
'if NET_L2_ETHERNET'.

'if FOO' is just shorthand for adding 'depends on FOO' to each item
within the 'if'. Dependencies on menus work similarly. There are no
"conditional includes" in Kconfig, so 'if FOO' has no special meaning
around a source. Conditional includes wouldn't be possible, because an
if condition could include (directly or indirectly) forward references
to symbols not defined yet.

Tip: When adding a symbol, check its dependencies in the menuconfig
('ninja menuconfig', then / to jump to the symbol). The menuconfig also
shows how the file with the symbol got included, so if you see
duplicated dependencies, it's easy to hunt down where they come from.

Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
2019-03-08 07:23:02 -05:00

114 lines
2.7 KiB
Plaintext

# 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 HAS_MCUX_ENET
select NOCACHE_MEMORY if HAS_MCUX_CACHE
select ARM_MPU if CPU_CORTEX_M7
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"
default 1
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"
default 1
range 1 1
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
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
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 # ETH_MCUX