diff --git a/bsp/lpc176x/rtconfig.h b/bsp/lpc176x/rtconfig.h
index 31b2b1afee..61b2f82711 100644
--- a/bsp/lpc176x/rtconfig.h
+++ b/bsp/lpc176x/rtconfig.h
@@ -142,7 +142,7 @@
//
#define RT_LWIP_TCP_PCB_NUM 3
//
-#define RT_LWIP_TCP_SND_BUF 2048
+#define RT_LWIP_TCP_SND_BUF (2 * TCP_MSS)
//
#define RT_LWIP_TCP_WND 2048
//
diff --git a/components/net/lwip-1.4.1/src/arch/sys_arch.c b/components/net/lwip-1.4.1/src/arch/sys_arch.c
index fc3b9b8447..958803f156 100644
--- a/components/net/lwip-1.4.1/src/arch/sys_arch.c
+++ b/components/net/lwip-1.4.1/src/arch/sys_arch.c
@@ -139,7 +139,7 @@ int lwip_system_init(void)
{
LWIP_ASSERT("Failed to create semaphore", 0);
- return;
+ return -1;
}
tcpip_init(tcpip_init_done_callback, (void *)&done_sem);
@@ -149,7 +149,7 @@ int lwip_system_init(void)
{
rt_sem_detach(&done_sem);
- return;
+ return -1;
}
rt_sem_detach(&done_sem);
diff --git a/components/net/lwip-1.4.1/src/include/netif/ethernetif.h b/components/net/lwip-1.4.1/src/include/netif/ethernetif.h
index 4aa4525ce2..53dacf2270 100644
--- a/components/net/lwip-1.4.1/src/include/netif/ethernetif.h
+++ b/components/net/lwip-1.4.1/src/include/netif/ethernetif.h
@@ -30,6 +30,6 @@ rt_err_t eth_device_init(struct eth_device * dev, char *name);
rt_err_t eth_device_init_with_flag(struct eth_device *dev, char *name, rt_uint8_t flag);
rt_err_t eth_device_linkchange(struct eth_device* dev, rt_bool_t up);
-void eth_system_device_init(void);
+int eth_system_device_init(void);
#endif /* __NETIF_ETHERNETIF_H__ */
diff --git a/components/net/lwip-1.4.1/src/netif/ethernetif.c b/components/net/lwip-1.4.1/src/netif/ethernetif.c
index 4757981fa0..2853fdcd7c 100644
--- a/components/net/lwip-1.4.1/src/netif/ethernetif.c
+++ b/components/net/lwip-1.4.1/src/netif/ethernetif.c
@@ -350,7 +350,7 @@ static void eth_rx_thread_entry(void* parameter)
}
}
-void eth_system_device_init()
+int eth_system_device_init(void)
{
rt_err_t result = RT_EOK;
@@ -382,6 +382,8 @@ void eth_system_device_init()
result = rt_thread_startup(ð_tx_thread);
RT_ASSERT(result == RT_EOK);
+
+ return 0;
}
INIT_DEVICE_EXPORT(eth_system_device_init);