Alvaro Cassinelli / Mbed 2 deprecated skinGames_forktest

Dependencies:   mbed

Fork of scoreLight_Advanced by Alvaro Cassinelli

Committer:
mbedalvaro
Date:
Wed Mar 28 14:40:01 2012 +0000
Revision:
0:345b3bc7a0ea
This version (using rigid frame, base and child classes, etc) works, but the blob is strangely smaller. Need to check this.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbedalvaro 0:345b3bc7a0ea 1 /*
mbedalvaro 0:345b3bc7a0ea 2 * Copyright (c) 2001-2003 Swedish Institute of Computer Science.
mbedalvaro 0:345b3bc7a0ea 3 * All rights reserved.
mbedalvaro 0:345b3bc7a0ea 4 *
mbedalvaro 0:345b3bc7a0ea 5 * Redistribution and use in source and binary forms, with or without modification,
mbedalvaro 0:345b3bc7a0ea 6 * are permitted provided that the following conditions are met:
mbedalvaro 0:345b3bc7a0ea 7 *
mbedalvaro 0:345b3bc7a0ea 8 * 1. Redistributions of source code must retain the above copyright notice,
mbedalvaro 0:345b3bc7a0ea 9 * this list of conditions and the following disclaimer.
mbedalvaro 0:345b3bc7a0ea 10 * 2. Redistributions in binary form must reproduce the above copyright notice,
mbedalvaro 0:345b3bc7a0ea 11 * this list of conditions and the following disclaimer in the documentation
mbedalvaro 0:345b3bc7a0ea 12 * and/or other materials provided with the distribution.
mbedalvaro 0:345b3bc7a0ea 13 * 3. The name of the author may not be used to endorse or promote products
mbedalvaro 0:345b3bc7a0ea 14 * derived from this software without specific prior written permission.
mbedalvaro 0:345b3bc7a0ea 15 *
mbedalvaro 0:345b3bc7a0ea 16 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
mbedalvaro 0:345b3bc7a0ea 17 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
mbedalvaro 0:345b3bc7a0ea 18 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
mbedalvaro 0:345b3bc7a0ea 19 * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
mbedalvaro 0:345b3bc7a0ea 20 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
mbedalvaro 0:345b3bc7a0ea 21 * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
mbedalvaro 0:345b3bc7a0ea 22 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
mbedalvaro 0:345b3bc7a0ea 23 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
mbedalvaro 0:345b3bc7a0ea 24 * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
mbedalvaro 0:345b3bc7a0ea 25 * OF SUCH DAMAGE.
mbedalvaro 0:345b3bc7a0ea 26 *
mbedalvaro 0:345b3bc7a0ea 27 * This file is part of the lwIP TCP/IP stack.
mbedalvaro 0:345b3bc7a0ea 28 *
mbedalvaro 0:345b3bc7a0ea 29 * Author: Adam Dunkels <adam@sics.se>
mbedalvaro 0:345b3bc7a0ea 30 *
mbedalvaro 0:345b3bc7a0ea 31 */
mbedalvaro 0:345b3bc7a0ea 32 #ifndef __LWIPOPTS_H__
mbedalvaro 0:345b3bc7a0ea 33 #define __LWIPOPTS_H__
mbedalvaro 0:345b3bc7a0ea 34
mbedalvaro 0:345b3bc7a0ea 35 #include "netCfg.h"
mbedalvaro 0:345b3bc7a0ea 36 #if NET_LWIP_STACK
mbedalvaro 0:345b3bc7a0ea 37
mbedalvaro 0:345b3bc7a0ea 38 //#include "arch/sys_arch.h"
mbedalvaro 0:345b3bc7a0ea 39
mbedalvaro 0:345b3bc7a0ea 40 /* <sys/time.h> is included in cc.h! */
mbedalvaro 0:345b3bc7a0ea 41 #define LWIP_TIMEVAL_PRIVATE 0
mbedalvaro 0:345b3bc7a0ea 42
mbedalvaro 0:345b3bc7a0ea 43 //#define __LWIP_DEBUG
mbedalvaro 0:345b3bc7a0ea 44 #include "dbg/dbg.h"
mbedalvaro 0:345b3bc7a0ea 45
mbedalvaro 0:345b3bc7a0ea 46 #ifdef __LWIP_DEBUG
mbedalvaro 0:345b3bc7a0ea 47
mbedalvaro 0:345b3bc7a0ea 48 #define LWIP_DEBUG 1
mbedalvaro 0:345b3bc7a0ea 49
mbedalvaro 0:345b3bc7a0ea 50 #define LWIP_DBG_MIN_LEVEL 0
mbedalvaro 0:345b3bc7a0ea 51 //#define LWIP_COMPAT_SOCKETS 1
mbedalvaro 0:345b3bc7a0ea 52 #define TAPIF_DEBUG LWIP_DBG_OFF
mbedalvaro 0:345b3bc7a0ea 53 #define TUNIF_DEBUG LWIP_DBG_OFF
mbedalvaro 0:345b3bc7a0ea 54 #define UNIXIF_DEBUG LWIP_DBG_OFF
mbedalvaro 0:345b3bc7a0ea 55 #define DELIF_DEBUG LWIP_DBG_OFF
mbedalvaro 0:345b3bc7a0ea 56 #define SIO_FIFO_DEBUG LWIP_DBG_ON
mbedalvaro 0:345b3bc7a0ea 57 #define TCPDUMP_DEBUG LWIP_DBG_ON
mbedalvaro 0:345b3bc7a0ea 58
mbedalvaro 0:345b3bc7a0ea 59 #define PPP_DEBUG LWIP_DBG_OFF
mbedalvaro 0:345b3bc7a0ea 60 #define MEM_DEBUG LWIP_DBG_OFF
mbedalvaro 0:345b3bc7a0ea 61 #define MEMP_DEBUG LWIP_DBG_OFF
mbedalvaro 0:345b3bc7a0ea 62 #define PBUF_DEBUG LWIP_DBG_OFF
mbedalvaro 0:345b3bc7a0ea 63 #define API_LIB_DEBUG LWIP_DBG_OFF
mbedalvaro 0:345b3bc7a0ea 64 #define API_MSG_DEBUG LWIP_DBG_OFF
mbedalvaro 0:345b3bc7a0ea 65 #define TCPIP_DEBUG LWIP_DBG_OFF
mbedalvaro 0:345b3bc7a0ea 66 #define NETIF_DEBUG LWIP_DBG_OFF
mbedalvaro 0:345b3bc7a0ea 67 #define SOCKETS_DEBUG LWIP_DBG_OFF
mbedalvaro 0:345b3bc7a0ea 68 #define DEMO_DEBUG LWIP_DBG_OFF
mbedalvaro 0:345b3bc7a0ea 69 #define IP_DEBUG LWIP_DBG_OFF
mbedalvaro 0:345b3bc7a0ea 70 #define IP_REASS_DEBUG LWIP_DBG_OFF
mbedalvaro 0:345b3bc7a0ea 71 #define RAW_DEBUG LWIP_DBG_OFF
mbedalvaro 0:345b3bc7a0ea 72 #define ICMP_DEBUG LWIP_DBG_OFF
mbedalvaro 0:345b3bc7a0ea 73 #define IGMP_DEBUG LWIP_DBG_OFF
mbedalvaro 0:345b3bc7a0ea 74 #define UDP_DEBUG LWIP_DBG_OFF
mbedalvaro 0:345b3bc7a0ea 75 #define TCP_DEBUG LWIP_DBG_OFF
mbedalvaro 0:345b3bc7a0ea 76 #define TCP_INPUT_DEBUG LWIP_DBG_OFF
mbedalvaro 0:345b3bc7a0ea 77 #define TCP_OUTPUT_DEBUG LWIP_DBG_OFF
mbedalvaro 0:345b3bc7a0ea 78 #define TCP_RTO_DEBUG LWIP_DBG_OFF
mbedalvaro 0:345b3bc7a0ea 79 #define TCP_CWND_DEBUG LWIP_DBG_OFF
mbedalvaro 0:345b3bc7a0ea 80 #define TCP_WND_DEBUG LWIP_DBG_OFF
mbedalvaro 0:345b3bc7a0ea 81 #define TCP_FR_DEBUG LWIP_DBG_OFF
mbedalvaro 0:345b3bc7a0ea 82 #define TCP_QLEN_DEBUG LWIP_DBG_OFF
mbedalvaro 0:345b3bc7a0ea 83 #define TCP_RST_DEBUG LWIP_DBG_OFF
mbedalvaro 0:345b3bc7a0ea 84 #define ETHARP_DEBUG LWIP_DBG_OFF
mbedalvaro 0:345b3bc7a0ea 85 #define DNS_DEBUG LWIP_DBG_OFF
mbedalvaro 0:345b3bc7a0ea 86
mbedalvaro 0:345b3bc7a0ea 87 #endif
mbedalvaro 0:345b3bc7a0ea 88
mbedalvaro 0:345b3bc7a0ea 89 /*
mbedalvaro 0:345b3bc7a0ea 90 extern unsigned char debug_flags;
mbedalvaro 0:345b3bc7a0ea 91 #define LWIP_DBG_TYPES_ON debug_flags
mbedalvaro 0:345b3bc7a0ea 92 */
mbedalvaro 0:345b3bc7a0ea 93 #define NO_SYS 1
mbedalvaro 0:345b3bc7a0ea 94 #define LWIP_SOCKET (NO_SYS==0)
mbedalvaro 0:345b3bc7a0ea 95 #define LWIP_NETCONN (NO_SYS==0)
mbedalvaro 0:345b3bc7a0ea 96
mbedalvaro 0:345b3bc7a0ea 97
mbedalvaro 0:345b3bc7a0ea 98 #define IP_FRAG_USES_STATIC_BUF 0
mbedalvaro 0:345b3bc7a0ea 99
mbedalvaro 0:345b3bc7a0ea 100
mbedalvaro 0:345b3bc7a0ea 101
mbedalvaro 0:345b3bc7a0ea 102 /* ---------- Memory options ---------- */
mbedalvaro 0:345b3bc7a0ea 103 /* MEM_ALIGNMENT: should be set to the alignment of the CPU for which
mbedalvaro 0:345b3bc7a0ea 104 lwIP is compiled. 4 byte alignment -> define MEM_ALIGNMENT to 4, 2
mbedalvaro 0:345b3bc7a0ea 105 byte alignment -> define MEM_ALIGNMENT to 2. */
mbedalvaro 0:345b3bc7a0ea 106 /* MSVC port: intel processors don't need 4-byte alignment,
mbedalvaro 0:345b3bc7a0ea 107 but are faster that way! */
mbedalvaro 0:345b3bc7a0ea 108 #define MEM_ALIGNMENT 4
mbedalvaro 0:345b3bc7a0ea 109
mbedalvaro 0:345b3bc7a0ea 110 /* MEM_SIZE: the size of the heap memory. If the application will send
mbedalvaro 0:345b3bc7a0ea 111 a lot of data that needs to be copied, this should be set high. */
mbedalvaro 0:345b3bc7a0ea 112 //#define MEM_SIZE 10240
mbedalvaro 0:345b3bc7a0ea 113
mbedalvaro 0:345b3bc7a0ea 114 #if TARGET_LPC1768
mbedalvaro 0:345b3bc7a0ea 115
mbedalvaro 0:345b3bc7a0ea 116
mbedalvaro 0:345b3bc7a0ea 117 #define MEM_SIZE 3000 //2000
mbedalvaro 0:345b3bc7a0ea 118
mbedalvaro 0:345b3bc7a0ea 119 ///
mbedalvaro 0:345b3bc7a0ea 120
mbedalvaro 0:345b3bc7a0ea 121 #define MEM_POSITION __attribute((section("AHBSRAM0")))
mbedalvaro 0:345b3bc7a0ea 122
mbedalvaro 0:345b3bc7a0ea 123 /* MEMP_NUM_PBUF: the number of memp struct pbufs. If the application
mbedalvaro 0:345b3bc7a0ea 124 sends a lot of data out of ROM (or other static memory), this
mbedalvaro 0:345b3bc7a0ea 125 should be set high. */
mbedalvaro 0:345b3bc7a0ea 126 #define MEMP_NUM_PBUF 16
mbedalvaro 0:345b3bc7a0ea 127 /* MEMP_NUM_RAW_PCB: the number of UDP protocol control blocks. One
mbedalvaro 0:345b3bc7a0ea 128 per active RAW "connection". */
mbedalvaro 0:345b3bc7a0ea 129 //#define MEMP_NUM_RAW_PCB 3
mbedalvaro 0:345b3bc7a0ea 130 /* MEMP_NUM_UDP_PCB: the number of UDP protocol control blocks. One
mbedalvaro 0:345b3bc7a0ea 131 per active UDP "connection". */
mbedalvaro 0:345b3bc7a0ea 132 #define MEMP_NUM_UDP_PCB 4
mbedalvaro 0:345b3bc7a0ea 133 /* MEMP_NUM_TCP_PCB: the number of simulatenously active TCP
mbedalvaro 0:345b3bc7a0ea 134 connections. */
mbedalvaro 0:345b3bc7a0ea 135 #define MEMP_NUM_TCP_PCB 3
mbedalvaro 0:345b3bc7a0ea 136 /* MEMP_NUM_TCP_PCB_LISTEN: the number of listening TCP
mbedalvaro 0:345b3bc7a0ea 137 connections. */
mbedalvaro 0:345b3bc7a0ea 138 #define MEMP_NUM_TCP_PCB_LISTEN 2//4
mbedalvaro 0:345b3bc7a0ea 139 /* MEMP_NUM_TCP_SEG: the number of simultaneously queued TCP
mbedalvaro 0:345b3bc7a0ea 140 segments. */
mbedalvaro 0:345b3bc7a0ea 141 #define MEMP_NUM_TCP_SEG 16
mbedalvaro 0:345b3bc7a0ea 142 /* MEMP_NUM_SYS_TIMEOUT: the number of simulateously active
mbedalvaro 0:345b3bc7a0ea 143 timeouts. */
mbedalvaro 0:345b3bc7a0ea 144 #define MEMP_NUM_SYS_TIMEOUT 12
mbedalvaro 0:345b3bc7a0ea 145
mbedalvaro 0:345b3bc7a0ea 146 /* The following four are used only with the sequential API and can be
mbedalvaro 0:345b3bc7a0ea 147 set to 0 if the application only will use the raw API. */
mbedalvaro 0:345b3bc7a0ea 148 /* MEMP_NUM_NETBUF: the number of struct netbufs. */
mbedalvaro 0:345b3bc7a0ea 149 #define MEMP_NUM_NETBUF 0
mbedalvaro 0:345b3bc7a0ea 150 /* MEMP_NUM_NETCONN: the number of struct netconns. */
mbedalvaro 0:345b3bc7a0ea 151 #define MEMP_NUM_NETCONN 0
mbedalvaro 0:345b3bc7a0ea 152 /* MEMP_NUM_TCPIP_MSG_*: the number of struct tcpip_msg, which is used
mbedalvaro 0:345b3bc7a0ea 153 for sequential API communication and incoming packets. Used in
mbedalvaro 0:345b3bc7a0ea 154 src/api/tcpip.c. */
mbedalvaro 0:345b3bc7a0ea 155 #define MEMP_NUM_TCPIP_MSG_API 0
mbedalvaro 0:345b3bc7a0ea 156 #define MEMP_NUM_TCPIP_MSG_INPKT 0
mbedalvaro 0:345b3bc7a0ea 157
mbedalvaro 0:345b3bc7a0ea 158 /* ---------- Pbuf options ---------- */
mbedalvaro 0:345b3bc7a0ea 159 /* PBUF_POOL_SIZE: the number of buffers in the pbuf pool. */
mbedalvaro 0:345b3bc7a0ea 160 #define PBUF_POOL_SIZE 8//16//100
mbedalvaro 0:345b3bc7a0ea 161
mbedalvaro 0:345b3bc7a0ea 162 /* PBUF_POOL_BUFSIZE: the size of each pbuf in the pbuf pool. */
mbedalvaro 0:345b3bc7a0ea 163 //#define PBUF_POOL_BUFSIZE 128
mbedalvaro 0:345b3bc7a0ea 164
mbedalvaro 0:345b3bc7a0ea 165 /* PBUF_LINK_HLEN: the number of bytes that should be allocated for a
mbedalvaro 0:345b3bc7a0ea 166 link level header. */
mbedalvaro 0:345b3bc7a0ea 167 //#define PBUF_LINK_HLEN 16
mbedalvaro 0:345b3bc7a0ea 168
mbedalvaro 0:345b3bc7a0ea 169 /** SYS_LIGHTWEIGHT_PROT
mbedalvaro 0:345b3bc7a0ea 170 * define SYS_LIGHTWEIGHT_PROT in lwipopts.h if you want inter-task protection
mbedalvaro 0:345b3bc7a0ea 171 * for certain critical regions during buffer allocation, deallocation and memory
mbedalvaro 0:345b3bc7a0ea 172 * allocation and deallocation.
mbedalvaro 0:345b3bc7a0ea 173 */
mbedalvaro 0:345b3bc7a0ea 174 #define SYS_LIGHTWEIGHT_PROT 0 //No sys here
mbedalvaro 0:345b3bc7a0ea 175
mbedalvaro 0:345b3bc7a0ea 176 /* ---------- TCP options ---------- */
mbedalvaro 0:345b3bc7a0ea 177 #define LWIP_TCP 1
mbedalvaro 0:345b3bc7a0ea 178 //#define TCP_TTL 255
mbedalvaro 0:345b3bc7a0ea 179
mbedalvaro 0:345b3bc7a0ea 180 /* Controls if TCP should queue segments that arrive out of
mbedalvaro 0:345b3bc7a0ea 181 order. Define to 0 if your device is low on memory. */
mbedalvaro 0:345b3bc7a0ea 182 #define TCP_QUEUE_OOSEQ 1
mbedalvaro 0:345b3bc7a0ea 183
mbedalvaro 0:345b3bc7a0ea 184 /* TCP Maximum segment size. */
mbedalvaro 0:345b3bc7a0ea 185 //#define TCP_MSS 1024
mbedalvaro 0:345b3bc7a0ea 186 #define TCP_MSS 536//1024//536//0x276
mbedalvaro 0:345b3bc7a0ea 187
mbedalvaro 0:345b3bc7a0ea 188 /* TCP sender buffer space (bytes). */
mbedalvaro 0:345b3bc7a0ea 189 #define TCP_SND_BUF (3 * TCP_MSS) //2048
mbedalvaro 0:345b3bc7a0ea 190
mbedalvaro 0:345b3bc7a0ea 191 /* TCP sender buffer space (pbufs). This must be at least = 2 *
mbedalvaro 0:345b3bc7a0ea 192 TCP_SND_BUF/TCP_MSS for things to work. */
mbedalvaro 0:345b3bc7a0ea 193 #define TCP_SND_QUEUELEN (4 * (TCP_SND_BUF)/(TCP_MSS))
mbedalvaro 0:345b3bc7a0ea 194
mbedalvaro 0:345b3bc7a0ea 195 /* TCP writable space (bytes). This must be less than or equal
mbedalvaro 0:345b3bc7a0ea 196 to TCP_SND_BUF. It is the amount of space which must be
mbedalvaro 0:345b3bc7a0ea 197 available in the tcp snd_buf for select to return writable */
mbedalvaro 0:345b3bc7a0ea 198 #define TCP_SNDLOWAT ((TCP_SND_BUF)/2)
mbedalvaro 0:345b3bc7a0ea 199
mbedalvaro 0:345b3bc7a0ea 200 /**
mbedalvaro 0:345b3bc7a0ea 201 * TCP_WND: The size of a TCP window. This must be at least
mbedalvaro 0:345b3bc7a0ea 202 * (2 * TCP_MSS) for things to work well
mbedalvaro 0:345b3bc7a0ea 203 */
mbedalvaro 0:345b3bc7a0ea 204 /* TCP receive window. */
mbedalvaro 0:345b3bc7a0ea 205 #define TCP_WND (4 * TCP_MSS) //8096
mbedalvaro 0:345b3bc7a0ea 206
mbedalvaro 0:345b3bc7a0ea 207 /* Maximum number of retransmissions of data segments. */
mbedalvaro 0:345b3bc7a0ea 208 //#define TCP_MAXRTX 12
mbedalvaro 0:345b3bc7a0ea 209
mbedalvaro 0:345b3bc7a0ea 210 /* Maximum number of retransmissions of SYN segments. */
mbedalvaro 0:345b3bc7a0ea 211 //#define TCP_SYNMAXRTX 4
mbedalvaro 0:345b3bc7a0ea 212
mbedalvaro 0:345b3bc7a0ea 213 #elif TARGET_LPC2368
mbedalvaro 0:345b3bc7a0ea 214
mbedalvaro 0:345b3bc7a0ea 215 #define MEM_POSITION __attribute((section("AHBSRAM1")))
mbedalvaro 0:345b3bc7a0ea 216
mbedalvaro 0:345b3bc7a0ea 217 /* MEMP_NUM_PBUF: the number of memp struct pbufs. If the application
mbedalvaro 0:345b3bc7a0ea 218 sends a lot of data out of ROM (or other static memory), this
mbedalvaro 0:345b3bc7a0ea 219 should be set high. */
mbedalvaro 0:345b3bc7a0ea 220 #define MEMP_NUM_PBUF 8
mbedalvaro 0:345b3bc7a0ea 221 /* MEMP_NUM_RAW_PCB: the number of UDP protocol control blocks. One
mbedalvaro 0:345b3bc7a0ea 222 per active RAW "connection". */
mbedalvaro 0:345b3bc7a0ea 223 //#define MEMP_NUM_RAW_PCB 3
mbedalvaro 0:345b3bc7a0ea 224 /* MEMP_NUM_UDP_PCB: the number of UDP protocol control blocks. One
mbedalvaro 0:345b3bc7a0ea 225 per active UDP "connection". */
mbedalvaro 0:345b3bc7a0ea 226 #define MEMP_NUM_UDP_PCB 2
mbedalvaro 0:345b3bc7a0ea 227 /* MEMP_NUM_TCP_PCB: the number of simulatenously active TCP
mbedalvaro 0:345b3bc7a0ea 228 connections. */
mbedalvaro 0:345b3bc7a0ea 229 #define MEMP_NUM_TCP_PCB 2
mbedalvaro 0:345b3bc7a0ea 230 /* MEMP_NUM_TCP_PCB_LISTEN: the number of listening TCP
mbedalvaro 0:345b3bc7a0ea 231 connections. */
mbedalvaro 0:345b3bc7a0ea 232 #define MEMP_NUM_TCP_PCB_LISTEN 2//4
mbedalvaro 0:345b3bc7a0ea 233 /* MEMP_NUM_TCP_SEG: the number of simultaneously queued TCP
mbedalvaro 0:345b3bc7a0ea 234 segments. */
mbedalvaro 0:345b3bc7a0ea 235 #define MEMP_NUM_TCP_SEG 8
mbedalvaro 0:345b3bc7a0ea 236 /* MEMP_NUM_SYS_TIMEOUT: the number of simulateously active
mbedalvaro 0:345b3bc7a0ea 237 timeouts. */
mbedalvaro 0:345b3bc7a0ea 238 #define MEMP_NUM_SYS_TIMEOUT 12
mbedalvaro 0:345b3bc7a0ea 239
mbedalvaro 0:345b3bc7a0ea 240 /* The following four are used only with the sequential API and can be
mbedalvaro 0:345b3bc7a0ea 241 set to 0 if the application only will use the raw API. */
mbedalvaro 0:345b3bc7a0ea 242 /* MEMP_NUM_NETBUF: the number of struct netbufs. */
mbedalvaro 0:345b3bc7a0ea 243 #define MEMP_NUM_NETBUF 0
mbedalvaro 0:345b3bc7a0ea 244 /* MEMP_NUM_NETCONN: the number of struct netconns. */
mbedalvaro 0:345b3bc7a0ea 245 #define MEMP_NUM_NETCONN 0
mbedalvaro 0:345b3bc7a0ea 246 /* MEMP_NUM_TCPIP_MSG_*: the number of struct tcpip_msg, which is used
mbedalvaro 0:345b3bc7a0ea 247 for sequential API communication and incoming packets. Used in
mbedalvaro 0:345b3bc7a0ea 248 src/api/tcpip.c. */
mbedalvaro 0:345b3bc7a0ea 249 #define MEMP_NUM_TCPIP_MSG_API 0
mbedalvaro 0:345b3bc7a0ea 250 #define MEMP_NUM_TCPIP_MSG_INPKT 0
mbedalvaro 0:345b3bc7a0ea 251
mbedalvaro 0:345b3bc7a0ea 252 /* ---------- Pbuf options ---------- */
mbedalvaro 0:345b3bc7a0ea 253 /* PBUF_POOL_SIZE: the number of buffers in the pbuf pool. */
mbedalvaro 0:345b3bc7a0ea 254 #define PBUF_POOL_SIZE 8//16//100
mbedalvaro 0:345b3bc7a0ea 255
mbedalvaro 0:345b3bc7a0ea 256 /* PBUF_POOL_BUFSIZE: the size of each pbuf in the pbuf pool. */
mbedalvaro 0:345b3bc7a0ea 257 //#define PBUF_POOL_BUFSIZE 128
mbedalvaro 0:345b3bc7a0ea 258
mbedalvaro 0:345b3bc7a0ea 259 /* PBUF_LINK_HLEN: the number of bytes that should be allocated for a
mbedalvaro 0:345b3bc7a0ea 260 link level header. */
mbedalvaro 0:345b3bc7a0ea 261 //#define PBUF_LINK_HLEN 16
mbedalvaro 0:345b3bc7a0ea 262
mbedalvaro 0:345b3bc7a0ea 263 /** SYS_LIGHTWEIGHT_PROT
mbedalvaro 0:345b3bc7a0ea 264 * define SYS_LIGHTWEIGHT_PROT in lwipopts.h if you want inter-task protection
mbedalvaro 0:345b3bc7a0ea 265 * for certain critical regions during buffer allocation, deallocation and memory
mbedalvaro 0:345b3bc7a0ea 266 * allocation and deallocation.
mbedalvaro 0:345b3bc7a0ea 267 */
mbedalvaro 0:345b3bc7a0ea 268 #define SYS_LIGHTWEIGHT_PROT 0 //No sys here
mbedalvaro 0:345b3bc7a0ea 269
mbedalvaro 0:345b3bc7a0ea 270 /* ---------- TCP options ---------- */
mbedalvaro 0:345b3bc7a0ea 271 #define LWIP_TCP 1
mbedalvaro 0:345b3bc7a0ea 272 #define TCP_TTL 255
mbedalvaro 0:345b3bc7a0ea 273
mbedalvaro 0:345b3bc7a0ea 274 /* Controls if TCP should queue segments that arrive out of
mbedalvaro 0:345b3bc7a0ea 275 order. Define to 0 if your device is low on memory. */
mbedalvaro 0:345b3bc7a0ea 276 #define TCP_QUEUE_OOSEQ 0
mbedalvaro 0:345b3bc7a0ea 277
mbedalvaro 0:345b3bc7a0ea 278 /* TCP Maximum segment size. */
mbedalvaro 0:345b3bc7a0ea 279 //#define TCP_MSS 1024
mbedalvaro 0:345b3bc7a0ea 280 #define TCP_MSS 536//0x276//536//0x276
mbedalvaro 0:345b3bc7a0ea 281
mbedalvaro 0:345b3bc7a0ea 282 /* TCP sender buffer space (bytes). */
mbedalvaro 0:345b3bc7a0ea 283 #define TCP_SND_BUF (3 * TCP_MSS)
mbedalvaro 0:345b3bc7a0ea 284
mbedalvaro 0:345b3bc7a0ea 285 /* TCP sender buffer space (pbufs). This must be at least = 2 *
mbedalvaro 0:345b3bc7a0ea 286 TCP_SND_BUF/TCP_MSS for things to work. */
mbedalvaro 0:345b3bc7a0ea 287 #define TCP_SND_QUEUELEN (2 * TCP_SND_BUF/TCP_MSS)//(4 * TCP_SND_BUF/TCP_MSS)
mbedalvaro 0:345b3bc7a0ea 288
mbedalvaro 0:345b3bc7a0ea 289 /* TCP writable space (bytes). This must be less than or equal
mbedalvaro 0:345b3bc7a0ea 290 to TCP_SND_BUF. It is the amount of space which must be
mbedalvaro 0:345b3bc7a0ea 291 available in the tcp snd_buf for select to return writable */
mbedalvaro 0:345b3bc7a0ea 292 #define TCP_SNDLOWAT (TCP_SND_BUF/2)
mbedalvaro 0:345b3bc7a0ea 293
mbedalvaro 0:345b3bc7a0ea 294 /* TCP receive window. */
mbedalvaro 0:345b3bc7a0ea 295 #define TCP_WND (3 * TCP_MSS) //8096
mbedalvaro 0:345b3bc7a0ea 296
mbedalvaro 0:345b3bc7a0ea 297 /* Maximum number of retransmissions of data segments. */
mbedalvaro 0:345b3bc7a0ea 298 //#define TCP_MAXRTX 12
mbedalvaro 0:345b3bc7a0ea 299
mbedalvaro 0:345b3bc7a0ea 300 /* Maximum number of retransmissions of SYN segments. */
mbedalvaro 0:345b3bc7a0ea 301 //#define TCP_SYNMAXRTX 4
mbedalvaro 0:345b3bc7a0ea 302
mbedalvaro 0:345b3bc7a0ea 303 #endif
mbedalvaro 0:345b3bc7a0ea 304
mbedalvaro 0:345b3bc7a0ea 305 /* ---------- ARP options ---------- */
mbedalvaro 0:345b3bc7a0ea 306 #define LWIP_ARP (NET_ETH | NET_ZG2100)
mbedalvaro 0:345b3bc7a0ea 307 #define ARP_TABLE_SIZE 4//10
mbedalvaro 0:345b3bc7a0ea 308 #define ARP_QUEUEING 0
mbedalvaro 0:345b3bc7a0ea 309 #define ETHARP_TRUST_IP_MAC 1
mbedalvaro 0:345b3bc7a0ea 310
mbedalvaro 0:345b3bc7a0ea 311 /* ---------- IP options ---------- */
mbedalvaro 0:345b3bc7a0ea 312 /* Define IP_FORWARD to 1 if you wish to have the ability to forward
mbedalvaro 0:345b3bc7a0ea 313 IP packets across network interfaces. If you are going to run lwIP
mbedalvaro 0:345b3bc7a0ea 314 on a device with only one network interface, define this to 0. */
mbedalvaro 0:345b3bc7a0ea 315 #define IP_FORWARD 0
mbedalvaro 0:345b3bc7a0ea 316
mbedalvaro 0:345b3bc7a0ea 317
mbedalvaro 0:345b3bc7a0ea 318 /* IP reassembly and segmentation.These are orthogonal even
mbedalvaro 0:345b3bc7a0ea 319 * if they both deal with IP fragments */
mbedalvaro 0:345b3bc7a0ea 320 /*
mbedalvaro 0:345b3bc7a0ea 321 #define IP_REASSEMBLY 1
mbedalvaro 0:345b3bc7a0ea 322 #define IP_REASS_MAX_PBUFS 10
mbedalvaro 0:345b3bc7a0ea 323 #define MEMP_NUM_REASSDATA 10
mbedalvaro 0:345b3bc7a0ea 324 #define IP_FRAG 1
mbedalvaro 0:345b3bc7a0ea 325 */
mbedalvaro 0:345b3bc7a0ea 326 /* ---------- ICMP options ---------- */
mbedalvaro 0:345b3bc7a0ea 327 #define ICMP_TTL 255
mbedalvaro 0:345b3bc7a0ea 328
mbedalvaro 0:345b3bc7a0ea 329 /* ---------- IGMP options ---------- */
mbedalvaro 0:345b3bc7a0ea 330 #define LWIP_IGMP (NET_ETH | NET_ZG2100)
mbedalvaro 0:345b3bc7a0ea 331
mbedalvaro 0:345b3bc7a0ea 332 /* ---------- DHCP options ---------- */
mbedalvaro 0:345b3bc7a0ea 333 /* Define LWIP_DHCP to 1 if you want DHCP configuration of
mbedalvaro 0:345b3bc7a0ea 334 interfaces. */
mbedalvaro 0:345b3bc7a0ea 335 #define LWIP_DHCP (NET_ETH | NET_ZG2100)
mbedalvaro 0:345b3bc7a0ea 336
mbedalvaro 0:345b3bc7a0ea 337 /* 1 if you want to do an ARP check on the offered address
mbedalvaro 0:345b3bc7a0ea 338 (recommended if using DHCP). */
mbedalvaro 0:345b3bc7a0ea 339 #define DHCP_DOES_ARP_CHECK (LWIP_DHCP)
mbedalvaro 0:345b3bc7a0ea 340
mbedalvaro 0:345b3bc7a0ea 341 /* ---------- AUTOIP options ------- */
mbedalvaro 0:345b3bc7a0ea 342 #define LWIP_AUTOIP 0
mbedalvaro 0:345b3bc7a0ea 343
mbedalvaro 0:345b3bc7a0ea 344 /* ---------- SNMP options ---------- */
mbedalvaro 0:345b3bc7a0ea 345 /** @todo SNMP is experimental for now
mbedalvaro 0:345b3bc7a0ea 346 @note UDP must be available for SNMP transport */
mbedalvaro 0:345b3bc7a0ea 347 #ifndef LWIP_SNMP
mbedalvaro 0:345b3bc7a0ea 348 #define LWIP_SNMP 0
mbedalvaro 0:345b3bc7a0ea 349 #endif
mbedalvaro 0:345b3bc7a0ea 350
mbedalvaro 0:345b3bc7a0ea 351
mbedalvaro 0:345b3bc7a0ea 352 #ifndef SNMP_PRIVATE_MIB
mbedalvaro 0:345b3bc7a0ea 353 #define SNMP_PRIVATE_MIB 0
mbedalvaro 0:345b3bc7a0ea 354 #endif
mbedalvaro 0:345b3bc7a0ea 355
mbedalvaro 0:345b3bc7a0ea 356
mbedalvaro 0:345b3bc7a0ea 357 /* ---------- UDP options ---------- */
mbedalvaro 0:345b3bc7a0ea 358 #define LWIP_UDP 1
mbedalvaro 0:345b3bc7a0ea 359 #define UDP_TTL 255
mbedalvaro 0:345b3bc7a0ea 360
mbedalvaro 0:345b3bc7a0ea 361 /* ---------- DNS options ---------- */
mbedalvaro 0:345b3bc7a0ea 362 #define LWIP_DNS 1
mbedalvaro 0:345b3bc7a0ea 363
mbedalvaro 0:345b3bc7a0ea 364 /* ---------- RAW options ---------- */
mbedalvaro 0:345b3bc7a0ea 365 #define LWIP_RAW 0
mbedalvaro 0:345b3bc7a0ea 366 #define RAW_TTL 255
mbedalvaro 0:345b3bc7a0ea 367
mbedalvaro 0:345b3bc7a0ea 368 /* ---------- Statistics options ---------- */
mbedalvaro 0:345b3bc7a0ea 369 /* individual STATS options can be turned off by defining them to 0
mbedalvaro 0:345b3bc7a0ea 370 * (e.g #define TCP_STATS 0). All of them are turned off if LWIP_STATS
mbedalvaro 0:345b3bc7a0ea 371 * is 0
mbedalvaro 0:345b3bc7a0ea 372 * */
mbedalvaro 0:345b3bc7a0ea 373
mbedalvaro 0:345b3bc7a0ea 374 #define LWIP_STATS 0
mbedalvaro 0:345b3bc7a0ea 375
mbedalvaro 0:345b3bc7a0ea 376 /* ---------- PPP options ---------- */
mbedalvaro 0:345b3bc7a0ea 377
mbedalvaro 0:345b3bc7a0ea 378 #define PPP_SUPPORT NET_PPP /* Set > 0 for PPP */
mbedalvaro 0:345b3bc7a0ea 379
mbedalvaro 0:345b3bc7a0ea 380 #if PPP_SUPPORT > 0
mbedalvaro 0:345b3bc7a0ea 381
mbedalvaro 0:345b3bc7a0ea 382 #define NUM_PPP 1 /* Max PPP sessions. */
mbedalvaro 0:345b3bc7a0ea 383
mbedalvaro 0:345b3bc7a0ea 384
mbedalvaro 0:345b3bc7a0ea 385 /* Select modules to enable. Ideally these would be set in the makefile but
mbedalvaro 0:345b3bc7a0ea 386 * we're limited by the command line length so you need to modify the settings
mbedalvaro 0:345b3bc7a0ea 387 * in this file.
mbedalvaro 0:345b3bc7a0ea 388 */
mbedalvaro 0:345b3bc7a0ea 389 #define PAP_SUPPORT 1 /* Set > 0 for PAP. */
mbedalvaro 0:345b3bc7a0ea 390 #define CHAP_SUPPORT 1 /* Set > 0 for CHAP. */
mbedalvaro 0:345b3bc7a0ea 391 #define MSCHAP_SUPPORT 0 /* Set > 0 for MSCHAP (NOT FUNCTIONAL!) */
mbedalvaro 0:345b3bc7a0ea 392 #define CBCP_SUPPORT 0 /* Set > 0 for CBCP (NOT FUNCTIONAL!) */
mbedalvaro 0:345b3bc7a0ea 393 #define CCP_SUPPORT 0 /* Set > 0 for CCP (NOT FUNCTIONAL!) */
mbedalvaro 0:345b3bc7a0ea 394 #define VJ_SUPPORT 1 /* Set > 0 for VJ header compression. */
mbedalvaro 0:345b3bc7a0ea 395 #define MD5_SUPPORT 1 /* Set > 0 for MD5 (see also CHAP) */
mbedalvaro 0:345b3bc7a0ea 396
mbedalvaro 0:345b3bc7a0ea 397
mbedalvaro 0:345b3bc7a0ea 398 /*
mbedalvaro 0:345b3bc7a0ea 399 * Timeouts.
mbedalvaro 0:345b3bc7a0ea 400 */
mbedalvaro 0:345b3bc7a0ea 401 #define FSM_DEFTIMEOUT 6 /* Timeout time in seconds */
mbedalvaro 0:345b3bc7a0ea 402 #define FSM_DEFMAXTERMREQS 2 /* Maximum Terminate-Request transmissions */
mbedalvaro 0:345b3bc7a0ea 403 #define FSM_DEFMAXCONFREQS 10 /* Maximum Configure-Request transmissions */
mbedalvaro 0:345b3bc7a0ea 404 #define FSM_DEFMAXNAKLOOPS 5 /* Maximum number of nak loops */
mbedalvaro 0:345b3bc7a0ea 405
mbedalvaro 0:345b3bc7a0ea 406 #define UPAP_DEFTIMEOUT 6 /* Timeout (seconds) for retransmitting req */
mbedalvaro 0:345b3bc7a0ea 407 #define UPAP_DEFREQTIME 30 /* Time to wait for auth-req from peer */
mbedalvaro 0:345b3bc7a0ea 408
mbedalvaro 0:345b3bc7a0ea 409 #define CHAP_DEFTIMEOUT 6 /* Timeout time in seconds */
mbedalvaro 0:345b3bc7a0ea 410 #define CHAP_DEFTRANSMITS 10 /* max # times to send challenge */
mbedalvaro 0:345b3bc7a0ea 411
mbedalvaro 0:345b3bc7a0ea 412
mbedalvaro 0:345b3bc7a0ea 413 /* Interval in seconds between keepalive echo requests, 0 to disable. */
mbedalvaro 0:345b3bc7a0ea 414 #if 1
mbedalvaro 0:345b3bc7a0ea 415 #define LCP_ECHOINTERVAL 0
mbedalvaro 0:345b3bc7a0ea 416 #else
mbedalvaro 0:345b3bc7a0ea 417
mbedalvaro 0:345b3bc7a0ea 418 #define LCP_ECHOINTERVAL 10
mbedalvaro 0:345b3bc7a0ea 419 #endif
mbedalvaro 0:345b3bc7a0ea 420
mbedalvaro 0:345b3bc7a0ea 421
mbedalvaro 0:345b3bc7a0ea 422 /* Number of unanswered echo requests before failure. */
mbedalvaro 0:345b3bc7a0ea 423 #define LCP_MAXECHOFAILS 3
mbedalvaro 0:345b3bc7a0ea 424
mbedalvaro 0:345b3bc7a0ea 425 /* Max Xmit idle time (in jiffies) before resend flag char. */
mbedalvaro 0:345b3bc7a0ea 426 #define PPP_MAXIDLEFLAG 0//Send it every time//100
mbedalvaro 0:345b3bc7a0ea 427
mbedalvaro 0:345b3bc7a0ea 428 /*
mbedalvaro 0:345b3bc7a0ea 429 * Packet sizes
mbedalvaro 0:345b3bc7a0ea 430 *
mbedalvaro 0:345b3bc7a0ea 431 * Note - lcp shouldn't be allowed to negotiate stuff outside these
mbedalvaro 0:345b3bc7a0ea 432 * limits. See lcp.h in the pppd directory.
mbedalvaro 0:345b3bc7a0ea 433 * (XXX - these constants should simply be shared by lcp.c instead
mbedalvaro 0:345b3bc7a0ea 434 * of living in lcp.h)
mbedalvaro 0:345b3bc7a0ea 435 */
mbedalvaro 0:345b3bc7a0ea 436 #define PPP_MTU 1500 /* Default MTU (size of Info field) */
mbedalvaro 0:345b3bc7a0ea 437 #if 0
mbedalvaro 0:345b3bc7a0ea 438 #define PPP_MAXMTU 65535 - (PPP_HDRLEN + PPP_FCSLEN)
mbedalvaro 0:345b3bc7a0ea 439 #else
mbedalvaro 0:345b3bc7a0ea 440
mbedalvaro 0:345b3bc7a0ea 441 #define PPP_MAXMTU 1500 /* Largest MTU we allow */
mbedalvaro 0:345b3bc7a0ea 442 #endif
mbedalvaro 0:345b3bc7a0ea 443
mbedalvaro 0:345b3bc7a0ea 444 #define PPP_MINMTU 64
mbedalvaro 0:345b3bc7a0ea 445 #define PPP_MRU 1500 /* default MRU = max length of info field */
mbedalvaro 0:345b3bc7a0ea 446 #define PPP_MAXMRU 1500 /* Largest MRU we allow */
mbedalvaro 0:345b3bc7a0ea 447 #define PPP_DEFMRU 296 /* Try for this */
mbedalvaro 0:345b3bc7a0ea 448 #define PPP_MINMRU 128 /* No MRUs below this */
mbedalvaro 0:345b3bc7a0ea 449
mbedalvaro 0:345b3bc7a0ea 450
mbedalvaro 0:345b3bc7a0ea 451 #define MAXNAMELEN 64 /* max length of hostname or name for auth */
mbedalvaro 0:345b3bc7a0ea 452 #define MAXSECRETLEN 64 /* max length of password or secret */
mbedalvaro 0:345b3bc7a0ea 453
mbedalvaro 0:345b3bc7a0ea 454 #endif /* PPP_SUPPORT > 0 */
mbedalvaro 0:345b3bc7a0ea 455
mbedalvaro 0:345b3bc7a0ea 456 //C++ Compat
mbedalvaro 0:345b3bc7a0ea 457 #define try vTry
mbedalvaro 0:345b3bc7a0ea 458
mbedalvaro 0:345b3bc7a0ea 459 #endif
mbedalvaro 0:345b3bc7a0ea 460
mbedalvaro 0:345b3bc7a0ea 461
mbedalvaro 0:345b3bc7a0ea 462 #endif /* __LWIPOPTS_H__ */