Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OpenEth fails to build for ESP32S3 (IDFGH-14707) #15447

Open
3 tasks done
ShawnHymel opened this issue Feb 22, 2025 · 0 comments
Open
3 tasks done

OpenEth fails to build for ESP32S3 (IDFGH-14707) #15447

ShawnHymel opened this issue Feb 22, 2025 · 0 comments
Labels
Status: Opened Issue is new Type: Bug bugs in IDF

Comments

@ShawnHymel
Copy link

Answers checklist.

  • I have read the documentation ESP-IDF Programming Guide and the issue is not addressed there.
  • I have updated my IDF branch (master or release) to the latest version and checked that the issue is present there.
  • I have searched the issue tracker for a similar issue and not found a similar issue.

IDF version.

v5.4

Operating System used.

Linux

How did you build your project?

Command line with idf.py

If you are using Windows, please specify command line type.

None

What is the expected behavior?

The https_mbedtls example should build.

What is the actual behavior?

The build fails.

Steps to reproduce.

  1. Go into the https_mbedtls example.
  2. Set configs to enable OpenEth (idf.py menuconfig or sdkconfig.defaults):
CONFIG_EXAMPLE_CONNECT_WIFI=n
CONFIG_EXAMPLE_USE_OPENETH=y
  1. Set target to esp32s2:
idf.py set-target esp32s2
  1. Build:
idf.py build

Build or installation Logs.

