2019-11-01 20:45:29 +08:00
|
|
|
# Misc network drivers configuration options
|
2019-04-06 20:40:33 +08:00
|
|
|
# SPDX-License-Identifier: Apache-2.0
|
2019-03-26 23:28:20 +08:00
|
|
|
|
2021-09-10 21:53:31 +08:00
|
|
|
menuconfig NET_DRIVERS
|
2023-03-27 20:55:23 +08:00
|
|
|
bool "Network drivers"
|
2021-09-10 21:53:31 +08:00
|
|
|
|
|
|
|
if NET_DRIVERS
|
|
|
|
|
2019-03-26 23:28:20 +08:00
|
|
|
#
|
|
|
|
# PPP options
|
|
|
|
#
|
|
|
|
menuconfig NET_PPP
|
|
|
|
bool "Point-to-point (PPP) UART based driver"
|
|
|
|
depends on NET_L2_PPP
|
2019-08-09 19:49:35 +08:00
|
|
|
depends on NET_NATIVE
|
2020-08-01 08:33:41 +08:00
|
|
|
select RING_BUFFER
|
2022-09-27 00:13:43 +08:00
|
|
|
select CRC
|
2019-03-26 23:28:20 +08:00
|
|
|
|
|
|
|
if NET_PPP
|
|
|
|
|
2022-01-07 21:14:30 +08:00
|
|
|
config NET_PPP_ASYNC_UART
|
|
|
|
bool "Asynchronous UART API is used"
|
|
|
|
depends on UART_ASYNC_API
|
|
|
|
|
2019-03-26 23:28:20 +08:00
|
|
|
config NET_PPP_DRV_NAME
|
|
|
|
string "PPP Driver name"
|
|
|
|
default "ppp"
|
|
|
|
help
|
|
|
|
This option sets the driver name
|
|
|
|
|
2021-03-25 20:00:28 +08:00
|
|
|
config NET_PPP_MTU_MRU
|
|
|
|
int "PPP MTU and MRU"
|
|
|
|
default 1500
|
|
|
|
help
|
|
|
|
This options sets MTU and MRU for PPP link.
|
|
|
|
|
2020-03-30 22:07:11 +08:00
|
|
|
config NET_PPP_UART_BUF_LEN
|
2019-03-26 23:28:20 +08:00
|
|
|
int "Buffer length when reading from UART"
|
|
|
|
default 8
|
|
|
|
help
|
2020-03-30 22:07:11 +08:00
|
|
|
This options sets the size of the UART buffer where data
|
2019-03-26 23:28:20 +08:00
|
|
|
is being read to.
|
|
|
|
|
2020-03-30 22:07:11 +08:00
|
|
|
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.
|
|
|
|
|
2020-03-31 20:21:24 +08:00
|
|
|
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.
|
|
|
|
|
2019-03-26 23:28:20 +08:00
|
|
|
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.
|
|
|
|
|
2024-03-31 21:03:00 +08:00
|
|
|
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.
|
|
|
|
|
2019-11-01 17:24:07 +08:00
|
|
|
config PPP_MAC_ADDR
|
2019-03-26 23:28:20 +08:00
|
|
|
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.
|
|
|
|
|
2020-01-08 19:59:23 +08:00
|
|
|
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.
|
|
|
|
|
2021-11-16 15:00:06 +08:00
|
|
|
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.
|
|
|
|
|
2022-01-07 21:14:30 +08:00
|
|
|
if NET_PPP_ASYNC_UART
|
|
|
|
|
|
|
|
config NET_PPP_ASYNC_UART_TX_BUF_LEN
|
2023-12-14 17:58:55 +08:00
|
|
|
int "Length of the UART TX buffer to which data is written."
|
2022-01-07 21:14:30 +08:00
|
|
|
default 2048
|
2023-12-14 17:58:55 +08:00
|
|
|
|
|
|
|
config NET_PPP_ASYNC_UART_TX_TIMEOUT
|
|
|
|
int "The timeout for UART transfers in milliseconds, or 0 for no timeout."
|
|
|
|
default 0
|
2022-01-07 21:14:30 +08:00
|
|
|
|
|
|
|
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
|
2022-01-25 16:30:08 +08:00
|
|
|
int "A timeout for uart_rx_enable() in milliseconds"
|
2022-01-07 21:14:30 +08:00
|
|
|
default 100
|
|
|
|
|
|
|
|
endif # NET_PPP_ASYNC_UART
|
|
|
|
|
2019-03-26 23:28:20 +08:00
|
|
|
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
|
|
|
|
|
2016-05-09 17:26:52 +08:00
|
|
|
#
|
|
|
|
# SLIP options
|
|
|
|
#
|
|
|
|
menuconfig SLIP
|
2021-09-10 21:53:31 +08:00
|
|
|
bool "SLIP driver" if !QEMU_TARGET
|
2019-08-09 19:49:35 +08:00
|
|
|
depends on NET_NATIVE
|
2016-05-09 17:26:52 +08:00
|
|
|
select UART_PIPE
|
|
|
|
select UART_INTERRUPT_DRIVEN
|
|
|
|
|
|
|
|
if SLIP
|
|
|
|
|
2019-11-01 17:24:07 +08:00
|
|
|
config SLIP_DRV_NAME
|
2016-05-09 17:26:52 +08:00
|
|
|
string "SLIP Driver name"
|
|
|
|
default "slip"
|
|
|
|
help
|
|
|
|
This option sets the driver name
|
|
|
|
|
2018-10-05 20:14:58 +08:00
|
|
|
module = SLIP
|
|
|
|
module-dep = LOG
|
|
|
|
module-str = Log level for slip driver
|
|
|
|
module-help = Sets log level for slip driver.
|
2018-07-10 20:36:36 +08:00
|
|
|
source "subsys/net/Kconfig.template.log_config.net"
|
2016-05-09 17:26:52 +08:00
|
|
|
|
2019-11-01 17:24:07 +08:00
|
|
|
config SLIP_STATISTICS
|
2016-05-09 17:26:52 +08:00
|
|
|
bool "SLIP network connection statistics"
|
|
|
|
help
|
|
|
|
This option enables statistics support for SLIP driver.
|
|
|
|
|
2019-11-01 21:00:09 +08:00
|
|
|
config SLIP_TAP
|
2016-05-24 16:19:53 +08:00
|
|
|
bool "Use TAP interface to host"
|
2017-07-27 19:09:11 +08:00
|
|
|
default y
|
2016-05-24 16:19:53 +08:00
|
|
|
help
|
2017-07-27 19:09:11 +08:00
|
|
|
In TAP the Ethernet frames are transferred over SLIP.
|
2016-05-24 16:19:53 +08:00
|
|
|
|
2019-11-01 17:24:07 +08:00
|
|
|
config SLIP_MAC_ADDR
|
2017-03-10 14:32:50 +08:00
|
|
|
string "MAC address for the interface"
|
|
|
|
help
|
|
|
|
Specify a MAC address for the SLIP interface in the form of
|
2017-04-22 01:29:51 +08:00
|
|
|
six hex 8-bit chars separated by colons (e.g.:
|
2017-03-10 14:32:50 +08:00
|
|
|
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.
|
|
|
|
|
2016-05-09 17:26:52 +08:00
|
|
|
endif
|
2017-10-20 20:00:39 +08:00
|
|
|
|
|
|
|
#
|
|
|
|
# Net loopback options
|
|
|
|
#
|
|
|
|
menuconfig NET_LOOPBACK
|
2018-08-14 22:19:20 +08:00
|
|
|
bool "Net loopback driver"
|
2017-10-20 20:00:39 +08:00
|
|
|
select NET_L2_DUMMY
|
|
|
|
|
|
|
|
if NET_LOOPBACK
|
|
|
|
|
2022-03-31 17:16:53 +08:00
|
|
|
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
|
|
|
|
|
2022-10-13 00:52:25 +08:00
|
|
|
config NET_LOOPBACK_MTU
|
|
|
|
int "MTU for loopback interface"
|
|
|
|
default 576
|
|
|
|
help
|
|
|
|
This option sets the MTU for loopback interface.
|
|
|
|
|
2018-10-05 20:14:58 +08:00
|
|
|
module = NET_LOOPBACK
|
|
|
|
module-dep = LOG
|
|
|
|
module-str = Log level for network loopback driver
|
|
|
|
module-help = Sets log level for network loopback driver.
|
2018-07-10 20:37:02 +08:00
|
|
|
source "subsys/net/Kconfig.template.log_config.net"
|
2017-10-20 20:00:39 +08:00
|
|
|
|
|
|
|
endif
|
2021-09-10 21:53:31 +08:00
|
|
|
|
2022-05-12 03:53:06 +08:00
|
|
|
#
|
|
|
|
# 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
|
|
|
|
|
2023-11-10 22:46:04 +08:00
|
|
|
#
|
|
|
|
# Native simulator offloaded sockets
|
|
|
|
#
|
|
|
|
|
2024-02-06 20:24:09 +08:00
|
|
|
menuconfig NET_NATIVE_OFFLOADED_SOCKETS
|
2023-11-10 22:46:04 +08:00
|
|
|
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.
|
|
|
|
|
2024-02-06 20:24:09 +08:00
|
|
|
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
|
|
|
|
|
2021-09-10 21:53:31 +08:00
|
|
|
endif # NET_DRIVERS
|