morris
eec6de57ff
ethernet: multi-call failure in esp_eth_init
...
Because of incomplete state machine, ethernet driver will broken if esp_eth_init is called twice.
Detailed information here: https://ezredmine.espressif.cn:8765/issues/27332
2018-11-13 16:38:45 +08:00
morris
5fccb73f86
ethernetif: fix potential memory leak
...
1. If L2_TO_L3_RX_BUF_MODE is not selected, we must assign l2_owner explictly before we call pbuf_free.
2. free intr resource in esp_eth_deinit
Closes https://github.com/espressif/esp-idf/issues/2670
2018-11-13 10:11:48 +08:00
morris
b6d7675e60
ethernet: fix some bugs in phy&mac driver
...
1. Original register mapping for LAN8720 has some registers that doesn't exist/support.
So just remove them, and fix the power and init function for LAN8720.
2. GPIO16 and GPIO17 is occupied by PSRAM, so only ETH_CLOCK_GPIO_IN mode is supported in that case if using PSRAM.
3. Fix bug of OTA failing with Ethernet
4. Fix bug of multicast with Ethernet
Closes https://github.com/espressif/esp-idf/issues/2564
Closes https://github.com/espressif/esp-idf/issues/2620
Closes https://github.com/espressif/esp-idf/issues/2657
2018-11-06 11:07:22 +08:00
morris
20b7f0ec87
ethernet: fix infinite loop when init phy or reset mac
...
1. fix infinite loop problem when init phy device
2. fix infinite loop problem when reset mac
3. fix little bugs in ethernetif_init
4. fix incompatible return value between lwip and esp-idf
Closes https://github.com/espressif/esp-idf/issues/2331
Closes https://github.com/espressif/esp-idf/issues/2141
2018-09-20 10:09:38 +08:00
morris
3063a62e3e
ethernet: fix some bugs in ethernet driver
...
1. create a new pbuf to squash linked pbuf
2. optimize emac driver by adding ESP_IRAM_ATTR
3. remove duplicated function declare in esp_eth.h
4. remove duplicated code in emac_setup_tx_desc
5. disable Promiscuous mode
2018-09-17 10:12:46 +08:00
Angus Gratton
4eeed31a04
Merge branch 'feature/cmake' into 'master'
...
Merge experimental CMake support to master
See merge request idf/esp-idf!3024
2018-09-07 13:44:17 +08:00
morris
161a506f00
ethernet: enlarge ethernet task stack size
...
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.
2018-09-07 10:16:34 +08:00
Angus Gratton
a9c4ed7139
Merge branch 'master' into feature/cmake
2018-08-30 18:51:01 +08:00
morris
ec07112f5b
ethernet: support esp_eth_deinit
...
1. change static emac-dma memory to dynamic
2. add esp_eth_deinit
3. modify ethernet example
4. add testcase for ethernet deinit function
5. GPIO0 could not output the 50MHz clock to PHY, so remove this configuration
2018-08-28 12:18:48 +08:00
Angus Gratton
ff2404a272
Merge branch 'master' into feature/cmake
2018-08-16 17:14:17 +10:00
Angus Gratton
6b9784cc45
Merge branch 'master' into feature/cmake_update
2018-05-31 14:46:23 +10:00
Angus Gratton
c7f19e76d7
docs: Move main docs to cover CMake
...
Add "GNU Make build system" doc with "cheat sheet" for moving to new system
2018-05-07 18:45:49 +08:00
shangke
5fc130f2c0
update emac_reg_v2.h
2018-04-25 14:54:09 +08:00
shangke
710e69feca
emac:add set_eth_mac api
2017-12-15 17:15:53 +08:00
shangke
d46dcaf9e5
component/emac: fix process rx err
2017-11-15 11:04:32 +08:00
Frank Sautter
f324458b6a
feat(emac): add support for emac to use internal (APLL) clock outputs.
2017-11-13 14:18:58 +08:00
Ivan Grokhotkov
266d2b3e4f
ethernet: lock APB frequency while ethernet is enabled
2017-10-18 14:37:22 +08:00
Ivan Grokhotkov
e93c33050e
ethernet: enable EMAC module clock on initialization
2017-09-04 22:43:52 +08:00
Kedar Sovani
8348a71847
ethernet: remove CONFIG_ETHERNET
...
1. Hello World application shows no footprint difference before and
after this change
2. examples/ethernet/ethernet application compiles properly (can't
test with my board)
2017-08-18 08:31:43 +05:30
shangke
01a2c31e1f
change copy right
2017-08-04 14:56:58 +08:00
shangke
05aa09fbb9
beautify the code
2017-08-04 14:24:44 +08:00
shangke
1e6f904d38
add comments for rx list
2017-08-03 14:44:22 +08:00
shangke
ae571ddddf
fix rx buf
2017-08-01 11:59:57 +08:00
Liu Zhi Fu
9ae5c6700b
lwip/ethernet: fix emac rx buf err
...
1. Lwip not free the ethernet buf in lwip layer
2. Fix emac counter error
2017-07-25 11:19:31 +08:00
Alexey Gerenkov
8d43859b6a
esp32: SEGGER SystemView Tracing Support
...
Implements support for system level traces compatible with SEGGER
SystemView tool on top of ESP32 application tracing module.
That kind of traces can help to analyse program's behaviour.
SystemView can show timeline of tasks/ISRs execution, context switches,
statistics related to the CPUs' load distribution etc.
Also this commit adds useful feature to ESP32 application tracing module:
- Trace data buffering is implemented to handle temporary peaks of events load
2017-06-27 20:52:43 +03:00
Angus Gratton
453b5ded1d
ethernet: Add convenience functions esp_eth_smi_wait_value() & esp_eth_smi_wait_set()
...
Covers the common case of waiting for a particular PHY register to have a particular value.
2017-04-20 18:03:00 +10:00
Angus Gratton
453722ba54
ethernet: Refactor PHY support to be part of ethernet component
...
Move generic PHY support into its own interface
2017-04-20 18:03:00 +10:00
alarruskain
eba6789e6c
Fix late argument verification in emac-main
...
Prevent crash when emac_phy_power_enable is not set.
Merges #426 https://github.com/espressif/esp-idf/pull/426
2017-03-22 15:12:12 +08:00
XiaXiaotian
23f933a78d
mac address: add user set mac address
...
add menuconfig for user to set mac address of wifi, bt and ethernet.
2017-03-01 20:42:46 +08:00
shangke
9893b71096
ethernet: add a gpio to enable/disable phy power
2017-02-11 15:19:53 +08:00
shangke
627bc23b1c
ethernet:disable flow control when select l2_to_l3_copy_mode
2017-02-06 11:19:16 +08:00
shangke
2ea4d7fd02
ethernet: limit rx buf num when flow ctrl enable.
2017-01-19 16:45:30 +08:00
shangke
53b0b03e63
esp_event: event stack overflow
2017-01-16 17:06:12 +08:00
shangke
0e701e1cac
ethernet: support flow control
2017-01-10 15:19:18 +08:00
shangke
489701eb2d
ethernet : fix sometimes ethernet init fail bug
2017-01-06 13:49:42 +08:00
Angus Gratton
06e03ff52e
Replace backwards-compatible portTICK_RATE_MS with FreeRTOS v8+ portTICK_PERIOD_MS
...
Closes github #51 https://github.com/espressif/esp-idf/issues/51
2016-12-28 10:23:13 +11:00
shangke
5ddf6daa98
feature/ethernet_driver: update ethernet driver
...
1. The transmitting mode of the packets from LWIP to MAC is changed from synchronous to asynchronous.
2. The receive buf mode : support pointer mode and copy mode.
3. Add get phy status func used to config mac register.
2016-12-26 14:50:49 +08:00
Jeroen Domburg
655fd2986a
Add interrupt allocation scheme / interrupt sharing. Also modifies drivers and examples. Also allows interrupts
...
to be marked specifically as having a handler that's all in IRAM.
2016-12-08 12:39:33 +08:00
shangke
e0040af7e5
ethernet: add first version of ethernet driver
2016-12-01 19:17:48 +08:00