root@17e429e45122:/workspace/apps/https_mbedtls# idf.py build
Executing action: all (aliases: build)
Running ninja in directory /workspace/apps/https_mbedtls/build
Executing "ninja all"...
[6/1010] Generating ../../partition_table/partition-table.bin
Partition table binary generated. Contents:
*******************************************************************************
# ESP-IDF Partition Table
# Name, Type, SubType, Offset, Size, Flags
nvs,data,nvs,0x9000,24K,
phy_init,data,phy,0xf000,4K,
factory,app,factory,0x10000,1M,
*******************************************************************************
[746/1010] Performing configure step for 'bootloader'
-- Found Git: /usr/bin/git (found version "2.39.5") 
-- The C compiler identification is GNU 14.2.0
-- The CXX compiler identification is GNU 14.2.0
-- The ASM compiler identification is GNU
-- Found assembler: /opt/toolchains/espressif/tools/xtensa-esp-elf/esp-14.2.0_20241119/xtensa-esp-elf/bin/xtensa-esp32s2-elf-gcc
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /opt/toolchains/espressif/tools/xtensa-esp-elf/esp-14.2.0_20241119/xtensa-esp-elf/bin/xtensa-esp32s2-elf-gcc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /opt/toolchains/espressif/tools/xtensa-esp-elf/esp-14.2.0_20241119/xtensa-esp-elf/bin/xtensa-esp32s2-elf-g++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Building ESP-IDF components for target esp32s2
-- Project sdkconfig file /workspace/apps/https_mbedtls/sdkconfig
-- Compiler supported targets: xtensa-esp-elf
-- Adding linker script /opt/toolchains/esp-idf/components/soc/esp32s2/ld/esp32s2.peripherals.ld
-- Bootloader project name: "bootloader" version: 1
-- Adding linker script /opt/toolchains/esp-idf/components/esp_rom/esp32s2/ld/esp32s2.rom.ld
-- Adding linker script /opt/toolchains/esp-idf/components/esp_rom/esp32s2/ld/esp32s2.rom.api.ld
-- Adding linker script /opt/toolchains/esp-idf/components/esp_rom/esp32s2/ld/esp32s2.rom.libgcc.ld
-- Adding linker script /opt/toolchains/esp-idf/components/esp_rom/esp32s2/ld/esp32s2.rom.spiflash_legacy.ld
-- Adding linker script /opt/toolchains/esp-idf/components/esp_rom/esp32s2/ld/esp32s2.rom.newlib-funcs.ld
-- Adding linker script /opt/toolchains/esp-idf/components/bootloader/subproject/main/ld/esp32s2/bootloader.ld
-- Adding linker script /opt/toolchains/esp-idf/components/bootloader/subproject/main/ld/esp32s2/bootloader.rom.ld
-- Components: bootloader bootloader_support efuse esp_app_format esp_bootloader_format esp_common esp_hw_support esp_rom esp_security esp_system esptool_py freertos hal log main micro-ecc newlib partition_table soc spi_flash xtensa
-- Component paths: /opt/toolchains/esp-idf/components/bootloader /opt/toolchains/esp-idf/components/bootloader_support /opt/toolchains/esp-idf/components/efuse /opt/toolchains/esp-idf/components/esp_app_format /opt/toolchains/esp-idf/components/esp_bootloader_format /opt/toolchains/esp-idf/components/esp_common /opt/toolchains/esp-idf/components/esp_hw_support /opt/toolchains/esp-idf/components/esp_rom /opt/toolchains/esp-idf/components/esp_security /opt/toolchains/esp-idf/components/esp_system /opt/toolchains/esp-idf/components/esptool_py /opt/toolchains/esp-idf/components/freertos /opt/toolchains/esp-idf/components/hal /opt/toolchains/esp-idf/components/log /opt/toolchains/esp-idf/components/bootloader/subproject/main /opt/toolchains/esp-idf/components/bootloader/subproject/components/micro-ecc /opt/toolchains/esp-idf/components/newlib /opt/toolchains/esp-idf/components/partition_table /opt/toolchains/esp-idf/components/soc /opt/toolchains/esp-idf/components/spi_flash /opt/toolchains/esp-idf/components/xtensa
-- Configuring done
-- Generating done
-- Build files have been written to: /workspace/apps/https_mbedtls/build/bootloader
[114/115] Generating binary image from built executable
esptool.py v4.8.1
Creating esp32s2 image...
Merged 2 ELF sections
Successfully created esp32s2 image.
Generated /workspace/apps/https_mbedtls/build/bootloader/bootloader.bin
[115/115] cd /workspace/apps/https_mbedtls/build/bootloader/esp-idf/esptool_py && /opt/toolchains/espressif/pyt.../check_sizes.py --offset 0x8000 bootloader 0x1000 /workspace/apps/https_mbedtls/build/bootloader/bootloader.bin
Bootloader binary size 0x5520 bytes. 0x1ae0 bytes (24%) free.
[873/1010] Building C object esp-idf/esp_eth/CMakeFiles/__idf_esp_eth.dir/src/openeth/esp_eth_mac_openeth.c.obj
FAILED: esp-idf/esp_eth/CMakeFiles/__idf_esp_eth.dir/src/openeth/esp_eth_mac_openeth.c.obj 
/opt/toolchains/espressif/tools/xtensa-esp-elf/esp-14.2.0_20241119/xtensa-esp-elf/bin/xtensa-esp32s2-elf-gcc -DESP_PLATFORM -DIDF_VER=\"v5.4\" -DSOC_MMU_PAGE_SIZE=CONFIG_MMU_PAGE_SIZE -DSOC_XTAL_FREQ_MHZ=CONFIG_XTAL_FREQ -D_GLIBCXX_HAVE_POSIX_SEMAPHORE -D_GLIBCXX_USE_POSIX_SEMAPHORE -D_GNU_SOURCE -D_POSIX_READER_WRITER_LOCKS -I/workspace/apps/https_mbedtls/build/config -I/opt/toolchains/esp-idf/components/esp_eth/include -I/opt/toolchains/esp-idf/components/newlib/platform_include -I/opt/toolchains/esp-idf/components/freertos/config/include -I/opt/toolchains/esp-idf/components/freertos/config/include/freertos -I/opt/toolchains/esp-idf/components/freertos/config/xtensa/include -I/opt/toolchains/esp-idf/components/freertos/FreeRTOS-Kernel/include -I/opt/toolchains/esp-idf/components/freertos/FreeRTOS-Kernel/portable/xtensa/include -I/opt/toolchains/esp-idf/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos -I/opt/toolchains/esp-idf/components/freertos/esp_additions/include -I/opt/toolchains/esp-idf/components/esp_hw_support/include -I/opt/toolchains/esp-idf/components/esp_hw_support/include/soc -I/opt/toolchains/esp-idf/components/esp_hw_support/include/soc/esp32s2 -I/opt/toolchains/esp-idf/components/esp_hw_support/dma/include -I/opt/toolchains/esp-idf/components/esp_hw_support/ldo/include -I/opt/toolchains/esp-idf/components/esp_hw_support/debug_probe/include -I/opt/toolchains/esp-idf/components/esp_hw_support/port/esp32s2/. -I/opt/toolchains/esp-idf/components/esp_hw_support/port/esp32s2/include -I/opt/toolchains/esp-idf/components/heap/include -I/opt/toolchains/esp-idf/components/heap/tlsf -I/opt/toolchains/esp-idf/components/log/include -I/opt/toolchains/esp-idf/components/soc/include -I/opt/toolchains/esp-idf/components/soc/esp32s2 -I/opt/toolchains/esp-idf/components/soc/esp32s2/include -I/opt/toolchains/esp-idf/components/soc/esp32s2/register -I/opt/toolchains/esp-idf/components/hal/platform_port/include -I/opt/toolchains/esp-idf/components/hal/esp32s2/include -I/opt/toolchains/esp-idf/components/hal/include -I/opt/toolchains/esp-idf/components/esp_rom/include -I/opt/toolchains/esp-idf/components/esp_rom/esp32s2/include -I/opt/toolchains/esp-idf/components/esp_rom/esp32s2/include/esp32s2 -I/opt/toolchains/esp-idf/components/esp_rom/esp32s2 -I/opt/toolchains/esp-idf/components/esp_common/include -I/opt/toolchains/esp-idf/components/esp_system/include -I/opt/toolchains/esp-idf/components/esp_system/port/soc -I/opt/toolchains/esp-idf/components/esp_system/port/include/private -I/opt/toolchains/esp-idf/components/xtensa/esp32s2/include -I/opt/toolchains/esp-idf/components/xtensa/include -I/opt/toolchains/esp-idf/components/xtensa/deprecated_include -I/opt/toolchains/esp-idf/components/lwip/include -I/opt/toolchains/esp-idf/components/lwip/include/apps -I/opt/toolchains/esp-idf/components/lwip/include/apps/sntp -I/opt/toolchains/esp-idf/components/lwip/lwip/src/include -I/opt/toolchains/esp-idf/components/lwip/port/include -I/opt/toolchains/esp-idf/components/lwip/port/freertos/include -I/opt/toolchains/esp-idf/components/lwip/port/esp32xx/include -I/opt/toolchains/esp-idf/components/lwip/port/esp32xx/include/arch -I/opt/toolchains/esp-idf/components/lwip/port/esp32xx/include/sys -I/opt/toolchains/esp-idf/components/esp_event/include -I/opt/toolchains/esp-idf/components/esp_timer/include -I/opt/toolchains/esp-idf/components/esp_driver_spi/include -I/opt/toolchains/esp-idf/components/esp_pm/include -I/opt/toolchains/esp-idf/components/esp_driver_gpio/include -I/opt/toolchains/esp-idf/components/esp_netif/include -I/opt/toolchains/esp-idf/components/esp_mm/include -mlongcalls  -fno-builtin-memcpy -fno-builtin-memset -fno-builtin-bzero -fno-builtin-stpcpy -fno-builtin-strncpy -fdiagnostics-color=always -ffunction-sections -fdata-sections -Wall -Werror=all -Wno-error=unused-function -Wno-error=unused-variable -Wno-error=unused-but-set-variable -Wno-error=deprecated-declarations -Wextra -Wno-error=extra -Wno-unused-parameter -Wno-sign-compare -Wno-enum-conversion -gdwarf-4 -ggdb -Og -fno-shrink-wrap -fmacro-prefix-map=/workspace/apps/https_mbedtls=. -fmacro-prefix-map=/opt/toolchains/esp-idf=/IDF -fstrict-volatile-bitfields -fno-jump-tables -fno-tree-switch-conversion -std=gnu17 -Wno-old-style-declaration -MD -MT esp-idf/esp_eth/CMakeFiles/__idf_esp_eth.dir/src/openeth/esp_eth_mac_openeth.c.obj -MF esp-idf/esp_eth/CMakeFiles/__idf_esp_eth.dir/src/openeth/esp_eth_mac_openeth.c.obj.d -o esp-idf/esp_eth/CMakeFiles/__idf_esp_eth.dir/src/openeth/esp_eth_mac_openeth.c.obj -c /opt/toolchains/esp-idf/components/esp_eth/src/openeth/esp_eth_mac_openeth.c
In file included from /opt/toolchains/esp-idf/components/esp_eth/src/openeth/esp_eth_mac_openeth.c:27:
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h: In function 'openeth_tx_desc':
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:34:37: error: 'DR_REG_EMAC_BASE' undeclared (first use in this function); did you mean 'DR_REG_HMAC_BASE'?
   34 | #define OPENETH_BASE                DR_REG_EMAC_BASE
      |                                     ^~~~~~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:107:38: note: in expansion of macro 'OPENETH_BASE'
  107 | #define OPENETH_DESC_BASE           (OPENETH_BASE + 0x400)
      |                                      ^~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:158:34: note: in expansion of macro 'OPENETH_DESC_BASE'
  158 |     return &((openeth_tx_desc_t*)OPENETH_DESC_BASE)[idx];
      |                                  ^~~~~~~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:34:37: note: each undeclared identifier is reported only once for each function it appears in
   34 | #define OPENETH_BASE                DR_REG_EMAC_BASE
      |                                     ^~~~~~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:107:38: note: in expansion of macro 'OPENETH_BASE'
  107 | #define OPENETH_DESC_BASE           (OPENETH_BASE + 0x400)
      |                                      ^~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:158:34: note: in expansion of macro 'OPENETH_DESC_BASE'
  158 |     return &((openeth_tx_desc_t*)OPENETH_DESC_BASE)[idx];
      |                                  ^~~~~~~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h: In function 'openeth_rx_desc':
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:34:37: error: 'DR_REG_EMAC_BASE' undeclared (first use in this function); did you mean 'DR_REG_HMAC_BASE'?
   34 | #define OPENETH_BASE                DR_REG_EMAC_BASE
      |                                     ^~~~~~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:107:38: note: in expansion of macro 'OPENETH_BASE'
  107 | #define OPENETH_DESC_BASE           (OPENETH_BASE + 0x400)
      |                                      ^~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:164:34: note: in expansion of macro 'OPENETH_DESC_BASE'
  164 |     return &((openeth_rx_desc_t*)OPENETH_DESC_BASE)[idx + TX_BUF_COUNT];
      |                                  ^~~~~~~~~~~~~~~~~
