Ethernetwebsoc

Dependencies:   C12832_lcd LM75B WebSocketClient mbed-rtos mbed Socket lwip-eth lwip-sys lwip

Committer:
GordonSin
Date:
Fri May 31 04:09:54 2013 +0000
Revision:
0:0ed2a7c7190c
31/5/2013;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
GordonSin 0:0ed2a7c7190c 1 /* Copyright (C) 2012 mbed.org, MIT License
GordonSin 0:0ed2a7c7190c 2 *
GordonSin 0:0ed2a7c7190c 3 * Permission is hereby granted, free of charge, to any person obtaining a copy of this software
GordonSin 0:0ed2a7c7190c 4 * and associated documentation files (the "Software"), to deal in the Software without restriction,
GordonSin 0:0ed2a7c7190c 5 * including without limitation the rights to use, copy, modify, merge, publish, distribute,
GordonSin 0:0ed2a7c7190c 6 * sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
GordonSin 0:0ed2a7c7190c 7 * furnished to do so, subject to the following conditions:
GordonSin 0:0ed2a7c7190c 8 *
GordonSin 0:0ed2a7c7190c 9 * The above copyright notice and this permission notice shall be included in all copies or
GordonSin 0:0ed2a7c7190c 10 * substantial portions of the Software.
GordonSin 0:0ed2a7c7190c 11 *
GordonSin 0:0ed2a7c7190c 12 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
GordonSin 0:0ed2a7c7190c 13 * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
GordonSin 0:0ed2a7c7190c 14 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
GordonSin 0:0ed2a7c7190c 15 * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
GordonSin 0:0ed2a7c7190c 16 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
GordonSin 0:0ed2a7c7190c 17 */
GordonSin 0:0ed2a7c7190c 18
GordonSin 0:0ed2a7c7190c 19 #ifndef LWIPOPTS_H
GordonSin 0:0ed2a7c7190c 20 #define LWIPOPTS_H
GordonSin 0:0ed2a7c7190c 21
GordonSin 0:0ed2a7c7190c 22 #include "lwipopts_conf.h"
GordonSin 0:0ed2a7c7190c 23
GordonSin 0:0ed2a7c7190c 24 // Operating System
GordonSin 0:0ed2a7c7190c 25 #define NO_SYS 0
GordonSin 0:0ed2a7c7190c 26
GordonSin 0:0ed2a7c7190c 27 #if NO_SYS == 0
GordonSin 0:0ed2a7c7190c 28 #include "cmsis_os.h"
GordonSin 0:0ed2a7c7190c 29
GordonSin 0:0ed2a7c7190c 30 #define LWIP_RAW 0
GordonSin 0:0ed2a7c7190c 31
GordonSin 0:0ed2a7c7190c 32 #define TCPIP_MBOX_SIZE 6
GordonSin 0:0ed2a7c7190c 33 #define DEFAULT_TCP_RECVMBOX_SIZE 6
GordonSin 0:0ed2a7c7190c 34 #define DEFAULT_UDP_RECVMBOX_SIZE 6
GordonSin 0:0ed2a7c7190c 35 #define DEFAULT_RAW_RECVMBOX_SIZE 6
GordonSin 0:0ed2a7c7190c 36 #define DEFAULT_ACCEPTMBOX_SIZE 6
GordonSin 0:0ed2a7c7190c 37
GordonSin 0:0ed2a7c7190c 38 #define TCPIP_THREAD_STACKSIZE 1024
GordonSin 0:0ed2a7c7190c 39 #define TCPIP_THREAD_PRIO 1
GordonSin 0:0ed2a7c7190c 40
GordonSin 0:0ed2a7c7190c 41 #define DEFAULT_THREAD_STACKSIZE 512
GordonSin 0:0ed2a7c7190c 42
GordonSin 0:0ed2a7c7190c 43 #define MEMP_NUM_SYS_TIMEOUT 16
GordonSin 0:0ed2a7c7190c 44 #endif
GordonSin 0:0ed2a7c7190c 45
GordonSin 0:0ed2a7c7190c 46 // 32-bit alignment
GordonSin 0:0ed2a7c7190c 47 #define MEM_ALIGNMENT 4
GordonSin 0:0ed2a7c7190c 48
GordonSin 0:0ed2a7c7190c 49 #define MEM_SIZE 16362
GordonSin 0:0ed2a7c7190c 50
GordonSin 0:0ed2a7c7190c 51 #define PBUF_POOL_SIZE 5
GordonSin 0:0ed2a7c7190c 52 #define MEMP_NUM_TCP_PCB_LISTEN 4
GordonSin 0:0ed2a7c7190c 53 #define MEMP_NUM_TCP_PCB 4
GordonSin 0:0ed2a7c7190c 54 #define MEMP_NUM_PBUF 8
GordonSin 0:0ed2a7c7190c 55
GordonSin 0:0ed2a7c7190c 56 #define TCP_QUEUE_OOSEQ 0
GordonSin 0:0ed2a7c7190c 57 #define TCP_OVERSIZE 0
GordonSin 0:0ed2a7c7190c 58
GordonSin 0:0ed2a7c7190c 59 #define LWIP_DHCP 1
GordonSin 0:0ed2a7c7190c 60 #define LWIP_DNS 1
GordonSin 0:0ed2a7c7190c 61
GordonSin 0:0ed2a7c7190c 62 #define LWIP_COMPAT_SOCKETS 0
GordonSin 0:0ed2a7c7190c 63 #define LWIP_POSIX_SOCKETS_IO_NAMES 0
GordonSin 0:0ed2a7c7190c 64 #define LWIP_SO_RCVTIMEO 1
GordonSin 0:0ed2a7c7190c 65 #define LWIP_TCP_KEEPALIVE 1
GordonSin 0:0ed2a7c7190c 66
GordonSin 0:0ed2a7c7190c 67 // Debug Options
GordonSin 0:0ed2a7c7190c 68 // #define LWIP_DEBUG
GordonSin 0:0ed2a7c7190c 69 #define UDP_LPC_EMAC LWIP_DBG_OFF
GordonSin 0:0ed2a7c7190c 70 #define SYS_DEBUG LWIP_DBG_OFF
GordonSin 0:0ed2a7c7190c 71 #define PPP_DEBUG LWIP_DBG_OFF
GordonSin 0:0ed2a7c7190c 72 #define IP_DEBUG LWIP_DBG_OFF
GordonSin 0:0ed2a7c7190c 73 #define MEM_DEBUG LWIP_DBG_OFF
GordonSin 0:0ed2a7c7190c 74 #define MEMP_DEBUG LWIP_DBG_OFF
GordonSin 0:0ed2a7c7190c 75 #define PBUF_DEBUG LWIP_DBG_OFF
GordonSin 0:0ed2a7c7190c 76 #define API_LIB_DEBUG LWIP_DBG_OFF
GordonSin 0:0ed2a7c7190c 77 #define API_MSG_DEBUG LWIP_DBG_OFF
GordonSin 0:0ed2a7c7190c 78 #define TCPIP_DEBUG LWIP_DBG_OFF
GordonSin 0:0ed2a7c7190c 79 #define SOCKETS_DEBUG LWIP_DBG_OFF
GordonSin 0:0ed2a7c7190c 80 #define TCP_DEBUG LWIP_DBG_OFF
GordonSin 0:0ed2a7c7190c 81 #define TCP_INPUT_DEBUG LWIP_DBG_OFF
GordonSin 0:0ed2a7c7190c 82 #define TCP_FR_DEBUG LWIP_DBG_OFF
GordonSin 0:0ed2a7c7190c 83 #define TCP_RTO_DEBUG LWIP_DBG_OFF
GordonSin 0:0ed2a7c7190c 84 #define TCP_CWND_DEBUG LWIP_DBG_OFF
GordonSin 0:0ed2a7c7190c 85 #define TCP_WND_DEBUG LWIP_DBG_OFF
GordonSin 0:0ed2a7c7190c 86 #define TCP_OUTPUT_DEBUG LWIP_DBG_OFF
GordonSin 0:0ed2a7c7190c 87 #define TCP_RST_DEBUG LWIP_DBG_OFF
GordonSin 0:0ed2a7c7190c 88 #define TCP_QLEN_DEBUG LWIP_DBG_OFF
GordonSin 0:0ed2a7c7190c 89 #define ETHARP_DEBUG LWIP_DBG_OFF
GordonSin 0:0ed2a7c7190c 90 #define NETIF_DEBUG LWIP_DBG_OFF
GordonSin 0:0ed2a7c7190c 91 #define DHCP_DEBUG LWIP_DBG_OFF
GordonSin 0:0ed2a7c7190c 92
GordonSin 0:0ed2a7c7190c 93 #ifdef LWIP_DEBUG
GordonSin 0:0ed2a7c7190c 94 #define MEMP_OVERFLOW_CHECK 1
GordonSin 0:0ed2a7c7190c 95 #define MEMP_SANITY_CHECK 1
GordonSin 0:0ed2a7c7190c 96 #else
GordonSin 0:0ed2a7c7190c 97 #define LWIP_STATS 0
GordonSin 0:0ed2a7c7190c 98 #endif
GordonSin 0:0ed2a7c7190c 99
GordonSin 0:0ed2a7c7190c 100 #define LWIP_PLATFORM_BYTESWAP 1
GordonSin 0:0ed2a7c7190c 101
GordonSin 0:0ed2a7c7190c 102 #if LWIP_TRANSPORT_ETHERNET
GordonSin 0:0ed2a7c7190c 103
GordonSin 0:0ed2a7c7190c 104 /* MSS should match the hardware packet size */
GordonSin 0:0ed2a7c7190c 105 #define TCP_MSS 1460
GordonSin 0:0ed2a7c7190c 106 #define TCP_SND_BUF (2 * TCP_MSS)
GordonSin 0:0ed2a7c7190c 107 #define TCP_WND (2 * TCP_MSS)
GordonSin 0:0ed2a7c7190c 108 #define TCP_SND_QUEUELEN (2 * TCP_SND_BUF/TCP_MSS)
GordonSin 0:0ed2a7c7190c 109
GordonSin 0:0ed2a7c7190c 110 // Broadcast
GordonSin 0:0ed2a7c7190c 111 #define IP_SOF_BROADCAST 1
GordonSin 0:0ed2a7c7190c 112 #define IP_SOF_BROADCAST_RECV 1
GordonSin 0:0ed2a7c7190c 113
GordonSin 0:0ed2a7c7190c 114 #define LWIP_BROADCAST_PING 1
GordonSin 0:0ed2a7c7190c 115
GordonSin 0:0ed2a7c7190c 116 #define LWIP_CHECKSUM_ON_COPY 1
GordonSin 0:0ed2a7c7190c 117
GordonSin 0:0ed2a7c7190c 118 #define LWIP_NETIF_HOSTNAME 1
GordonSin 0:0ed2a7c7190c 119 #define LWIP_NETIF_STATUS_CALLBACK 1
GordonSin 0:0ed2a7c7190c 120
GordonSin 0:0ed2a7c7190c 121 #elif LWIP_TRANSPORT_PPP
GordonSin 0:0ed2a7c7190c 122
GordonSin 0:0ed2a7c7190c 123 #define TCP_SND_BUF (3 * 536)
GordonSin 0:0ed2a7c7190c 124 #define TCP_WND (2 * 536)
GordonSin 0:0ed2a7c7190c 125
GordonSin 0:0ed2a7c7190c 126 #define LWIP_ARP 0
GordonSin 0:0ed2a7c7190c 127
GordonSin 0:0ed2a7c7190c 128 #define PPP_SUPPORT 1
GordonSin 0:0ed2a7c7190c 129 #define CHAP_SUPPORT 1
GordonSin 0:0ed2a7c7190c 130 #define PAP_SUPPORT 1
GordonSin 0:0ed2a7c7190c 131 #define PPP_THREAD_STACKSIZE 4*192
GordonSin 0:0ed2a7c7190c 132 #define PPP_THREAD_PRIO 0
GordonSin 0:0ed2a7c7190c 133
GordonSin 0:0ed2a7c7190c 134 #define MAXNAMELEN 64 /* max length of hostname or name for auth */
GordonSin 0:0ed2a7c7190c 135 #define MAXSECRETLEN 64
GordonSin 0:0ed2a7c7190c 136
GordonSin 0:0ed2a7c7190c 137 #else
GordonSin 0:0ed2a7c7190c 138 #error A transport mechanism (Ethernet or PPP) must be defined
GordonSin 0:0ed2a7c7190c 139 #endif
GordonSin 0:0ed2a7c7190c 140
GordonSin 0:0ed2a7c7190c 141 #endif /* LWIPOPTS_H_ */