Kconfig 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121
  1. #
  2. # For a description of the syntax of this configuration file,
  3. # see the file kconfig-language.txt in the NuttX tools repository.
  4. #
  5. menu "UDP Networking"
  6. config NET_UDP
  7. bool "UDP Networking"
  8. default n
  9. depends on NET
  10. ---help---
  11. Enable or disable UDP networking support.
  12. config NET_UDP_NO_STACK
  13. bool "Disable UDP/IP Stack"
  14. default n
  15. select NET_UDP
  16. ---help---
  17. Build without UDP/IP stack even if UDP networking support enabled.
  18. if NET_UDP && !NET_UDP_NO_STACK
  19. config NET_UDP_BINDTODEVICE
  20. bool "UDP Bind-to-device support"
  21. default n
  22. select NET_UDPPROTO_OPTIONS
  23. select NETDEV_IFINDEX
  24. ---help---
  25. Enable support for the UDP_BINDTODEVICE socket option.
  26. Linux has SO_BINDTODEVICE but in NuttX this option is instead
  27. specific to the UDP protocol.
  28. config NET_UDP_CHECKSUMS
  29. bool "UDP checksums"
  30. default y if NET_IPv6
  31. default n if !NET_IPv6
  32. ---help---
  33. Enable/disable UDP checksum support. UDP checksum support is
  34. REQUIRED for IPv6.
  35. config NET_UDP_CONNS
  36. int "Number of UDP sockets"
  37. default 8
  38. ---help---
  39. The maximum amount of open concurrent UDP sockets
  40. config NET_BROADCAST
  41. bool "UDP broadcast Rx support"
  42. default n
  43. ---help---
  44. Incoming UDP broadcast support
  45. config NET_UDP_READAHEAD
  46. bool "Enable UDP/IP read-ahead buffering"
  47. default y
  48. select NET_READAHEAD
  49. select MM_IOB
  50. config UDP_READAHEAD_NOTIFIER
  51. bool "Support UDP read-ahead notifications"
  52. default n
  53. depends on NET_UDP_READAHEAD && SCHED_WORKQUEUE
  54. select WQUEUE_NOTIFIER
  55. ---help---
  56. Enable building of UDP read-ahead notifier logic that will execute a
  57. worker function on the high priority work queue when read-ahead data
  58. is available. This is is a general purpose notifier, but was
  59. developed specifically to support poll() logic where the poll must
  60. wait for read-ahead data to become available.
  61. config NET_UDP_WRITE_BUFFERS
  62. bool "Enable UDP/IP write buffering"
  63. default n
  64. select NET_WRITE_BUFFERS
  65. select MM_IOB
  66. ---help---
  67. Write buffers allows buffering of ongoing UDP/IP packets, providing
  68. for higher performance, streamed output.
  69. You might want to disable UDP/IP write buffering on a highly memory
  70. memory constrained system where there are no performance issues.
  71. if NET_UDP_WRITE_BUFFERS
  72. config NET_UDP_NWRBCHAINS
  73. int "Number of pre-allocated I/O buffer chain heads"
  74. default 8
  75. ---help---
  76. These tiny nodes are used as "containers" to support queuing of
  77. UDP write buffers. This setting will limit the number of UDP write
  78. operations that can be "in-flight" at any give time. So a good
  79. choice for this value would be the same as the maximum number of
  80. UDP connections.
  81. config NET_UDP_WRBUFFER_DEBUG
  82. bool "Force write buffer debug"
  83. default n
  84. depends on DEBUG_FEATURES
  85. select IOB_DEBUG
  86. ---help---
  87. This option will force debug output from UDP write buffer logic,
  88. even without network debug output. This is not normally something
  89. that would want to do but is convenient if you are debugging the
  90. write buffer logic and do not want to get overloaded with other
  91. network-related debug output.
  92. config NET_UDP_WRBUFFER_DUMP
  93. bool "Force write buffer dump"
  94. default n
  95. depends on DEBUG_NET || NET_UDP_WRBUFFER_DEBUG
  96. select IOB_DEBUG
  97. ---help---
  98. Dump the contents of the write buffers. You do not want to do this
  99. unless you really want to analyze the write buffer transfers in
  100. detail.
  101. endif # NET_UDP_WRITE_BUFFERS
  102. endif # NET_UDP && !NET_UDP_NO_STACK
  103. endmenu # UDP Networking