In file included from /opt/toolchains/esp-idf/components/esp_hw_support/include/esp_memory_utils.h:12,
                 from /opt/toolchains/esp-idf/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:54,
                 from /opt/toolchains/esp-idf/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:57,
                 from /opt/toolchains/esp-idf/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:69,
                 from /opt/toolchains/esp-idf/components/esp_eth/src/openeth/esp_eth_mac_openeth.c:25:
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h: In function 'openeth_enable':
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:34:37: error: 'DR_REG_EMAC_BASE' undeclared (first use in this function); did you mean 'DR_REG_HMAC_BASE'?
   34 | #define OPENETH_BASE                DR_REG_EMAC_BASE
      |                                     ^~~~~~~~~~~~~~~~
/opt/toolchains/esp-idf/components/soc/esp32s2/include/soc/soc.h:58:35: note: in definition of macro 'REG_SET_BIT'
   58 |             *(volatile uint32_t*)(_r) = (*(volatile uint32_t*)(_r)) | (_b);                                            \
      |                                   ^~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:37:38: note: in expansion of macro 'OPENETH_BASE'
   37 | #define OPENETH_MODER_REG           (OPENETH_BASE + 0x00)
      |                                      ^~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:169:17: note: in expansion of macro 'OPENETH_MODER_REG'
  169 |     REG_SET_BIT(OPENETH_MODER_REG, OPENETH_TXEN | OPENETH_RXEN | OPENETH_PRO);
      |                 ^~~~~~~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h: In function 'openeth_disable':
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:34:37: error: 'DR_REG_EMAC_BASE' undeclared (first use in this function); did you mean 'DR_REG_HMAC_BASE'?
   34 | #define OPENETH_BASE                DR_REG_EMAC_BASE
      |                                     ^~~~~~~~~~~~~~~~
/opt/toolchains/esp-idf/components/soc/esp32s2/include/soc/soc.h:63:35: note: in definition of macro 'REG_CLR_BIT'
   63 |             *(volatile uint32_t*)(_r) = (*(volatile uint32_t*)(_r)) & (~(_b));                                         \
      |                                   ^~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:49:38: note: in expansion of macro 'OPENETH_BASE'
   49 | #define OPENETH_INT_MASK_REG        (OPENETH_BASE + 0x08)
      |                                      ^~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:175:17: note: in expansion of macro 'OPENETH_INT_MASK_REG'
  175 |     REG_CLR_BIT(OPENETH_INT_MASK_REG, OPENETH_INT_RXB);
      |                 ^~~~~~~~~~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h: In function 'openeth_reset':
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:34:37: error: 'DR_REG_EMAC_BASE' undeclared (first use in this function); did you mean 'DR_REG_HMAC_BASE'?
   34 | #define OPENETH_BASE                DR_REG_EMAC_BASE
      |                                     ^~~~~~~~~~~~~~~~
/opt/toolchains/esp-idf/components/soc/esp32s2/include/soc/soc.h:58:35: note: in definition of macro 'REG_SET_BIT'
   58 |             *(volatile uint32_t*)(_r) = (*(volatile uint32_t*)(_r)) | (_b);                                            \
      |                                   ^~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:37:38: note: in expansion of macro 'OPENETH_BASE'
   37 | #define OPENETH_MODER_REG           (OPENETH_BASE + 0x00)
      |                                      ^~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:181:17: note: in expansion of macro 'OPENETH_MODER_REG'
  181 |     REG_SET_BIT(OPENETH_MODER_REG, OPENETH_RST);
      |                 ^~~~~~~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h: In function 'openeth_set_tx_desc_cnt':
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:34:37: error: 'DR_REG_EMAC_BASE' undeclared (first use in this function); did you mean 'DR_REG_HMAC_BASE'?
   34 | #define OPENETH_BASE                DR_REG_EMAC_BASE
      |                                     ^~~~~~~~~~~~~~~~
