274 lines
6.9 KiB
Plaintext
274 lines
6.9 KiB
Plaintext
# Misc network drivers configuration options
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
menuconfig NET_DRIVERS
|
|
bool "Network drivers"
|
|
|
|
if NET_DRIVERS
|
|
|
|
#
|
|
# PPP options
|
|
#
|
|
menuconfig NET_PPP
|
|
bool "Point-to-point (PPP) UART based driver"
|
|
depends on NET_L2_PPP
|
|
depends on NET_NATIVE
|
|
select RING_BUFFER
|
|
select CRC
|
|
|
|
if NET_PPP
|
|
|
|
config NET_PPP_ASYNC_UART
|
|
bool "Asynchronous UART API is used"
|
|
depends on UART_ASYNC_API
|
|
|
|
config NET_PPP_DRV_NAME
|
|
string "PPP Driver name"
|
|
default "ppp"
|
|
help
|
|
This option sets the driver name
|
|
|
|
config NET_PPP_MTU_MRU
|
|
int "PPP MTU and MRU"
|
|
default 1500
|
|
help
|
|
This options sets MTU and MRU for PPP link.
|
|
|
|
config NET_PPP_UART_BUF_LEN
|
|
int "Buffer length when reading from UART"
|
|
default 8
|
|
help
|
|
This options sets the size of the UART buffer where data
|
|
is being read to.
|
|
|
|
config NET_PPP_RINGBUF_SIZE
|
|
int "PPP ring buffer size"
|
|
default 256
|
|
help
|
|
PPP ring buffer size when passing data from RX ISR to worker
|
|
thread that will pass the data to IP stack.
|
|
|
|
config NET_PPP_RX_STACK_SIZE
|
|
int "Size of the stack allocated for receiving data from modem"
|
|
default 768
|
|
help
|
|
Sets the stack size which will be used by the PPP RX workqueue.
|
|
|
|
config NET_PPP_RX_PRIORITY
|
|
int "RX workqueue thread priority"
|
|
default 7
|
|
help
|
|
Sets the priority of the RX workqueue thread.
|
|
|
|
config NET_PPP_VERIFY_FCS
|
|
bool "Verify that received FCS is valid"
|
|
default y
|
|
help
|
|
If you have a reliable link, then it might make sense
|
|
to disable this as it takes some time to verify the received
|
|
packet.
|
|
|
|
config NET_PPP_CAPTURE
|
|
bool "Capture received PPP packets"
|
|
depends on NET_CAPTURE_COOKED_MODE
|
|
help
|
|
This enables PPP packet capture. One needs to configure the
|
|
packet capturing in core network stack to send the captured packets
|
|
to outside system. This requires a non-PPP network connection
|
|
where the captured packets are sent for processing. Note that you
|
|
cannot use the PPP connection to sending packets as that would
|
|
lead recursion.
|
|
|
|
config NET_PPP_CAPTURE_BUF_SIZE
|
|
int "Capture buffer for storing full PPP packets"
|
|
depends on NET_PPP_CAPTURE
|
|
default 1500
|
|
help
|
|
The captured PPP frames are temporarily stored into this buffer.
|
|
|
|
config PPP_MAC_ADDR
|
|
string "MAC address for the interface"
|
|
help
|
|
Specify a MAC address for the PPP interface in the form of
|
|
six hex 8-bit chars separated by colons (e.g.:
|
|
aa:33:cc:22:e2:c0). The default is an empty string, which
|
|
means the code will make 00:00:5E:00:53:XX, where XX will be
|
|
random.
|
|
|
|
config PPP_CLIENT_CLIENTSERVER
|
|
bool "Reply to the request CLIENT with CLIENTSERVER"
|
|
help
|
|
This is only necessary if a ppp connection should be
|
|
established with a Microsoft Windows PC.
|
|
|
|
config PPP_NET_IF_NO_AUTO_START
|
|
bool "Disable PPP interface auto-start"
|
|
help
|
|
This option allows user to disable autostarting of the PPP interface
|
|
immediately after initialization.
|
|
|
|
if NET_PPP_ASYNC_UART
|
|
|
|
config NET_PPP_ASYNC_UART_TX_BUF_LEN
|
|
int "Length of the UART TX buffer to which data is written."
|
|
default 2048
|
|
|
|
config NET_PPP_ASYNC_UART_TX_TIMEOUT
|
|
int "The timeout for UART transfers in milliseconds, or 0 for no timeout."
|
|
default 0
|
|
|
|
config NET_PPP_ASYNC_UART_RX_RECOVERY_TIMEOUT
|
|
int "UART RX recovery timeout in milliseconds"
|
|
default 200
|
|
help
|
|
The time that UART RX is in disabled state in case
|
|
when we cannot receive more data from UART.
|
|
|
|
config NET_PPP_ASYNC_UART_RX_ENABLE_TIMEOUT
|
|
int "A timeout for uart_rx_enable() in milliseconds"
|
|
default 100
|
|
|
|
endif # NET_PPP_ASYNC_UART
|
|
|
|
module = NET_PPP
|
|
module-dep = LOG
|
|
module-str = Log level for ppp driver
|
|
module-help = Sets log level for ppp driver.
|
|
source "subsys/net/Kconfig.template.log_config.net"
|
|
|
|
endif # NET_PPP
|
|
|
|
#
|
|
# SLIP options
|
|
#
|
|
menuconfig SLIP
|
|
bool "SLIP driver" if !QEMU_TARGET
|
|
depends on NET_NATIVE
|
|
select UART_PIPE
|
|
select UART_INTERRUPT_DRIVEN
|
|
|
|
if SLIP
|
|
|
|
config SLIP_DRV_NAME
|
|
string "SLIP Driver name"
|
|
default "slip"
|
|
help
|
|
This option sets the driver name
|
|
|
|
module = SLIP
|
|
module-dep = LOG
|
|
module-str = Log level for slip driver
|
|
module-help = Sets log level for slip driver.
|
|
source "subsys/net/Kconfig.template.log_config.net"
|
|
|
|
config SLIP_STATISTICS
|
|
bool "SLIP network connection statistics"
|
|
help
|
|
This option enables statistics support for SLIP driver.
|
|
|
|
config SLIP_TAP
|
|
bool "Use TAP interface to host"
|
|
default y
|
|
help
|
|
In TAP the Ethernet frames are transferred over SLIP.
|
|
|
|
config SLIP_MAC_ADDR
|
|
string "MAC address for the interface"
|
|
help
|
|
Specify a MAC address for the SLIP interface in the form of
|
|
six hex 8-bit chars separated by colons (e.g.:
|
|
aa:33:cc:22:e2:c0). The default is an empty string, which
|
|
means the code will make 00:00:5E:00:53:XX, where XX will be
|
|
random.
|
|
|
|
endif
|
|
|
|
#
|
|
# Net loopback options
|
|
#
|
|
menuconfig NET_LOOPBACK
|
|
bool "Net loopback driver"
|
|
select NET_L2_DUMMY
|
|
|
|
if NET_LOOPBACK
|
|
|
|
config NET_LOOPBACK_SIMULATE_PACKET_DROP
|
|
bool "Controlable packet drop"
|
|
help
|
|
Enable interface to have a controlable packet drop rate, only for
|
|
testing, should not be enabled for normal applications
|
|
|
|
config NET_LOOPBACK_MTU
|
|
int "MTU for loopback interface"
|
|
default 576
|
|
help
|
|
This option sets the MTU for loopback interface.
|
|
|
|
module = NET_LOOPBACK
|
|
module-dep = LOG
|
|
module-str = Log level for network loopback driver
|
|
module-help = Sets log level for network loopback driver.
|
|
source "subsys/net/Kconfig.template.log_config.net"
|
|
|
|
endif
|
|
|
|
#
|
|
# CAN bus network driver options
|
|
#
|
|
menuconfig NET_CANBUS
|
|
bool "Controller Area Network (CAN) bus network driver"
|
|
help
|
|
Enable the CAN bus network driver. This driver provides a network interface on top of the
|
|
CAN controller driver API.
|
|
|
|
if NET_CANBUS
|
|
|
|
module = NET_CANBUS
|
|
module-dep = LOG
|
|
module-str = Log level for CAN bus network driver
|
|
module-help = Sets log level CAN bus network driver.
|
|
source "subsys/net/Kconfig.template.log_config.net"
|
|
|
|
config NET_CANBUS_INIT_PRIORITY
|
|
int "CAN bus network device init priority"
|
|
default 81
|
|
help
|
|
CAN bus network device initialization priority.
|
|
|
|
The priority needs to be lower than the network stack and higher than the CAN controller
|
|
driver.
|
|
|
|
endif # NET_CAN
|
|
|
|
#
|
|
# Native simulator offloaded sockets
|
|
#
|
|
|
|
menuconfig NET_NATIVE_OFFLOADED_SOCKETS
|
|
bool "Native Simulator offloaded sockets"
|
|
depends on ARCH_POSIX
|
|
depends on NATIVE_LIBRARY
|
|
depends on NET_SOCKETS_OFFLOAD
|
|
help
|
|
Offloaded sockets for Native Simulator utilize host BSD sockets API (like socket(),
|
|
connect(), send(), recvfrom(), etc.) in order to provide networking capability.
|
|
|
|
This driver main advantage is that it is possible to use this driver without any
|
|
additional setup on the host side, unlike with the native TAP Ethernet driver.
|
|
|
|
if NET_NATIVE_OFFLOADED_SOCKETS
|
|
|
|
config NET_NATIVE_OFFLOADED_SOCKETS_EPOLL_WAIT_INTERVAL
|
|
int "Interval between epoll_wait() calls (in simulated microseconds)"
|
|
default 1000
|
|
help
|
|
Number of simulated microseconds before next epoll_wait() call, when there were no pending
|
|
events detected.
|
|
|
|
Decrease that value when lower network traffic latency is expected, at the expense of more
|
|
CPU processing overhead.
|
|
|
|
endif # NET_NATIVE_OFFLOADED_SOCKETS
|
|
|
|
endif # NET_DRIVERS
|