rt-thread-official/components/net/lwip/Kconfig

405 lines
10 KiB
Plaintext

menuconfig RT_USING_LWIP
bool "LwIP: light weight TCP/IP stack"
select RT_USING_DEVICE
select RT_USING_DEVICE_IPC
select SAL_USING_LWIP if RT_USING_SAL
default n
if RT_USING_LWIP
config RT_USING_LWIP_LOCAL_VERSION
bool "Use LwIP local version only"
default n
help
If don't select this option, both local version and upstream
version can be selected. If select this option, only local version
can be selected.
choice
prompt "lwIP version"
default RT_USING_LWIP203
help
Select the lwIP version
config RT_USING_LWIP141
bool "lwIP v1.4.1"
config RT_USING_LWIP203
bool "lwIP v2.0.3"
config RT_USING_LWIP212
bool "lwIP v2.1.2"
# online version
if !RT_USING_LWIP_LOCAL_VERSION
config RT_USING_LWIP_LATEST
bool "lwIP latest"
select PKG_USING_LWIP
endif
endchoice
config RT_USING_LWIP_VER_NUM
hex
default 0x99999 if RT_USING_LWIP_LATEST
default 0x20102 if RT_USING_LWIP212
default 0x20003 if RT_USING_LWIP203
default 0x10401 if RT_USING_LWIP141
if (RT_USING_LWIP_VER_NUM >= 0x20000)
config RT_USING_LWIP_IPV6
bool "IPV6 protocol"
default n
select NETDEV_USING_IPV6
select NETDEV_IPV6_SCOPES if RT_USING_LWIP212
endif
config RT_LWIP_MEM_ALIGNMENT
int "Memory alignment"
default 8 if ARCH_CPU_64BIT
default 4
config RT_LWIP_IGMP
bool "IGMP protocol"
default y
config RT_LWIP_ICMP
bool "ICMP protocol"
default y
config RT_LWIP_SNMP
bool "SNMP protocol"
select RT_LWIP_STATS
default n
config RT_LWIP_DNS
bool "Enble DNS for name resolution"
select RT_LWIP_UDP
default y
config RT_LWIP_DHCP
bool "Enable alloc ip address through DHCP"
select RT_LWIP_UDP
default y
if RT_LWIP_DHCP
config IP_SOF_BROADCAST
int "SOF broadcast"
default 1
config IP_SOF_BROADCAST_RECV
int "SOF broadcast recv"
default 1
endif
menu "Static IPv4 Address"
config RT_LWIP_IPADDR
string "IPv4: IP address"
default "192.168.1.30"
config RT_LWIP_GWADDR
string "IPv4: Gateway address"
default "192.168.1.1"
config RT_LWIP_MSKADDR
string "IPv4: Mask address"
default "255.255.255.0"
endmenu
config RT_LWIP_UDP
bool "UDP protocol"
default y
config RT_LWIP_TCP
bool "TCP protocol"
default y
config RT_LWIP_RAW
bool "RAW protocol"
default n
config RT_LWIP_PPP
bool "PPP protocol"
default n
if RT_LWIP_PPP
config RT_LWIP_PPPOE
bool "PPPoE protocol"
default n
config RT_LWIP_PPPOS
bool "PPPoS protocol"
default n
endif
config RT_MEMP_NUM_NETCONN
int "the number of struct netconns"
default 8
config RT_LWIP_PBUF_NUM
int "the number of PBUF"
default 16
config RT_LWIP_RAW_PCB_NUM
int "the number of raw connection"
default 4
config RT_LWIP_UDP_PCB_NUM
int "the number of UDP socket"
default 8 if RT_USING_DFS_NFS
default 4
if RT_LWIP_TCP
config RT_LWIP_TCP_PCB_NUM
int "the number of TCP socket"
default 4
config RT_LWIP_TCP_SEG_NUM
int "the number of TCP segment"
default 40
config RT_LWIP_TCP_SND_BUF
int "the size of send buffer"
default 8196
config RT_LWIP_TCP_WND
int "the size of TCP send window"
default 8196
endif
config RT_LWIP_TCPTHREAD_PRIORITY
int "the priority level value of lwIP thread"
default 10
config RT_LWIP_TCPTHREAD_MBOX_SIZE
int "the number of mail in the lwIP thread mailbox"
default 8
config RT_LWIP_TCPTHREAD_STACKSIZE
int "the stack size of lwIP thread"
default 2048 if ARCH_CPU_64BIT
default 1024
config LWIP_NO_RX_THREAD
bool "Not use Rx thread"
default n
config LWIP_NO_TX_THREAD
bool "Not use Tx thread"
default n
config RT_LWIP_ETHTHREAD_PRIORITY
int "the priority level value of ethernet thread"
default 12
config RT_LWIP_ETHTHREAD_STACKSIZE
int "the stack size of ethernet thread"
default 2048 if ARCH_CPU_64BIT
default 1024
config RT_LWIP_ETHTHREAD_MBOX_SIZE
int "the number of mail in the ethernet thread mailbox"
default 8
config RT_LWIP_REASSEMBLY_FRAG
bool "Enable IP reassembly and frag"
default n
config LWIP_NETIF_STATUS_CALLBACK
int "Enable netif status callback"
default 1
config LWIP_NETIF_LINK_CALLBACK
int "Enable netif link status callback"
default 1
config RT_LWIP_NETIF_NAMESIZE
int "netif name length"
default 6
config SO_REUSE
int "Enable SO_REUSEADDR option"
default 1
config LWIP_SO_RCVTIMEO
int "Enable receive timeout for sockets/netconns and SO_RCVTIMEO processing."
default 1
config LWIP_SO_SNDTIMEO
int "Enable send timeout for sockets/netconns and SO_SNDTIMEO processing."
default 1
config LWIP_SO_RCVBUF
int "Enable SO_RCVBUF processing"
default 1
config LWIP_SO_LINGER
int "Enable SO_LINGER processing"
default 0
config RT_LWIP_NETIF_LOOPBACK
bool "Enable netif loopback"
default n
config LWIP_NETIF_LOOPBACK
int
default 1 if RT_LWIP_NETIF_LOOPBACK
default 0 if !RT_LWIP_NETIF_LOOPBACK
config RT_LWIP_STATS
bool "Enable lwIP statistics"
default n
config RT_LWIP_USING_HW_CHECKSUM
bool "Enable hardware checksum"
default n
config RT_LWIP_USING_PING
bool "Enable ping features"
default y
select NETDEV_USING_PING
select RT_LWIP_ICMP
select RT_LWIP_RAW
config LWIP_USING_DHCPD
bool "Enable DHCP server"
default n
if LWIP_USING_DHCPD
config DHCPD_SERVER_IP
string "DHCPD SERVER IP address"
default "192.168.169.1"
config DHCPD_USING_ROUTER
bool "alloc gateway ip for router"
default y
config LWIP_USING_CUSTOMER_DNS_SERVER
bool "Enable customer DNS server config"
default n
if LWIP_USING_CUSTOMER_DNS_SERVER
config DHCP_DNS_SERVER_IP
string "Custom DNS server IP address"
default "1.1.1.1"
endif
endif
menuconfig RT_LWIP_DEBUG
bool "Enable lwIP Debugging Options"
default n
if RT_LWIP_DEBUG
config RT_LWIP_SYS_DEBUG
bool "Enable Debugging of sys.c"
default n
config RT_LWIP_ETHARP_DEBUG
bool "Enable Debugging of etharp.c"
default n
config RT_LWIP_PPP_DEBUG
bool "Enable Debugging of PPP"
default n
config RT_LWIP_MEM_DEBUG
bool "Enable Debugging of mem.c"
default n
config RT_LWIP_MEMP_DEBUG
bool "Enable Debugging of memp.c"
default n
config RT_LWIP_PBUF_DEBUG
bool "Enable Debugging of pbuf.c"
default n
config RT_LWIP_API_LIB_DEBUG
bool "Enable Debugging of api_lib.c"
default n
config RT_LWIP_API_MSG_DEBUG
bool "Enable Debugging of api_msg.c"
default n
config RT_LWIP_TCPIP_DEBUG
bool "Enable Debugging of tcpip.c"
default n
config RT_LWIP_NETIF_DEBUG
bool "Enable Debugging of netif.c"
default n
config RT_LWIP_SOCKETS_DEBUG
bool "Enable Debugging of sockets.c"
default n
config RT_LWIP_DNS_DEBUG
bool "Enable Debugging of DNS"
default n
config RT_LWIP_AUTOIP_DEBUG
bool "Enable Debugging of autoip.c"
default n
config RT_LWIP_DHCP_DEBUG
bool "Enable Debugging of dhcp.c"
default n
config RT_LWIP_IP_DEBUG
bool "Enable Debugging of IP"
default n
config RT_LWIP_IP_REASS_DEBUG
bool "Enable debugging in ip_frag.c for both frag & reass"
default n
config RT_LWIP_ICMP_DEBUG
bool "Enable Debugging of icmp.c"
default n
config RT_LWIP_IGMP_DEBUG
bool "Enable Debugging of igmp.c"
default n
config RT_LWIP_UDP_DEBUG
bool "Enable Debugging of UDP"
default n
config RT_LWIP_TCP_DEBUG
bool "Enable Debugging of TCP"
default n
config RT_LWIP_TCP_INPUT_DEBUG
bool "Enable Debugging of tcp_in.c"
default n
config RT_LWIP_TCP_OUTPUT_DEBUG
bool "Enable Debugging of tcp_out.c"
default n
config RT_LWIP_TCP_RTO_DEBUG
bool "Enable debugging in TCP for retransmit"
default n
config RT_LWIP_TCP_CWND_DEBUG
bool "Enable debugging for TCP congestion window"
default n
config RT_LWIP_TCP_WND_DEBUG
bool "Enable debugging in tcp_in.c for window updating"
default n
config RT_LWIP_TCP_FR_DEBUG
bool "Enable debugging in tcp_in.c for fast retransmit"
default n
config RT_LWIP_TCP_QLEN_DEBUG
bool "Enable debugging for TCP queue lengths"
default n
config RT_LWIP_TCP_RST_DEBUG
bool "Enable debugging for TCP with the RST message"
default n
endif
endif