/opt/toolchains/esp-idf/components/soc/esp32s2/include/soc/soc.h:43:37: note: in definition of macro 'REG_WRITE'
   43 |             (*(volatile uint32_t *)(_r)) = (_v);                                                                       \
      |                                     ^~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:70:38: note: in expansion of macro 'OPENETH_BASE'
   70 | #define OPENETH_TX_BD_NUM_REG       (OPENETH_BASE + 0x20)
      |                                      ^~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:205:15: note: in expansion of macro 'OPENETH_TX_BD_NUM_REG'
  205 |     REG_WRITE(OPENETH_TX_BD_NUM_REG, tx_desc_cnt);
      |               ^~~~~~~~~~~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/esp_eth_mac_openeth.c: In function 'emac_opencores_isr_handler':
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:34:37: error: 'DR_REG_EMAC_BASE' undeclared (first use in this function); did you mean 'DR_REG_HMAC_BASE'?
   34 | #define OPENETH_BASE                DR_REG_EMAC_BASE
      |                                     ^~~~~~~~~~~~~~~~
/opt/toolchains/esp-idf/components/soc/esp32s2/include/soc/soc.h:48:37: note: in definition of macro 'REG_READ'
   48 |             (*(volatile uint32_t *)(_r));                                                                              \
      |                                     ^~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:48:38: note: in expansion of macro 'OPENETH_BASE'
   48 | #define OPENETH_INT_SOURCE_REG      (OPENETH_BASE + 0x04)
      |                                      ^~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/esp_eth_mac_openeth.c:56:32: note: in expansion of macro 'OPENETH_INT_SOURCE_REG'
   56 |     uint32_t status = REG_READ(OPENETH_INT_SOURCE_REG);
      |                                ^~~~~~~~~~~~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/esp_eth_mac_openeth.c: In function 'emac_opencores_write_phy_reg':
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:34:37: error: 'DR_REG_EMAC_BASE' undeclared (first use in this function); did you mean 'DR_REG_HMAC_BASE'?
   34 | #define OPENETH_BASE                DR_REG_EMAC_BASE
      |                                     ^~~~~~~~~~~~~~~~
