Merge branch 'bugfix/ethernet_flow_control' into 'master'
ethernet: limit rx buf num when flow ctrl enable. See merge request !452
This commit is contained in:
commit
0fca7769e8
2 changed files with 10 additions and 2 deletions
|
@ -6,17 +6,18 @@ menuconfig ETHERNET
|
||||||
|
|
||||||
config DMA_RX_BUF_NUM
|
config DMA_RX_BUF_NUM
|
||||||
int "Number of DMA RX buffers"
|
int "Number of DMA RX buffers"
|
||||||
range 1 10
|
range 3 20
|
||||||
default 10
|
default 10
|
||||||
depends on ETHERNET
|
depends on ETHERNET
|
||||||
help
|
help
|
||||||
Number of DMA receive buffers. Each buffer is 1600 bytes.
|
Number of DMA receive buffers. Each buffer is 1600 bytes.
|
||||||
Buffers are allocated statically.
|
Buffers are allocated statically.
|
||||||
Larger number of buffers increases throughput.
|
Larger number of buffers increases throughput.
|
||||||
|
If enable flow ctrl, the num must be above 9 .
|
||||||
|
|
||||||
config DMA_TX_BUF_NUM
|
config DMA_TX_BUF_NUM
|
||||||
int "Number of DMA RX buffers"
|
int "Number of DMA RX buffers"
|
||||||
range 1 10
|
range 3 20
|
||||||
default 10
|
default 10
|
||||||
depends on ETHERNET
|
depends on ETHERNET
|
||||||
help
|
help
|
||||||
|
|
|
@ -216,7 +216,14 @@ static void emac_set_user_config_data(eth_config_t *config )
|
||||||
emac_config.emac_phy_check_init = config->phy_check_init;
|
emac_config.emac_phy_check_init = config->phy_check_init;
|
||||||
emac_config.emac_phy_get_speed_mode = config->phy_get_speed_mode;
|
emac_config.emac_phy_get_speed_mode = config->phy_get_speed_mode;
|
||||||
emac_config.emac_phy_get_duplex_mode = config->phy_get_duplex_mode;
|
emac_config.emac_phy_get_duplex_mode = config->phy_get_duplex_mode;
|
||||||
|
#if DMA_RX_BUF_NUM > 9
|
||||||
emac_config.emac_flow_ctrl_enable = config->flow_ctrl_enable;
|
emac_config.emac_flow_ctrl_enable = config->flow_ctrl_enable;
|
||||||
|
#else
|
||||||
|
if(config->flow_ctrl_enable == true) {
|
||||||
|
ESP_LOGE(TAG, "eth flow ctrl init err!!! Please run make menuconfig and make sure DMA_RX_BUF_NUM > 9 .");
|
||||||
|
}
|
||||||
|
emac_config.emac_flow_ctrl_enable = false;
|
||||||
|
#endif
|
||||||
emac_config.emac_phy_get_partner_pause_enable = config->phy_get_partner_pause_enable;
|
emac_config.emac_phy_get_partner_pause_enable = config->phy_get_partner_pause_enable;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue