Commit Graph

59 Commits

Author SHA1 Message Date
David Cermak
5e19b9c951 esp-netif: Make dependency on esp-eth optional
* esp-netif to optionally depend on esp-eth (only for l2tap config)
* esp_eth.h now includes the original ethernet header and the
ethernet-netif glue layer
* Updated examples and test to explicitely use esp-eth dependency if
needed
2022-06-09 07:55:40 +00:00
Ondrej Kosta
1a20b10fd3 Examples: common source for GPIO range in Kconfigs defined 2022-05-12 09:33:40 +02:00
Ondrej Kosta
fcdb0306d0 examples: added ESP-NETIF L2 TAP example 2022-04-12 12:33:57 +00:00
Omar Chebib
2571aaf3c9 G0: target component (components/esp32*) doesn't depend on driver anymore 2022-03-02 04:21:00 +00:00
David Cermak
8da2e4088c esp_eth: Update esp32's EMAC API to decouple driver and vendor config 2022-02-14 16:17:29 +00:00
David Cermak
2553fb5845 esp_eth: Make EMAC DMA burst size configurable
Merges https://github.com/espressif/esp-idf/pull/7874
Closes  https://github.com/espressif/esp-idf/issues/7380
2022-02-14 16:17:29 +00:00
Darian Leung
57fd78f5ba freertos: Remove legacy data types
This commit removes the usage of all legacy FreeRTOS data types that
are exposed via configENABLE_BACKWARD_COMPATIBILITY. Legacy types can
still be used by enabling CONFIG_FREERTOS_ENABLE_BACKWARD_COMPATIBILITY.
2022-02-09 23:05:45 +08:00
Fischerauer Christian
3fb83f2866 esp_eth: rework KSZ80xx implementation and add more KSZ80xx PHYs
* add support for KSZ8001, KSZ8021, KSZ8031, KSZ8051 and KSZ8061
* remove duplicate code
* simplify architecture to make the code base extensible (for future work)
2021-12-02 11:56:08 +01:00
Roland Dobai
766aa57084 Build & config: Remove leftover files from the unsupported "make" build system 2021-11-11 15:32:36 +01:00
Ondrej Kosta
35454b2bf7 Eth_examples: added support of ESP32-S3 chip
Defined SPI modules default GPIO values for ESP32-S3

SPI bus needs to be initialized with SPI_DMA_CH_AUTO option
2021-09-08 13:11:39 +02:00
Ondrej Kosta
300618e5be Merge branch 'feature/dual_eth' into 'master'
esp_eth: add support for multiple Ethernets modules at a time

Closes IDFGH-5596

See merge request espressif/esp-idf!14640
2021-08-27 06:11:48 +00:00
Ondrej Kosta
ef30384902 esp_eth: add support for multiple Ethernets modules at a time
Ethernet driver events properly bounded with ESP NETIF actions to support multiple Ethernet modules used at a time.

Components using Ethernet updated to conform with new API.

Closes https://github.com/espressif/esp-idf/issues/7318
2021-08-24 17:10:36 +02:00
Ivan Grokhotkov
ece73a3e55 examples/protocols: fix compilation when CONFIG_EXAMPLE_USE_OPENETH=y
The code checked CONFIG_ETH_USE_SPI_ETHERNET (which is usually set),
but CONFIG_EXAMPLE_ETH_SPI_xxx_GPIO options are only defined if
CONFIG_EXAMPLE_USE_SPI_ETHERNET is set. Fix the ifdef accordingly.
Regression from aea901f0.
2021-08-15 21:58:42 +05:00
Ondrej Kosta
4e77430107 examples: Update Ethernet examples to use new PHY LAN87xx init function
Ethernet examples device usage and Kconfig options synchronized
2021-07-28 19:34:05 +08:00
He Yin Ling
97a09e51ce example: set example wifi scan method to all channel:
in CI example test we could have runners with same SSID in the same lab.
Use scan on all channel will let DUT connect to the AP with best RSSI.
2021-06-09 10:01:17 +08:00
ronghulin
3373eff989 Bugfix: Connect example to add scan mode config
Closes https://github.com/espressif/esp-idf/issues/6595
2021-03-24 15:44:48 +08:00
yuanjm
821eea45b3 examples: Strip IPv6 function in example and use sockaddr_storage to replace sockaddr_in6 2021-02-23 18:26:03 +08:00
xiehang
b8a8fe3f54 esp_wifi: Modify ESP_IF_WIFI_STA to WIFI_IF_STA 2021-01-19 11:55:44 +08:00
xiehang
c260c223e9 example: We should not check the return value of esp_wifi_connect() in any case 2021-01-11 14:40:18 +08:00
morris
8d0a0537cc eth: hide spi configuration when using internal emac 2020-11-27 21:11:31 +08:00
morris
aea901f014 eth: support W5500 in network examples 2020-11-16 13:30:49 +08:00
Angus Gratton
66fb5a29bb Whitespace: Automated whitespace fixes (large commit)
Apply the pre-commit hook whitespace fixes to all files in the repo.