/opt/toolchains/esp-idf/components/soc/esp32s2/include/soc/soc.h:43:37: note: in definition of macro 'REG_WRITE'
   43 |             (*(volatile uint32_t *)(_r)) = (_v);                                                                       \
      |                                     ^~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/esp_eth_mac_openeth.c:120:5: note: in expansion of macro 'REG_SET_FIELD'
  120 |     REG_SET_FIELD(OPENETH_MIIADDRESS_REG, OPENETH_FIAD, phy_addr);
      |     ^~~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:80:38: note: in expansion of macro 'OPENETH_BASE'
   80 | #define OPENETH_MIIADDRESS_REG      (OPENETH_BASE + 0x30)
      |                                      ^~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/esp_eth_mac_openeth.c:120:19: note: in expansion of macro 'OPENETH_MIIADDRESS_REG'
  120 |     REG_SET_FIELD(OPENETH_MIIADDRESS_REG, OPENETH_FIAD, phy_addr);
      |                   ^~~~~~~~~~~~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/esp_eth_mac_openeth.c: In function 'emac_opencores_read_phy_reg':
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:34:37: error: 'DR_REG_EMAC_BASE' undeclared (first use in this function); did you mean 'DR_REG_HMAC_BASE'?
   34 | #define OPENETH_BASE                DR_REG_EMAC_BASE
      |                                     ^~~~~~~~~~~~~~~~
/opt/toolchains/esp-idf/components/soc/esp32s2/include/soc/soc.h:43:37: note: in definition of macro 'REG_WRITE'
   43 |             (*(volatile uint32_t *)(_r)) = (_v);                                                                       \
      |                                     ^~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/esp_eth_mac_openeth.c:131:5: note: in expansion of macro 'REG_SET_FIELD'
  131 |     REG_SET_FIELD(OPENETH_MIIADDRESS_REG, OPENETH_FIAD, phy_addr);
      |     ^~~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:80:38: note: in expansion of macro 'OPENETH_BASE'
   80 | #define OPENETH_MIIADDRESS_REG      (OPENETH_BASE + 0x30)
      |                                      ^~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/esp_eth_mac_openeth.c:131:19: note: in expansion of macro 'OPENETH_MIIADDRESS_REG'
  131 |     REG_SET_FIELD(OPENETH_MIIADDRESS_REG, OPENETH_FIAD, phy_addr);
      |                   ^~~~~~~~~~~~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/esp_eth_mac_openeth.c: In function 'emac_opencores_set_addr':
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:34:37: error: 'DR_REG_EMAC_BASE' undeclared (first use in this function); did you mean 'DR_REG_HMAC_BASE'?
   34 | #define OPENETH_BASE                DR_REG_EMAC_BASE
      |                                     ^~~~~~~~~~~~~~~~
/opt/toolchains/esp-idf/components/soc/esp32s2/include/soc/soc.h:43:37: note: in definition of macro 'REG_WRITE'
   43 |             (*(volatile uint32_t *)(_r)) = (_v);                                                                       \
      |                                     ^~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:99:38: note: in expansion of macro 'OPENETH_BASE'
   99 | #define OPENETH_MAC_ADDR0_REG       (OPENETH_BASE + 0x40)
      |                                      ^~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/esp_eth_mac_openeth.c:153:15: note: in expansion of macro 'OPENETH_MAC_ADDR0_REG'
  153 |     REG_WRITE(OPENETH_MAC_ADDR0_REG, mac0_u32);
      |               ^~~~~~~~~~~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/esp_eth_mac_openeth.c: In function 'emac_opencores_set_promiscuous':
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:34:37: error: 'DR_REG_EMAC_BASE' undeclared (first use in this function); did you mean 'DR_REG_HMAC_BASE'?
   34 | #define OPENETH_BASE                DR_REG_EMAC_BASE
      |                                     ^~~~~~~~~~~~~~~~
/opt/toolchains/esp-idf/components/soc/esp32s2/include/soc/soc.h:58:35: note: in definition of macro 'REG_SET_BIT'
   58 |             *(volatile uint32_t*)(_r) = (*(volatile uint32_t*)(_r)) | (_b);                                            \
      |                                   ^~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:37:38: note: in expansion of macro 'OPENETH_BASE'
   37 | #define OPENETH_MODER_REG           (OPENETH_BASE + 0x00)
      |                                      ^~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/esp_eth_mac_openeth.c:210:21: note: in expansion of macro 'OPENETH_MODER_REG'
  210 |         REG_SET_BIT(OPENETH_MODER_REG, OPENETH_PRO);
      |                     ^~~~~~~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/esp_eth_mac_openeth.c: In function 'emac_opencores_init':
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:34:37: error: 'DR_REG_EMAC_BASE' undeclared (first use in this function); did you mean 'DR_REG_HMAC_BASE'?
   34 | #define OPENETH_BASE                DR_REG_EMAC_BASE
      |                                     ^~~~~~~~~~~~~~~~
