blob: 1ecf0db8dc97d8a67a3ac73651db3b4455f0631b [file] [log] [blame]
# 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