1. In original driver, the stack size for emac driver task "emacT" is only 2048 Bytes, which also can not be changed by user. 2. Each time when invoking "emac_start" function, it will reset emac registers, the driver should reconfig some important registers again.
60 lines
1.8 KiB
Text
60 lines
1.8 KiB
Text
menu Ethernet
|
|
|
|
config DMA_RX_BUF_NUM
|
|
int "Number of DMA RX buffers"
|
|
range 3 20
|
|
default 10
|
|
help
|
|
Number of DMA receive buffers. Each buffer is 1600 bytes.
|
|
Buffers are allocated statically.
|
|
Larger number of buffers increases throughput.
|
|
If enable flow ctrl, the num must be above 9 .
|
|
|
|
config DMA_TX_BUF_NUM
|
|
int "Number of DMA TX buffers"
|
|
range 3 20
|
|
default 10
|
|
help
|
|
Number of DMA transmit buffers. Each buffer is 1600 bytes.
|
|
Buffers are allocated statically.
|
|
Larger number of buffers increases throughput.
|
|
|
|
config EMAC_L2_TO_L3_RX_BUF_MODE
|
|
bool "Enable copy between Layer2 and Layer3"
|
|
default n
|
|
help
|
|
If this options is selected, a copy of each received buffer will be created when
|
|
passing it from the Ethernet MAC (L2) to the IP stack (L3). Otherwise, IP stack
|
|
will receive pointers to the DMA buffers used by Ethernet MAC.
|
|
|
|
When Ethernet MAC doesn't have any unused buffers left, it will drop incomming
|
|
packets (flow control may help with this problem, to some extent).
|
|
|
|
The buffers for the IP stack are allocated from the heap, so the total number of
|
|
receive buffers is limited by the available heap size, if this option is selected.
|
|
|
|
If unsure, choose n.
|
|
|
|
config EMAC_CHECK_LINK_PERIOD_MS
|
|
int "Period(ms) of checking Ethernet linkup status"
|
|
range 1000 5000
|
|
default 2000
|
|
help
|
|
The emac driver uses an internal timer to check the ethernet linkup
|
|
status. Here you should choose a valid the interval time.
|
|
|
|
config EMAC_TASK_PRIORITY
|
|
int "EMAC_TASK_PRIORITY"
|
|
default 20
|
|
range 3 22
|
|
help
|
|
Ethernet MAC task priority.
|
|
|
|
config EMAC_TASK_STACK_SIZE
|
|
int "Stack Size of EMAC Task"
|
|
default 3072
|
|
range 2000 8000
|
|
help
|
|
Stack Size of Ethernet MAC task.
|
|
|
|
endmenu
|