/opt/toolchains/esp-idf/components/soc/esp32s2/include/soc/soc.h:48:37: note: in definition of macro 'REG_READ'
   48 |             (*(volatile uint32_t *)(_r));                                                                              \
      |                                     ^~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:37:38: note: in expansion of macro 'OPENETH_BASE'
   37 | #define OPENETH_MODER_REG           (OPENETH_BASE + 0x00)
      |                                      ^~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/esp_eth_mac_openeth.c:294:18: note: in expansion of macro 'OPENETH_MODER_REG'
  294 |     if (REG_READ(OPENETH_MODER_REG) != OPENETH_MODER_DEFAULT) {
      |                  ^~~~~~~~~~~~~~~~~
In file included from /opt/toolchains/esp-idf/components/esp_common/include/esp_err.h:13,
                 from /opt/toolchains/esp-idf/components/esp_common/include/esp_check.h:8,
                 from /opt/toolchains/esp-idf/components/esp_eth/src/openeth/esp_eth_mac_openeth.c:22:
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/esp_eth_mac_openeth.c: In function 'esp_eth_mac_new_openeth':
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:33:37: error: 'ETS_ETH_MAC_INTR_SOURCE' undeclared (first use in this function); did you mean 'ETS_BT_MAC_INTR_SOURCE'?
   33 | #define OPENETH_INTR_SOURCE         ETS_ETH_MAC_INTR_SOURCE
      |                                     ^~~~~~~~~~~~~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_common/include/esp_compiler.h:31:25: note: in definition of macro 'unlikely'
   31 | #define unlikely(x)    (x)
      |                         ^
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/esp_eth_mac_openeth.c:394:5: note: in expansion of macro 'ESP_GOTO_ON_FALSE'
  394 |     ESP_GOTO_ON_FALSE(esp_intr_alloc(OPENETH_INTR_SOURCE, ESP_INTR_FLAG_IRAM, emac_opencores_isr_handler, emac, &(emac->intr_hdl)) == ESP_OK, NULL, out, TAG, "alloc emac interrupt failed");
      |     ^~~~~~~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/esp_eth_mac_openeth.c:394:38: note: in expansion of macro 'OPENETH_INTR_SOURCE'
  394 |     ESP_GOTO_ON_FALSE(esp_intr_alloc(OPENETH_INTR_SOURCE, ESP_INTR_FLAG_IRAM, emac_opencores_isr_handler, emac, &(emac->intr_hdl)) == ESP_OK, NULL, out, TAG, "alloc emac interrupt failed");
      |                                      ^~~~~~~~~~~~~~~~~~~
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h: In function 'openeth_rx_desc':
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:165:1: error: control reaches end of non-void function [-Werror=return-type]
  165 | }
      | ^
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h: In function 'openeth_tx_desc':
/opt/toolchains/esp-idf/components/esp_eth/src/openeth/openeth.h:159:1: error: control reaches end of non-void function [-Werror=return-type]
  159 | }
      | ^
cc1: some warnings being treated as errors
[890/1010] Building C object esp-idf/protobuf-c/CMakeFiles/__idf_protobuf-c.dir/protobuf-c/protobuf-c/protobuf-c.c.obj
ninja: build stopped: subcommand failed.
ninja failed with exit code 1, output of the command is in the /workspace/apps/https_mbedtls/build/log/idf_py_stderr_output_1438690 and /workspace/apps/https_mbedtls/build/log/idf_py_stdout_output_1438690

More Information.

No response

@ShawnHymel ShawnHymel added the Type: Bug bugs in IDF label Feb 22, 2025
@github-actions github-actions bot changed the title OpenEth fails to build for ESP32S3 OpenEth fails to build for ESP32S3 (IDFGH-14707) Feb 22, 2025
@espressif-bot espressif-bot added the Status: Opened Issue is new label Feb 22, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Status: Opened Issue is new Type: Bug bugs in IDF
Projects
None yet
Development

No branches or pull requests

2 participants