Adapted to Lora Semtech + Nucleo
Dependents: LoRaWAN-lmic-app LoRaWAN-lmic-app LoRaWAN-test-10secs LoRaPersonalizedDeviceForEverynet ... more
Fork of lwip_ppp_ethernet by
lwipopts.h@0:8e01dca41002, 2012-05-24 (annotated)
- Committer:
- donatien
- Date:
- Thu May 24 15:53:48 2012 +0000
- Revision:
- 0:8e01dca41002
- Child:
- 1:ab052ffd1305
Merge with Emilio's LwIp
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
donatien | 0:8e01dca41002 | 1 | /* lwipopts.h */ |
donatien | 0:8e01dca41002 | 2 | /* |
donatien | 0:8e01dca41002 | 3 | Copyright (C) 2012 ARM Limited. |
donatien | 0:8e01dca41002 | 4 | |
donatien | 0:8e01dca41002 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of |
donatien | 0:8e01dca41002 | 6 | this software and associated documentation files (the "Software"), to deal in |
donatien | 0:8e01dca41002 | 7 | the Software without restriction, including without limitation the rights to |
donatien | 0:8e01dca41002 | 8 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies |
donatien | 0:8e01dca41002 | 9 | of the Software, and to permit persons to whom the Software is furnished to do |
donatien | 0:8e01dca41002 | 10 | so, subject to the following conditions: |
donatien | 0:8e01dca41002 | 11 | |
donatien | 0:8e01dca41002 | 12 | The above copyright notice and this permission notice shall be included in all |
donatien | 0:8e01dca41002 | 13 | copies or substantial portions of the Software. |
donatien | 0:8e01dca41002 | 14 | |
donatien | 0:8e01dca41002 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
donatien | 0:8e01dca41002 | 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
donatien | 0:8e01dca41002 | 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE |
donatien | 0:8e01dca41002 | 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER |
donatien | 0:8e01dca41002 | 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, |
donatien | 0:8e01dca41002 | 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE |
donatien | 0:8e01dca41002 | 21 | SOFTWARE. |
donatien | 0:8e01dca41002 | 22 | */ |
donatien | 0:8e01dca41002 | 23 | |
donatien | 0:8e01dca41002 | 24 | #ifndef LWIPOPTS_H_ |
donatien | 0:8e01dca41002 | 25 | #define LWIPOPTS_H_ |
donatien | 0:8e01dca41002 | 26 | |
donatien | 0:8e01dca41002 | 27 | #include "networking_conf.h" //Basically a #define NET_PPP 1 or #define NET_ETHERNET 1 file |
donatien | 0:8e01dca41002 | 28 | |
donatien | 0:8e01dca41002 | 29 | #define NO_SYS 0 |
donatien | 0:8e01dca41002 | 30 | |
donatien | 0:8e01dca41002 | 31 | #define NET_PPP 0 //For now only PPP is supported |
donatien | 0:8e01dca41002 | 32 | #define NET_ETHERNET 1 //Ethernet is in pre-alpha |
donatien | 0:8e01dca41002 | 33 | //Memory |
donatien | 0:8e01dca41002 | 34 | #define MEM_ALIGNMENT 4 |
donatien | 0:8e01dca41002 | 35 | |
donatien | 0:8e01dca41002 | 36 | #define MEMP_OVERFLOW_CHECK 0 //For debug, must be removed once everything is validated to reduce mem consumption and improve performance |
donatien | 0:8e01dca41002 | 37 | #define MEMP_SANITY_CHECK 0 //Same here |
donatien | 0:8e01dca41002 | 38 | #define MEMP_NUM_SYS_TIMEOUT 16 |
donatien | 0:8e01dca41002 | 39 | |
donatien | 0:8e01dca41002 | 40 | //Debug |
donatien | 0:8e01dca41002 | 41 | #define LWIP_DEBUG 0 |
donatien | 0:8e01dca41002 | 42 | #define PPP_DEBUG LWIP_DBG_OFF |
donatien | 0:8e01dca41002 | 43 | #define IP_DEBUG LWIP_DBG_OFF |
donatien | 0:8e01dca41002 | 44 | #define MEM_DEBUG LWIP_DBG_OFF |
donatien | 0:8e01dca41002 | 45 | #define MEMP_DEBUG LWIP_DBG_OFF |
donatien | 0:8e01dca41002 | 46 | #define PBUF_DEBUG LWIP_DBG_OFF |
donatien | 0:8e01dca41002 | 47 | #define API_LIB_DEBUG LWIP_DBG_OFF |
donatien | 0:8e01dca41002 | 48 | #define API_MSG_DEBUG LWIP_DBG_OFF |
donatien | 0:8e01dca41002 | 49 | #define TCPIP_DEBUG LWIP_DBG_OFF |
donatien | 0:8e01dca41002 | 50 | #define SOCKETS_DEBUG LWIP_DBG_OFF |
donatien | 0:8e01dca41002 | 51 | #define TCP_DEBUG LWIP_DBG_OFF |
donatien | 0:8e01dca41002 | 52 | #define TCP_INPUT_DEBUG LWIP_DBG_OFF |
donatien | 0:8e01dca41002 | 53 | #define TCP_FR_DEBUG LWIP_DBG_OFF |
donatien | 0:8e01dca41002 | 54 | #define TCP_RTO_DEBUG LWIP_DBG_OFF |
donatien | 0:8e01dca41002 | 55 | #define TCP_CWND_DEBUG LWIP_DBG_OFF |
donatien | 0:8e01dca41002 | 56 | #define TCP_WND_DEBUG LWIP_DBG_OFF |
donatien | 0:8e01dca41002 | 57 | #define TCP_OUTPUT_DEBUG LWIP_DBG_OFF |
donatien | 0:8e01dca41002 | 58 | #define TCP_RST_DEBUG LWIP_DBG_OFF |
donatien | 0:8e01dca41002 | 59 | #define TCP_QLEN_DEBUG LWIP_DBG_OFF |
donatien | 0:8e01dca41002 | 60 | #define ETHARP_DEBUG LWIP_DBG_OFF |
donatien | 0:8e01dca41002 | 61 | #define NETIF_DEBUG LWIP_DBG_OFF |
donatien | 0:8e01dca41002 | 62 | #define DHCP_DEBUG LWIP_DBG_OFF |
donatien | 0:8e01dca41002 | 63 | |
donatien | 0:8e01dca41002 | 64 | //Modules to enable |
donatien | 0:8e01dca41002 | 65 | #define LWIP_NETCONN 1 |
donatien | 0:8e01dca41002 | 66 | #define LWIP_SOCKET 1 |
donatien | 0:8e01dca41002 | 67 | #define TCP_QUEUE_OOSEQ 0 |
donatien | 0:8e01dca41002 | 68 | #define LWIP_STATS 0 |
donatien | 0:8e01dca41002 | 69 | #define TCP_STATS 0 |
donatien | 0:8e01dca41002 | 70 | #define IP_STATS 0 |
donatien | 0:8e01dca41002 | 71 | #define LINK_STATS 0 |
donatien | 0:8e01dca41002 | 72 | #define MEM_STATS 0 |
donatien | 0:8e01dca41002 | 73 | #define MEMP_STATS 0 |
donatien | 0:8e01dca41002 | 74 | #define SYS_STATS 0 |
donatien | 0:8e01dca41002 | 75 | #define LWIP_STATS_DISPLAY 0 |
donatien | 0:8e01dca41002 | 76 | |
donatien | 0:8e01dca41002 | 77 | //Mailboxes |
donatien | 0:8e01dca41002 | 78 | #define TCPIP_MBOX_SIZE 6 |
donatien | 0:8e01dca41002 | 79 | #define DEFAULT_TCP_RECVMBOX_SIZE 6 |
donatien | 0:8e01dca41002 | 80 | #define DEFAULT_UDP_RECVMBOX_SIZE 6 |
donatien | 0:8e01dca41002 | 81 | #define DEFAULT_RAW_RECVMBOX_SIZE 6 |
donatien | 0:8e01dca41002 | 82 | #define DEFAULT_ACCEPTMBOX_SIZE 6 |
donatien | 0:8e01dca41002 | 83 | |
donatien | 0:8e01dca41002 | 84 | //TCP/IP Thread |
donatien | 0:8e01dca41002 | 85 | #define TCPIP_THREAD_STACKSIZE 1024 |
donatien | 0:8e01dca41002 | 86 | #define TCPIP_THREAD_PRIO 1 |
donatien | 0:8e01dca41002 | 87 | |
donatien | 0:8e01dca41002 | 88 | //Buffers |
donatien | 0:8e01dca41002 | 89 | #define PBUF_POOL_SIZE 5 |
donatien | 0:8e01dca41002 | 90 | #define MEMP_NUM_TCP_PCB_LISTEN 4 |
donatien | 0:8e01dca41002 | 91 | #define MEMP_NUM_TCP_PCB 4 |
donatien | 0:8e01dca41002 | 92 | #define MEMP_NUM_PBUF 8 |
donatien | 0:8e01dca41002 | 93 | |
donatien | 0:8e01dca41002 | 94 | #define TCP_OVERSIZE 0 //Disable until it gets fixed in mainline LwIP |
donatien | 0:8e01dca41002 | 95 | #define DEFAULT_THREAD_STACKSIZE 512 |
donatien | 0:8e01dca41002 | 96 | #if NET_PPP |
donatien | 0:8e01dca41002 | 97 | ///PPP Options |
donatien | 0:8e01dca41002 | 98 | |
donatien | 0:8e01dca41002 | 99 | #define TCP_SND_BUF (3 * 536) |
donatien | 0:8e01dca41002 | 100 | #define TCP_WND (2 * 536) |
donatien | 0:8e01dca41002 | 101 | |
donatien | 0:8e01dca41002 | 102 | #define LWIP_ARP 0 |
donatien | 0:8e01dca41002 | 103 | |
donatien | 0:8e01dca41002 | 104 | #define PPP_SUPPORT 1 |
donatien | 0:8e01dca41002 | 105 | #define CHAP_SUPPORT 1 |
donatien | 0:8e01dca41002 | 106 | #define PAP_SUPPORT 1 |
donatien | 0:8e01dca41002 | 107 | #define PPP_THREAD_STACKSIZE 4*192 |
donatien | 0:8e01dca41002 | 108 | #define PPP_THREAD_PRIO 0 |
donatien | 0:8e01dca41002 | 109 | |
donatien | 0:8e01dca41002 | 110 | #define MAXNAMELEN 64 /* max length of hostname or name for auth */ |
donatien | 0:8e01dca41002 | 111 | #define MAXSECRETLEN 64 |
donatien | 0:8e01dca41002 | 112 | #elif NET_ETHERNET |
donatien | 0:8e01dca41002 | 113 | |
donatien | 0:8e01dca41002 | 114 | #define MEM_SIZE 16362 //Needs a huge buffer pool |
donatien | 0:8e01dca41002 | 115 | |
donatien | 0:8e01dca41002 | 116 | #define LWIP_ARP 1 //Enable ARP |
donatien | 0:8e01dca41002 | 117 | |
donatien | 0:8e01dca41002 | 118 | /* This define is custom for the LPC EMAC driver. Enabled it to |
donatien | 0:8e01dca41002 | 119 | get debug messages for the driver. */ |
donatien | 0:8e01dca41002 | 120 | #define UDP_LPC_EMAC LWIP_DBG_OFF |
donatien | 0:8e01dca41002 | 121 | |
donatien | 0:8e01dca41002 | 122 | /* No padding needed */ |
donatien | 0:8e01dca41002 | 123 | #define ETH_PAD_SIZE 0 |
donatien | 0:8e01dca41002 | 124 | |
donatien | 0:8e01dca41002 | 125 | /* MSS should match the hardware packet size */ |
donatien | 0:8e01dca41002 | 126 | #define TCP_MSS 1460 |
donatien | 0:8e01dca41002 | 127 | #define TCP_SND_BUF (2 * TCP_MSS) |
donatien | 0:8e01dca41002 | 128 | #define TCP_WND (2 * TCP_MSS) |
donatien | 0:8e01dca41002 | 129 | #define TCP_SND_QUEUELEN (2 * TCP_SND_BUF/TCP_MSS) |
donatien | 0:8e01dca41002 | 130 | |
donatien | 0:8e01dca41002 | 131 | #define IP_SOF_BROADCAST 1 |
donatien | 0:8e01dca41002 | 132 | #define IP_SOF_BROADCAST_RECV 1 |
donatien | 0:8e01dca41002 | 133 | |
donatien | 0:8e01dca41002 | 134 | /* The ethernet FCS is performed in hardware. The IP, TCP, and UDP |
donatien | 0:8e01dca41002 | 135 | CRCs still need to be done in hardware. */ |
donatien | 0:8e01dca41002 | 136 | #define CHECKSUM_GEN_IP 1 |
donatien | 0:8e01dca41002 | 137 | #define CHECKSUM_GEN_UDP 1 |
donatien | 0:8e01dca41002 | 138 | #define CHECKSUM_GEN_TCP 1 |
donatien | 0:8e01dca41002 | 139 | #define CHECKSUM_CHECK_IP 1 |
donatien | 0:8e01dca41002 | 140 | #define CHECKSUM_CHECK_UDP 1 |
donatien | 0:8e01dca41002 | 141 | #define CHECKSUM_CHECK_TCP 1 |
donatien | 0:8e01dca41002 | 142 | #define LWIP_CHECKSUM_ON_COPY 1 |
donatien | 0:8e01dca41002 | 143 | |
donatien | 0:8e01dca41002 | 144 | /* DHCP is ok, UDP is required with DHCP */ |
donatien | 0:8e01dca41002 | 145 | #define LWIP_DHCP 1 |
donatien | 0:8e01dca41002 | 146 | #define LWIP_UDP 1 |
donatien | 0:8e01dca41002 | 147 | |
donatien | 0:8e01dca41002 | 148 | /* Hostname can be used */ |
donatien | 0:8e01dca41002 | 149 | #define LWIP_NETIF_HOSTNAME 1 |
donatien | 0:8e01dca41002 | 150 | |
donatien | 0:8e01dca41002 | 151 | #define LWIP_BROADCAST_PING 1 |
donatien | 0:8e01dca41002 | 152 | |
donatien | 0:8e01dca41002 | 153 | #else |
donatien | 0:8e01dca41002 | 154 | |
donatien | 0:8e01dca41002 | 155 | #warning Application code only |
donatien | 0:8e01dca41002 | 156 | |
donatien | 0:8e01dca41002 | 157 | #endif |
donatien | 0:8e01dca41002 | 158 | |
donatien | 0:8e01dca41002 | 159 | //DNS |
donatien | 0:8e01dca41002 | 160 | #define LWIP_DNS 1 |
donatien | 0:8e01dca41002 | 161 | |
donatien | 0:8e01dca41002 | 162 | //Do not use LwIP's ugly macro-based renaming |
donatien | 0:8e01dca41002 | 163 | #define LWIP_COMPAT_SOCKETS 0 |
donatien | 0:8e01dca41002 | 164 | #define LWIP_POSIX_SOCKETS_IO_NAMES 0 |
donatien | 0:8e01dca41002 | 165 | #define LWIP_SO_RCVTIMEO 1 |
donatien | 0:8e01dca41002 | 166 | #define LWIP_TCP_KEEPALIVE 1 |
donatien | 0:8e01dca41002 | 167 | |
donatien | 0:8e01dca41002 | 168 | #endif /* LWIPOPTS_H_ */ |