added sources for ethernet transport
This commit is contained in:
parent
76fd82c44a
commit
b09cac62b3
|
|
@ -8,6 +8,7 @@ idf_component_register(
|
|||
"src/NetTransport.c"
|
||||
"src/WiFiTransport.c"
|
||||
"src/GSMTransport.c"
|
||||
"src/ETHTransport.c"
|
||||
|
||||
INCLUDE_DIRS "." "include" "src"
|
||||
REQUIRES nvs_flash
|
||||
|
|
|
|||
208
Kconfig
208
Kconfig
|
|
@ -168,6 +168,214 @@ menu "WebGuiApp configuration"
|
|||
bool "Default Ethernet switched on"
|
||||
default y
|
||||
|
||||
config GPIO_RANGE_MIN
|
||||
int
|
||||
default 0
|
||||
|
||||
config GPIO_RANGE_MAX
|
||||
int
|
||||
default 36 if IDF_TARGET_ESP32
|
||||
default 46 if IDF_TARGET_ESP32S2
|
||||
default 19 if IDF_TARGET_ESP32C3
|
||||
default 48 if IDF_TARGET_ESP32S3
|
||||
|
||||
config USE_INTERNAL_ETHERNET
|
||||
depends on IDF_TARGET_ESP32
|
||||
select ETH_USE_ESP32_EMAC
|
||||
bool "Internal EMAC"
|
||||
help
|
||||
Use internal Ethernet MAC controller.
|
||||
|
||||
if USE_INTERNAL_ETHERNET
|
||||
choice ETH_PHY_MODEL
|
||||
prompt "Ethernet PHY Device"
|
||||
default ETH_PHY_IP101
|
||||
help
|
||||
Select the Ethernet PHY device to use in the example.
|
||||
|
||||
config ETH_PHY_IP101
|
||||
bool "IP101"
|
||||
help
|
||||
IP101 is a single port 10/100 MII/RMII/TP/Fiber Fast Ethernet Transceiver.
|
||||
Goto http://www.icplus.com.tw/pp-IP101G.html for more information about it.
|
||||
|
||||
config ETH_PHY_RTL8201
|
||||
bool "RTL8201/SR8201"
|
||||
help
|
||||
RTL8201F/SR8201F is a single port 10/100Mb Ethernet Transceiver with auto MDIX.
|
||||
Goto http://www.corechip-sz.com/productsview.asp?id=22 for more information about it.
|
||||
|
||||
config ETH_PHY_LAN87XX
|
||||
bool "LAN87xx"
|
||||
help
|
||||
Below chips are supported:
|
||||
LAN8710A LAN8720A LAN8740A/LAN8741ALAN8742A
|
||||
|
||||
config ETH_PHY_DP83848
|
||||
bool "DP83848"
|
||||
help
|
||||
DP83848 is a single port 10/100Mb/s Ethernet Physical Layer Transceiver.
|
||||
Goto http://www.ti.com/product/DP83848J for more information about it.
|
||||
|
||||
config ETH_PHY_KSZ8041
|
||||
bool "KSZ8041"
|
||||
help
|
||||
The KSZ8041 is a single supply 10Base-T/100Base-TX Physical Layer Transceiver.
|
||||
Goto https://www.microchip.com/wwwproducts/en/KSZ8041 for more information about it.
|
||||
|
||||
config ETH_PHY_KSZ8081
|
||||
bool "KSZ8081"
|
||||
help
|
||||
The KSZ8081 is a single supply 10Base-T/100Base-TX Physical Layer Transceiver.
|
||||
Goto https://www.microchip.com/wwwproducts/en/KSZ8081 for more information about it.
|
||||
endchoice # EXAMPLE_ETH_PHY_MODEL
|
||||
|
||||
config ETH_MDC_GPIO
|
||||
int "SMI MDC GPIO number"
|
||||
range GPIO_RANGE_MIN GPIO_RANGE_MAX
|
||||
default 23
|
||||
help
|
||||
Set the GPIO number used by SMI MDC.
|
||||
|
||||
config ETH_MDIO_GPIO
|
||||
int "SMI MDIO GPIO number"
|
||||
range GPIO_RANGE_MIN GPIO_RANGE_MAX
|
||||
default 18
|
||||
help
|
||||
Set the GPIO number used by SMI MDIO.
|
||||
|
||||
config ETH_PHY_RST_GPIO
|
||||
int "PHY Reset GPIO number"
|
||||
range -1 GPIO_RANGE_MAX
|
||||
default 5
|
||||
help
|
||||
Set the GPIO number used to reset PHY chip.
|
||||
Set to -1 to disable PHY chip hardware reset.
|
||||
|
||||
config ETH_PHY_ADDR
|
||||
int "PHY Address"
|
||||
range 0 31
|
||||
default 1
|
||||
help
|
||||
Set PHY address according your board schematic.
|
||||
endif # USE_INTERNAL_ETHERNET
|
||||
|
||||
config USE_SPI_ETHERNET
|
||||
bool "SPI Ethernet"
|
||||
default y
|
||||
select ETH_USE_SPI_ETHERNET
|
||||
help
|
||||
Use external SPI-Ethernet module(s).
|
||||
|
||||
if USE_SPI_ETHERNET
|
||||
config SPI_ETHERNETS_NUM
|
||||
int "Number of SPI Ethernet modules to use at a time"
|
||||
range 1 2
|
||||
default 1
|
||||
help
|
||||
Set the number of SPI Ethernet modules you want to use at a time. Multiple SPI modules can be connected
|
||||
to one SPI interface and can be separately accessed based on state of associated Chip Select (CS).
|
||||
|
||||
choice ETHERNET_TYPE_SPI
|
||||
prompt "Ethernet SPI"
|
||||
default W5500
|
||||
help
|
||||
Select which kind of Ethernet will be used in the example.
|
||||
|
||||
config DM9051
|
||||
bool "DM9051 Module"
|
||||
select ETH_SPI_ETHERNET_DM9051
|
||||
help
|
||||
Select external SPI-Ethernet module (DM9051).
|
||||
|
||||
config KSZ8851SNL
|
||||
bool "KSZ8851SNL Module"
|
||||
select ETH_SPI_ETHERNET_KSZ8851SNL
|
||||
help
|
||||
Select external SPI-Ethernet module (KSZ8851SNL).
|
||||
|
||||
config W5500
|
||||
bool "W5500 Module"
|
||||
select ETH_SPI_ETHERNET_W5500
|
||||
help
|
||||
Select external SPI-Ethernet module (W5500).
|
||||
endchoice
|
||||
|
||||
|
||||
config ETH_SPI_CLOCK_MHZ
|
||||
int "SPI clock speed (MHz)"
|
||||
range 5 80
|
||||
default 12 if IDF_TARGET_ESP32 || IDF_TARGET_ESP32C3
|
||||
default 36 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3
|
||||
help
|
||||
Set the clock speed (MHz) of SPI interface.
|
||||
|
||||
config ETH_SPI_CS0_GPIO
|
||||
int "SPI CS0 GPIO number for SPI Ethernet module #1"
|
||||
range GPIO_RANGE_MIN GPIO_RANGE_MAX
|
||||
default 15 if IDF_TARGET_ESP32
|
||||
default 10 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32S3
|
||||
help
|
||||
Set the GPIO number used by SPI CS0, i.e. Chip Select associated with the first SPI Eth module).
|
||||
|
||||
config ETH_SPI_CS1_GPIO
|
||||
depends on SPI_ETHERNETS_NUM > 1
|
||||
int "SPI CS1 GPIO number for SPI Ethernet module #2"
|
||||
range GPIO_RANGE_MIN GPIO_RANGE_MAX
|
||||
default 32 if IDF_TARGET_ESP32
|
||||
default 7 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3
|
||||
default 8 if IDF_TARGET_ESP32C3
|
||||
help
|
||||
Set the GPIO number used by SPI CS1, i.e. Chip Select associated with the second SPI Eth module.
|
||||
|
||||
config ETH_SPI_INT0_GPIO
|
||||
int "Interrupt GPIO number SPI Ethernet module #1"
|
||||
range 0 39
|
||||
default 4 if IDF_TARGET_ESP32 || IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32S3
|
||||
help
|
||||
Set the GPIO number used by the first SPI Ethernet module interrupt line.
|
||||
|
||||
config ETH_SPI_INT1_GPIO
|
||||
depends on SPI_ETHERNETS_NUM > 1
|
||||
int "Interrupt GPIO number SPI Ethernet module #2"
|
||||
range 0 36
|
||||
default 33 if IDF_TARGET_ESP32
|
||||
default 5 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32S3
|
||||
help
|
||||
Set the GPIO number used by the second SPI Ethernet module interrupt line.
|
||||
|
||||
config ETH_SPI_PHY_RST0_GPIO
|
||||
int "PHY Reset GPIO number of SPI Ethernet Module #1"
|
||||
range -1 GPIO_RANGE_MAX
|
||||
default -1
|
||||
help
|
||||
Set the GPIO number used to reset PHY chip on the first SPI Ethernet module.
|
||||
Set to -1 to disable PHY chip hardware reset.
|
||||
|
||||
config ETH_SPI_PHY_RST1_GPIO
|
||||
depends on SPI_ETHERNETS_NUM > 1
|
||||
int "PHY Reset GPIO number of SPI Ethernet Module #2"
|
||||
range -1 GPIO_RANGE_MAX
|
||||
default -1
|
||||
help
|
||||
Set the GPIO number used to reset PHY chip on the second SPI Ethernet module.
|
||||
Set to -1 to disable PHY chip hardware reset.
|
||||
|
||||
config ETH_SPI_PHY_ADDR0
|
||||
int "PHY Address of SPI Ethernet Module #1"
|
||||
range 0 31
|
||||
default 1
|
||||
help
|
||||
Set the first SPI Ethernet module PHY address according your board schematic.
|
||||
|
||||
config ETH_SPI_PHY_ADDR1
|
||||
depends on SPI_ETHERNETS_NUM > 1
|
||||
int "PHY Address of SPI Ethernet Module #2"
|
||||
range 0 31
|
||||
default 1
|
||||
help
|
||||
Set the second SPI Ethernet module PHY address according your board schematic.
|
||||
endif # USE_SPI_ETHERNET
|
||||
endif
|
||||
endmenu
|
||||
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@
|
|||
* Description:
|
||||
*/
|
||||
|
||||
#include "AppConfiguration.h"
|
||||
#include "SystemConfiguration.h"
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include "freertos/FreeRTOS.h"
|
||||
|
|
@ -308,7 +308,7 @@ static void eth_init(void *pvParameter)
|
|||
ESP_ERROR_CHECK(esp_netif_attach(eth_netif_spi[i], esp_eth_new_netif_glue(eth_handle_spi[i])));
|
||||
esp_netif_dns_info_t fldns;
|
||||
//esp_netif_str_to_ip4(&GetAppConf()->ethSettings.DNSAddr3, (esp_ip4_addr_t*) (&fldns.ip));
|
||||
memcpy(&fldns.ip, &GetAppConf()->ethSettings.DNSAddr3, sizeof(esp_ip4_addr_t));
|
||||
memcpy(&fldns.ip, &GetSysConf()->ethSettings.DNSAddr3, sizeof(esp_ip4_addr_t));
|
||||
esp_netif_set_dns_info(eth_netif_spi[i], ESP_NETIF_DNS_FALLBACK, &fldns);
|
||||
}
|
||||
#endif // CONFIG_ETH_USE_SPI_ETHERNET
|
||||
Loading…
Reference in New Issue
Block a user