Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
混口饭吃,
rt-thread
提交
e0aa079e
R
rt-thread
项目概览
混口饭吃,
/
rt-thread
与 Fork 源项目一致
Fork自
Mr_Pangza / rt-thread
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
rt-thread
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
e0aa079e
编写于
9月 04, 2020
作者:
B
bigmagic
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
LwIP on 64 bit processor
上级
88314868
变更
6
隐藏空白更改
内联
并排
Showing
6 changed file
with
29 addition
and
19 deletion
+29
-19
bsp/ls2kdev/drivers/net/synopGMAC.c
bsp/ls2kdev/drivers/net/synopGMAC.c
+1
-1
components/net/Kconfig
components/net/Kconfig
+5
-1
components/net/lwip-2.0.2/src/arch/sys_arch.c
components/net/lwip-2.0.2/src/arch/sys_arch.c
+2
-2
components/net/lwip-2.0.2/src/lwipopts.h
components/net/lwip-2.0.2/src/lwipopts.h
+5
-0
components/net/lwip-2.0.2/src/netif/ethernetif.c
components/net/lwip-2.0.2/src/netif/ethernetif.c
+10
-9
components/net/uip/rt-thread/uip_ethernetif.c
components/net/uip/rt-thread/uip_ethernetif.c
+6
-6
未找到文件。
bsp/ls2kdev/drivers/net/synopGMAC.c
浏览文件 @
e0aa079e
...
...
@@ -807,7 +807,7 @@ void eth_rx_irq(int irqno, void *param)
if
(
dma_status_reg
&
GmacLineIntfIntr
)
{
rt_kprintf
(
"%s:: Interrupt due to GMAC LINE module
\n
"
,
__FUNCTION__
);
//
rt_kprintf("%s:: Interrupt due to GMAC LINE module\n", __FUNCTION__);
}
interrupt
=
synopGMAC_get_interrupt_type
(
gmacdev
);
...
...
components/net/Kconfig
浏览文件 @
e0aa079e
...
...
@@ -118,7 +118,7 @@ config RT_USING_LWIP
config RT_USING_LWIP202
bool "lwIP v2.0.2"
config RT_USING_LWIP212
config RT_USING_LWIP212
bool "lwIP v2.1.2"
endchoice
...
...
@@ -131,6 +131,10 @@ config RT_USING_LWIP
select NETDEV_IPV6_SCOPES if RT_USING_LWIP212
endif
config RT_LWIP_MEM_ALIGNMENT
int "Memory alignment"
default 4
config RT_LWIP_IGMP
bool "IGMP protocol"
default y
...
...
components/net/lwip-2.0.2/src/arch/sys_arch.c
浏览文件 @
e0aa079e
...
...
@@ -460,7 +460,7 @@ void sys_mbox_post(sys_mbox_t *mbox, void *msg)
{
RT_DEBUG_NOT_IN_INTERRUPT
;
rt_mb_send_wait
(
*
mbox
,
(
rt_u
int32
_t
)
msg
,
RT_WAITING_FOREVER
);
rt_mb_send_wait
(
*
mbox
,
(
rt_u
base
_t
)
msg
,
RT_WAITING_FOREVER
);
return
;
}
...
...
@@ -472,7 +472,7 @@ void sys_mbox_post(sys_mbox_t *mbox, void *msg)
*/
err_t
sys_mbox_trypost
(
sys_mbox_t
*
mbox
,
void
*
msg
)
{
if
(
rt_mb_send
(
*
mbox
,
(
rt_u
int32
_t
)
msg
)
==
RT_EOK
)
if
(
rt_mb_send
(
*
mbox
,
(
rt_u
base
_t
)
msg
)
==
RT_EOK
)
return
ERR_OK
;
return
ERR_MEM
;
...
...
components/net/lwip-2.0.2/src/lwipopts.h
浏览文件 @
e0aa079e
...
...
@@ -230,7 +230,12 @@
#define LWIP_DBG_TYPES_ON (LWIP_DBG_ON|LWIP_DBG_TRACE|LWIP_DBG_STATE|LWIP_DBG_FRESH|LWIP_DBG_HALT)
/* ---------- Memory options ---------- */
#ifdef RT_LWIP_MEM_ALIGNMENT
#define MEM_ALIGNMENT RT_LWIP_MEM_ALIGNMENT
#else
#define MEM_ALIGNMENT 4
#endif
#define MEMP_OVERFLOW_CHECK 1 ////
#define LWIP_ALLOW_MEM_FREE_FROM_OTHER_CONTEXT 1 ////
//#define MEM_LIBC_MALLOC 1
...
...
components/net/lwip-2.0.2/src/netif/ethernetif.c
浏览文件 @
e0aa079e
...
...
@@ -38,6 +38,7 @@
* after lwIP initialization.
* 2013-02-28 aozima fixed list_tcps bug: ipaddr_ntoa isn't reentrant.
* 2016-08-18 Bernard port to lwIP 2.0.0
* 2020-08-10 lizhirui fixed some problems when this is running on 64-bit cpu
*/
#include "lwip/opt.h"
...
...
@@ -85,10 +86,10 @@ struct eth_tx_msg
static
struct
rt_mailbox
eth_tx_thread_mb
;
static
struct
rt_thread
eth_tx_thread
;
#ifndef RT_LWIP_ETHTHREAD_MBOX_SIZE
static
char
eth_tx_thread_mb_pool
[
32
*
4
];
static
char
eth_tx_thread_mb_pool
[
32
*
sizeof
(
rt_ubase_t
)
];
static
char
eth_tx_thread_stack
[
512
];
#else
static
char
eth_tx_thread_mb_pool
[
RT_LWIP_ETHTHREAD_MBOX_SIZE
*
4
];
static
char
eth_tx_thread_mb_pool
[
RT_LWIP_ETHTHREAD_MBOX_SIZE
*
sizeof
(
rt_ubase_t
)
];
static
char
eth_tx_thread_stack
[
RT_LWIP_ETHTHREAD_STACKSIZE
];
#endif
#endif
...
...
@@ -97,10 +98,10 @@ static char eth_tx_thread_stack[RT_LWIP_ETHTHREAD_STACKSIZE];
static
struct
rt_mailbox
eth_rx_thread_mb
;
static
struct
rt_thread
eth_rx_thread
;
#ifndef RT_LWIP_ETHTHREAD_MBOX_SIZE
static
char
eth_rx_thread_mb_pool
[
48
*
4
];
static
char
eth_rx_thread_mb_pool
[
48
*
sizeof
(
rt_ubase_t
)
];
static
char
eth_rx_thread_stack
[
1024
];
#else
static
char
eth_rx_thread_mb_pool
[
RT_LWIP_ETHTHREAD_MBOX_SIZE
*
4
];
static
char
eth_rx_thread_mb_pool
[
RT_LWIP_ETHTHREAD_MBOX_SIZE
*
sizeof
(
rt_ubase_t
)
];
static
char
eth_rx_thread_stack
[
RT_LWIP_ETHTHREAD_STACKSIZE
];
#endif
#endif
...
...
@@ -395,7 +396,7 @@ static err_t ethernetif_linkoutput(struct netif *netif, struct pbuf *p)
/* send a message to eth tx thread */
msg
.
netif
=
netif
;
msg
.
buf
=
p
;
if
(
rt_mb_send
(
&
eth_tx_thread_mb
,
(
rt_u
int32
_t
)
&
msg
)
==
RT_EOK
)
if
(
rt_mb_send
(
&
eth_tx_thread_mb
,
(
rt_u
base
_t
)
&
msg
)
==
RT_EOK
)
{
/* waiting for ack */
rt_sem_take
(
&
(
enetif
->
tx_ack
),
RT_WAITING_FOREVER
);
...
...
@@ -599,7 +600,7 @@ rt_err_t eth_device_ready(struct eth_device* dev)
{
if
(
dev
->
netif
)
/* post message to Ethernet thread */
return
rt_mb_send
(
&
eth_rx_thread_mb
,
(
rt_u
int32
_t
)
dev
);
return
rt_mb_send
(
&
eth_rx_thread_mb
,
(
rt_u
base
_t
)
dev
);
else
return
ERR_OK
;
/* netif is not initialized yet, just return. */
}
...
...
@@ -619,7 +620,7 @@ rt_err_t eth_device_linkchange(struct eth_device* dev, rt_bool_t up)
rt_hw_interrupt_enable
(
level
);
/* post message to ethernet thread */
return
rt_mb_send
(
&
eth_rx_thread_mb
,
(
rt_u
int32
_t
)
dev
);
return
rt_mb_send
(
&
eth_rx_thread_mb
,
(
rt_u
base
_t
)
dev
);
}
#else
/* NOTE: please not use it in interrupt when no RxThread exist */
...
...
@@ -739,7 +740,7 @@ int eth_system_device_init_private(void)
#ifndef LWIP_NO_RX_THREAD
/* initialize mailbox and create Ethernet Rx thread */
result
=
rt_mb_init
(
&
eth_rx_thread_mb
,
"erxmb"
,
&
eth_rx_thread_mb_pool
[
0
],
sizeof
(
eth_rx_thread_mb_pool
)
/
4
,
&
eth_rx_thread_mb_pool
[
0
],
sizeof
(
eth_rx_thread_mb_pool
)
/
sizeof
(
rt_ubase_t
)
,
RT_IPC_FLAG_FIFO
);
RT_ASSERT
(
result
==
RT_EOK
);
...
...
@@ -755,7 +756,7 @@ int eth_system_device_init_private(void)
#ifndef LWIP_NO_TX_THREAD
/* initialize mailbox and create Ethernet Tx thread */
result
=
rt_mb_init
(
&
eth_tx_thread_mb
,
"etxmb"
,
&
eth_tx_thread_mb_pool
[
0
],
sizeof
(
eth_tx_thread_mb_pool
)
/
4
,
&
eth_tx_thread_mb_pool
[
0
],
sizeof
(
eth_tx_thread_mb_pool
)
/
sizeof
(
rt_ubase_t
)
,
RT_IPC_FLAG_FIFO
);
RT_ASSERT
(
result
==
RT_EOK
);
...
...
components/net/uip/rt-thread/uip_ethernetif.c
浏览文件 @
e0aa079e
...
...
@@ -63,11 +63,11 @@ static struct rt_mailbox eth_rx_thread_mb;
static
struct
rt_thread
eth_rx_thread
;
#ifndef RT_LWIP_ETHTHREAD_PRIORITY
#define RT_ETHERNETIF_THREAD_PREORITY 0x90
static
char
eth_rx_thread_mb_pool
[
48
*
4
];
static
char
eth_rx_thread_mb_pool
[
48
*
sizeof
(
rt_ubase_t
)
];
static
char
eth_rx_thread_stack
[
1024
];
#else
#define RT_ETHERNETIF_THREAD_PREORITY RT_LWIP_ETHTHREAD_PRIORITY
static
char
eth_rx_thread_mb_pool
[
RT_LWIP_ETHTHREAD_MBOX_SIZE
*
4
];
static
char
eth_rx_thread_mb_pool
[
RT_LWIP_ETHTHREAD_MBOX_SIZE
*
sizeof
(
rt_ubase_t
)
];
static
char
eth_rx_thread_stack
[
RT_LWIP_ETHTHREAD_STACKSIZE
];
#endif
...
...
@@ -79,10 +79,10 @@ struct eth_tx_msg
static
struct
rt_mailbox
eth_tx_thread_mb
;
static
struct
rt_thread
eth_tx_thread
;
#ifndef RT_LWIP_ETHTHREAD_PRIORITY
static
char
eth_tx_thread_mb_pool
[
32
*
4
];
static
char
eth_tx_thread_mb_pool
[
32
*
sizeof
(
rt_ubase_t
)
];
static
char
eth_tx_thread_stack
[
512
];
#else
static
char
eth_tx_thread_mb_pool
[
RT_LWIP_ETHTHREAD_MBOX_SIZE
*
4
];
static
char
eth_tx_thread_mb_pool
[
RT_LWIP_ETHTHREAD_MBOX_SIZE
*
sizeof
(
rt_ubase_t
)
];
static
char
eth_tx_thread_stack
[
RT_LWIP_ETHTHREAD_STACKSIZE
];
#endif
...
...
@@ -281,7 +281,7 @@ rt_err_t eth_system_device_init()
/* init rx thread */
/* init mailbox and create ethernet thread */
result
=
rt_mb_init
(
&
eth_rx_thread_mb
,
"erxmb"
,
&
eth_rx_thread_mb_pool
[
0
],
sizeof
(
eth_rx_thread_mb_pool
)
/
4
,
&
eth_rx_thread_mb_pool
[
0
],
sizeof
(
eth_rx_thread_mb_pool
)
/
sizeof
(
rt_ubase_t
)
,
RT_IPC_FLAG_FIFO
);
RT_ASSERT
(
result
==
RT_EOK
);
...
...
@@ -297,7 +297,7 @@ rt_err_t eth_system_device_init()
/* init mailbox and create ethernet thread */
result
=
rt_mb_init
(
&
eth_tx_thread_mb
,
"etxmb"
,
&
eth_tx_thread_mb_pool
[
0
],
sizeof
(
eth_tx_thread_mb_pool
)
/
4
,
&
eth_tx_thread_mb_pool
[
0
],
sizeof
(
eth_tx_thread_mb_pool
)
/
sizeof
(
rt_ubase_t
)
,
RT_IPC_FLAG_FIFO
);
RT_ASSERT
(
result
==
RT_EOK
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录