From ae90273b68aeb25dfff2065116d01cf6feb8670f Mon Sep 17 00:00:00 2001 From: chao_king <37656088+ChazJin@users.noreply.github.com> Date: Thu, 26 Dec 2019 19:03:46 +0800 Subject: [PATCH] Fix bug for drv_enet.c MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 源文件主要存在以下问题: 1> rt_hw_gd32_eth_init函数中对MAC初始化完成后并没有修改PHY的连接状态,这会导致测试TCP例程时无法建立TCP链接,应在初始化完成后将PHY的连接状态修改成linkup; 已在GD32450Z-EVAL开发板上测试,修改后没有再出现以上问题。 --- bsp/gd32450z-eval/drivers/drv_enet.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bsp/gd32450z-eval/drivers/drv_enet.c b/bsp/gd32450z-eval/drivers/drv_enet.c index 0f8ce72db6..b1bf632f54 100644 --- a/bsp/gd32450z-eval/drivers/drv_enet.c +++ b/bsp/gd32450z-eval/drivers/drv_enet.c @@ -652,7 +652,10 @@ int rt_hw_gd32_eth_init(void) /* init tx buffer free semaphore */ rt_sem_init(&gd32_emac_device0.tx_buf_free, "tx_buf0", EMAC_TXBUFNB, RT_IPC_FLAG_FIFO); eth_device_init(&(gd32_emac_device0.parent), "e0"); - + + /* change device link status */ + eth_device_linkchange(&(gd32_emac_device0.parent), RT_TRUE); + return 0; } INIT_DEVICE_EXPORT(rt_hw_gd32_eth_init);