(Line endings, blank lines at end of file, trailing whitespace)
2020-11-11 07:36:35 +00:00
nx518
9207c6ca8e lwip: Added description to Kconfig option on IPv6 SLAAC
Closes https://github.com/espressif/esp-idf/issues/6076
Merges https://github.com/espressif/esp-idf/pull/6078
2020-11-09 22:10:32 +00:00
David Cermak
52a7721bf7 examples: Common connect component: Unregister shutdown handler on disconnection
To be able to connect smoothly after disconnecting, we have to unregister all handlers including shutdown handler on disconnection
2020-09-02 11:12:08 +02:00
David Cermak
085d2b8d25 examples: common connect to also support no connection flow if no inteface chosen
This is useful for testing if there's no need for external network and connection
2020-07-14 10:42:17 +00:00
houwenxiang
8e00522cd7 vfs: support vfs uart set line endings with specified uart number 2020-07-10 11:15:09 +08:00
David Cermak
5c6bca69a5 examples: common connect: fix build error if ipv6 disabled
Declaration of local variable esp_ip6_addr_t ip6[]; was active even if IPV6 disabled in sdkconfig. Introduced in 06711c7c36
2020-05-22 08:45:59 +00:00
Mahavir Jain
5f5bf9e5ee Merge branch 'bugfix/allow_buffering_on_stdout' into 'master'
protocol_examples_common: keep buffering enabled on stdout

See merge request espressif/esp-idf!8793
2020-05-20 10:51:29 +08:00
Mahavir Jain
7925ba245d protocol_examples_common: keep buffering enabled on stdout
- Newlib uses significantly more stack space when printing to an unbuffered stream
- For examples tests, disabling buffering on stdout is not really required

This issue was found during one of the OTA example test failure, root cause
being stack overflow in `esp_event` task.
2020-05-18 16:59:20 +05:30
David Cermak
06711c7c36 examples: common connect component to use both interfaces at once 2020-05-18 09:26:24 +02:00
David Cermak
a5a750ba48 examples: add socket stdin utils to common connect component 2020-03-23 12:19:38 +00:00
David Cermak
63aa0d6e9c common_connect: add support for getting multiple IPv6 addresses 2020-03-23 12:19:38 +00:00
David Cermak
56725fa678 esp-netif: support for ipv6 addr types and indices 2020-03-23 12:19:38 +00:00
David Čermák
a3816bcb75 Merge branch 'bugfix/example_esp32s2_ipv6_on' into 'master'
examples: enable IPv6 in example common connect for esp32s2

Closes IDF-1115

See merge request espressif/esp-idf!7879
2020-03-06 04:05:27 +08:00
David Cermak
48fe3a13f5 examples: common connect code to ignore GOT_IP6_EVENT if comes from unrelated netif 2020-03-05 18:46:48 +00:00
David Cermak
0927ac648f examples: enable IPv6 in example common connect for esp32s2
Closes IDF-1115
2020-03-05 18:33:35 +00:00
morris
5ad0bdd8db ethernet: work with cache disabled
add ETH_MAC_FLAG_WORK_WITH_CACHE_DISABLE flag, make ethenret driver
possible to work when cache disabled

Closes https://github.com/espressif/esp-idf/issues/4406
2020-01-19 16:25:24 +08:00
morris
ac11545e0a ethernet: warning when double start/stop 2019-12-03 16:10:20 +08:00
morris
c3ee156df0 ethernet: move netif glue && add ref counter
1. move netif glue into single file
2. add reference counter for Ethernet driver
2019-11-27 10:36:32 +08:00
suda-morris
05d71319de ethernet: add gpio number into config structure 2019-11-20 10:36:45 +08:00
David Cermak
20add7da60 esp_netif: extract wifi_netif module as an abstraction to wifi universal interface defined by if handle and callback 2019-11-13 12:36:25 +01:00
David Cermak
3a19bf055d esp_netif and examples: using wifi driver handle, update examples and tests to pass the CI 2019-11-13 12:36:25 +01:00
David Cermak
21464465ea examples: common component initialization code to use new esp_netif
instead of tcpip_adapter
2019-11-13 12:36:25 +01:00
Angus Gratton
ae21d669b9 Merge branch 'master' into feature/esp32s2beta_merge 2019-10-17 18:22:08 +11:00
Angus Gratton
496ede9bcd Merge branch 'master' into feature/esp32s2beta_merge 2019-10-15 14:59:27 +11:00
Ivan Grokhotkov
31dac92e5f ethernet: support OpenCores ethernet MAC
OpenCores Ethernet MAC has a relatively simple interface, and is
already supported in QEMU. This makes it a good candidate for enabling
network support when running IDF apps in QEMU, compared to the
relatively more complex task of writing a QEMU model of ESP32 EMAC.

This driver is written with QEMU in mind: it does not implement or
handle things that aren't implemented or handled in the QEMU model:
error flags, error interrupts. The transmit part of the driver also
assumes that the TX operation is done immediately when the TX
descriptor is written (which is the case with QEMU), hence waiting for
the TX operation to complete is not necessary.

For simplicity, the driver assumes that the peripheral register
occupy the same memory range as the ESP32 EMAC registers, and the
same interrupt source number is used.
2019-10-13 17:05:26 +02:00
Ivan Grokhotkov
28a440521e examples: gracefully shut down Wi-Fi before restart
This fixes the issue that if Wi-Fi is stopped from a shutdown handler,
the code in connect.c tries to reconnect, and fails because Wi-Fi is
already stopped.
Also make the error check in connect.c less strict.
2019-10-07 16:47:49 +02:00
Ivan Grokhotkov
5830f529d8 Merge branch 'master' into feature/esp32s2beta_merge 2019-10-02 19:01:39 +02:00
suda-morris
546ac64a9e ethernet: update spi-ethernet api 2019-09-19 09:41:21 +00:00
Angus Gratton
04ae56806c Merge branch 'master' into feature/esp32s2beta_update 2019-08-08 15:26:58 +10:00