From 7bc8211aa4992ee23abfccecd1404109dc376576 Mon Sep 17 00:00:00 2001 From: Grant Ramsay Date: Tue, 20 Sep 2022 19:42:54 +1200 Subject: [PATCH] boards: xtensa: Add esp32_ethernet_kit board Adds support for the esp32_ethernet_kit board. esp32_ethernet_kit board is useful for testing ESP32 Ethernet Signed-off-by: Grant Ramsay --- .../xtensa/esp32_ethernet_kit/Kconfig.board | 8 + .../esp32_ethernet_kit/Kconfig.defconfig | 32 ++ boards/xtensa/esp32_ethernet_kit/board.cmake | 9 + .../img/esp32-ethernet-kit-a-v1.2-layout.jpg | Bin 0 -> 36871 bytes .../img/esp32-ethernet-kit-b-v1.0-layout.jpg | Bin 0 -> 13217 bytes .../esp32-ethernet-kit-rmii-clk-from-phy.jpg | Bin 0 -> 11085 bytes .../esp32-ethernet-kit-rmii-clk-to-phy.jpg | Bin 0 -> 12250 bytes .../esp32-ethernet-kit-v1.1-block-diagram.jpg | Bin 0 -> 49883 bytes .../img/esp32-ethernet-kit-v1.2-overview.jpg | Bin 0 -> 40794 bytes .../doc/img/esp32-ethernet-kit-v1.2.jpg | Bin 0 -> 58758 bytes .../xtensa/esp32_ethernet_kit/doc/index.rst | 507 ++++++++++++++++++ .../esp32_ethernet_kit-pinctrl.dtsi | 35 ++ .../esp32_ethernet_kit/esp32_ethernet_kit.dts | 116 ++++ .../esp32_ethernet_kit.yaml | 16 + .../esp32_ethernet_kit_defconfig | 23 + .../esp32_ethernet_kit/support/openocd.cfg | 5 + samples/arch/smp/pktqueue/sample.yaml | 3 +- 17 files changed, 753 insertions(+), 1 deletion(-) create mode 100644 boards/xtensa/esp32_ethernet_kit/Kconfig.board create mode 100644 boards/xtensa/esp32_ethernet_kit/Kconfig.defconfig create mode 100644 boards/xtensa/esp32_ethernet_kit/board.cmake create mode 100644 boards/xtensa/esp32_ethernet_kit/doc/img/esp32-ethernet-kit-a-v1.2-layout.jpg create mode 100644 boards/xtensa/esp32_ethernet_kit/doc/img/esp32-ethernet-kit-b-v1.0-layout.jpg create mode 100644 boards/xtensa/esp32_ethernet_kit/doc/img/esp32-ethernet-kit-rmii-clk-from-phy.jpg create mode 100644 boards/xtensa/esp32_ethernet_kit/doc/img/esp32-ethernet-kit-rmii-clk-to-phy.jpg create mode 100644 boards/xtensa/esp32_ethernet_kit/doc/img/esp32-ethernet-kit-v1.1-block-diagram.jpg create mode 100644 boards/xtensa/esp32_ethernet_kit/doc/img/esp32-ethernet-kit-v1.2-overview.jpg create mode 100644 boards/xtensa/esp32_ethernet_kit/doc/img/esp32-ethernet-kit-v1.2.jpg create mode 100644 boards/xtensa/esp32_ethernet_kit/doc/index.rst create mode 100644 boards/xtensa/esp32_ethernet_kit/esp32_ethernet_kit-pinctrl.dtsi create mode 100644 boards/xtensa/esp32_ethernet_kit/esp32_ethernet_kit.dts create mode 100644 boards/xtensa/esp32_ethernet_kit/esp32_ethernet_kit.yaml create mode 100644 boards/xtensa/esp32_ethernet_kit/esp32_ethernet_kit_defconfig create mode 100644 boards/xtensa/esp32_ethernet_kit/support/openocd.cfg diff --git a/boards/xtensa/esp32_ethernet_kit/Kconfig.board b/boards/xtensa/esp32_ethernet_kit/Kconfig.board new file mode 100644 index 00000000000..b4d48cc7f05 --- /dev/null +++ b/boards/xtensa/esp32_ethernet_kit/Kconfig.board @@ -0,0 +1,8 @@ +# ESP32-ETHERNET-KIT board configuration + +# Copyright (c) 2022 Grant Ramsay +# SPDX-License-Identifier: Apache-2.0 + +config BOARD_ESP32_ETHERNET_KIT + bool "ESP32-ETHERNET-KIT Development Board" + depends on SOC_ESP32 diff --git a/boards/xtensa/esp32_ethernet_kit/Kconfig.defconfig b/boards/xtensa/esp32_ethernet_kit/Kconfig.defconfig new file mode 100644 index 00000000000..afe5ed26419 --- /dev/null +++ b/boards/xtensa/esp32_ethernet_kit/Kconfig.defconfig @@ -0,0 +1,32 @@ +# ESP32-ETHERNET-KIT board configuration + +# Copyright (c) 2022 Grant Ramsay +# SPDX-License-Identifier: Apache-2.0 + +config BOARD + default "esp32_ethernet_kit" + depends on BOARD_ESP32_ETHERNET_KIT + +config ENTROPY_ESP32_RNG + default y if ENTROPY_GENERATOR + +config ESP_SPIRAM + default y + +choice SPIRAM_TYPE + default SPIRAM_TYPE_ESPPSRAM64 +endchoice + +if BT + +config HEAP_MEM_POOL_SIZE + default 16384 + +config ENTROPY_GENERATOR + default y + +choice BT_HCI_BUS_TYPE + default BT_ESP32 +endchoice + +endif # BT diff --git a/boards/xtensa/esp32_ethernet_kit/board.cmake b/boards/xtensa/esp32_ethernet_kit/board.cmake new file mode 100644 index 00000000000..2f04d1fe886 --- /dev/null +++ b/boards/xtensa/esp32_ethernet_kit/board.cmake @@ -0,0 +1,9 @@ +# SPDX-License-Identifier: Apache-2.0 + +if(NOT "${OPENOCD}" MATCHES "^${ESPRESSIF_TOOLCHAIN_PATH}/.*") + set(OPENOCD OPENOCD-NOTFOUND) +endif() +find_program(OPENOCD openocd PATHS ${ESPRESSIF_TOOLCHAIN_PATH}/openocd-esp32/bin NO_DEFAULT_PATH) + +include(${ZEPHYR_BASE}/boards/common/esp32.board.cmake) +include(${ZEPHYR_BASE}/boards/common/openocd.board.cmake) diff --git a/boards/xtensa/esp32_ethernet_kit/doc/img/esp32-ethernet-kit-a-v1.2-layout.jpg b/boards/xtensa/esp32_ethernet_kit/doc/img/esp32-ethernet-kit-a-v1.2-layout.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a7518757ba92a7c675458c00bad250ac55f11fc3 GIT binary patch literal 36871 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 literal 0 HcmV?d00001 diff --git a/boards/xtensa/esp32_ethernet_kit/doc/img/esp32-ethernet-kit-b-v1.0-layout.jpg b/boards/xtensa/esp32_ethernet_kit/doc/img/esp32-ethernet-kit-b-v1.0-layout.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0a449f038d8a375ea428073944333b8ce76ecd68 GIT binary patch literal 13217 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 literal 0 HcmV?d00001 diff --git a/boards/xtensa/esp32_ethernet_kit/doc/img/esp32-ethernet-kit-rmii-clk-to-phy.jpg b/boards/xtensa/esp32_ethernet_kit/doc/img/esp32-ethernet-kit-rmii-clk-to-phy.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c643f2e9514b1b8e2c933bb6c9334d7919dc15e9 GIT binary patch literal 12250 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 S&H7)4`uC&rXAADl)c*lqd3tLA literal 0 HcmV?d00001 diff --git a/boards/xtensa/esp32_ethernet_kit/doc/img/esp32-ethernet-kit-v1.1-block-diagram.jpg b/boards/xtensa/esp32_ethernet_kit/doc/img/esp32-ethernet-kit-v1.1-block-diagram.jpg new file mode 100644 index 0000000000000000000000000000000000000000..2ce77e6ae6f8e11506bd70d2e02c14a16b1488dc GIT binary patch literal 49883 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ⓈHz1@G@$1wt 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
    dN>cIMUP|V80{nhg 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 literal 0 HcmV?d00001 diff --git a/boards/xtensa/esp32_ethernet_kit/doc/img/esp32-ethernet-kit-v1.2-overview.jpg b/boards/xtensa/esp32_ethernet_kit/doc/img/esp32-ethernet-kit-v1.2-overview.jpg new file mode 100644 index 0000000000000000000000000000000000000000..3811dfc458e9866704d98c539280d6f44824c867 GIT binary patch literal 40794 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

    W(La3(aTwCmGqSu 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 literal 0 HcmV?d00001 diff --git a/boards/xtensa/esp32_ethernet_kit/doc/img/esp32-ethernet-kit-v1.2.jpg b/boards/xtensa/esp32_ethernet_kit/doc/img/esp32-ethernet-kit-v1.2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..9a756e0a2fce4890f2db7941399b9085bb27d641 GIT binary patch literal 58758 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�zcCzFgGtTM|F^V2^{oL|*|n;tqoNp@&l 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. + +It consists of two development boards, the Ethernet board A and the PoE +board B. The `Ethernet board (A)`_ contains Bluetooth/Wi-Fi dual-mode +ESP32-WROVER-E module and IP101GRI, a Single Port 10/100 Fast Ethernet +Transceiver (PHY). The `PoE board (B)`_ provides power over Ethernet +functionality. The A board can work independently, without the board B +installed. + +.. _get-started-esp32-ethernet-kit-v1.2: + +.. figure:: img/esp32-ethernet-kit-v1.2.jpg + :align: center + :alt: ESP32-Ethernet-Kit V1.2 + :figclass: align-center + + ESP32-Ethernet-Kit V1.2 + +For the application loading and monitoring, the Ethernet board (A) also +features FTDI FT2232H chip - an advanced multi-interface USB bridge. +This chip enables to use JTAG for direct debugging of ESP32 through the +USB interface without a separate JTAG debugger. + + +Functionality Overview +---------------------- + +The block diagram below shows the main components of ESP32-Ethernet-Kit +and their interconnections. + +.. figure:: img/esp32-ethernet-kit-v1.1-block-diagram.jpg + :align: center + :alt: ESP32-Ethernet-Kit block diagram + :figclass: align-center + + ESP32-Ethernet-Kit block diagram + + +Functional Description +---------------------- + +The following figures and tables describe the key components, interfaces, +and controls of the ESP32-Ethernet-Kit. + +.. _get-started-esp32-ethernet-kit-a-v1.2-layout: + + +Ethernet Board (A) +^^^^^^^^^^^^^^^^^^ + +.. figure:: img/esp32-ethernet-kit-a-v1.2-layout.jpg + :align: center + :alt: ESP32-Ethernet-Kit V1.2 + :figclass: align-center + + ESP32-Ethernet-Kit - Ethernet board (A) layout + +The table below provides description starting from the picture's top right +corner and going clockwise. + +.. list-table:: Table 1 Component Description + :widths: 40 150 + :header-rows: 1 + + * - Key Component + - Description + * - ESP32-WROVER-E + - This ESP32 module features 64-Mbit PSRAM for flexible extended storage + and data processing capabilities. + * - GPIO Header 2 + - Five unpopulated through-hole solder pads to provide access to selected + GPIOs of ESP32. For details, see `GPIO Header 2`_. + * - Function Switch + - A 4-bit DIP switch used to configure the functionality of selected GPIOs + of ESP32. For details see `Function Switch`_. + * - Tx/Rx LEDs + - Two LEDs to show the status of UART transmission. + * - FT2232H + - The FT2232H chip serves as a multi-protocol USB-to-serial bridge which + can be programmed and controlled via USB to provide communication with + ESP32. FT2232H also features USB-to-JTAG interface which is available + on channel A of the chip, while USB-to-serial is on channel B. + The FT2232H chip enhances user-friendliness in terms of application + development and debugging. See + `ESP32-Ethernet-Kit V1.2 Ethernet board (A) Schematic `_. + * - USB Port + - USB interface. Power supply for the board as well as the communication + interface between a computer and the board. + * - Power Switch + - Power On/Off Switch. Toggling the switch to **5V0** position powers the + board on, toggling to **GND** position powers the board off. + * - 5V Input + - The 5 V power supply interface can be more convenient when the board is + operating autonomously (not connected to a computer). + * - 5V Power On LED + - This red LED turns on when power is supplied to the board, either from + USB or 5 V Input. + * - DC/DC Converter + - Provided DC 5 V to 3.3 V conversion, output current up to 2 A. + * - Board B Connectors + - A pair male and female header pins for mounting the `PoE board (B)`_ + * - IP101GRI (PHY) + - The physical layer (PHY) connection to the Ethernet cable is + implemented using the + `IP101GRI `_ + chip. The connection between PHY and ESP32 is done through the reduced + media-independent interface (RMII), a variant of the media-independent + interface `(MII) `_ + standard. The PHY supports the IEEE 802.3/802.3u standard of 10/100 + Mbps. + * - RJ45 Port + - Ethernet network data transmission port. + * - Magnetics Module + - The Magnetics are part of the Ethernet specification to protect against + faults and transients, including rejection of common mode signals + between the transceiver IC and the cable. The magnetics also provide + galvanic isolation between the transceiver and the Ethernet device. + * - Link/Activity LEDs + - Two LEDs (green and red) that respectively indicate the "Link" and + "Activity" statuses of the PHY. + * - BOOT Button + - Download button. Holding down **BOOT** and then pressing **EN** + initiates Firmware Download mode for downloading firmware through the + serial port. + * - EN Button + - Reset button. + * - GPIO Header 1 + - This header provides six unpopulated through-hole solder pads connected + to spare GPIOs of ESP32. For details, see `GPIO Header 1`_. + +PoE Board (B) +^^^^^^^^^^^^^ + +This board coverts power delivered over the Ethernet cable (PoE) to provide a +power supply for the Ethernet board (A). The main components of the PoE board +(B) are shown on the block diagram under `Functionality Overview`_. + +The PoE board (B) has the following features: + +* Support for IEEE 802.3at +* Power output: 5 V, 1.4 A + +To take advantage of the PoE functionality the **RJ45 Port** of the Ethernet +board (A) should be connected with an Ethernet cable to a switch that supports +PoE. When the Ethernet board (A) detects 5 V power output from the PoE board +(B), the USB power will be automatically cut off. + +.. figure:: img/esp32-ethernet-kit-b-v1.0-layout.jpg + :align: center + :alt: ESP32-Ethernet-Kit - PoE board (B) + :figclass: align-center + + ESP32-Ethernet-Kit - PoE board (B) layout + +.. list-table:: Table PoE board (B) + :widths: 40 150 + :header-rows: 1 + + * - Key Component + - Description + * - Board A Connector + - Four female (left) and four male (right) header pins for connecting the + PoE board (B) to `Ethernet board (A)`_. The pins on the left accept + power coming from a PoE switch. The pins on the right deliver 5 V power + supply to the Ethernet board (A). + * - External Power Terminals + - Optional power supply (26.6 ~ 54 V) to the PoE board (B). + +.. _get-started-esp32-ethernet-kit-v1.2-setup-options: + + +Setup Options +------------- + +This section describes options to configure the ESP32-Ethernet-Kit hardware. + + +Function Switch +^^^^^^^^^^^^^^^ + +When in On position, this DIP switch is routing listed GPIOs to FT2232H to +provide JTAG functionality. When in Off position, the GPIOs may be used for +other purposes. + +======= ================ +DIP SW GPIO Pin +======= ================ + 1 GPIO13 + 2 GPIO12 + 3 GPIO15 + 4 GPIO14 +======= ================ + + +RMII Clock Selection +^^^^^^^^^^^^^^^^^^^^ + +The ethernet MAC and PHY under RMII working mode need a common 50 MHz +reference clock (i.e. RMII clock) that can be provided either externally, +or generated from internal ESP32 APLL (not recommended). + +.. note:: + + For additional information on the RMII clock selection, please refer to + `ESP32-Ethernet-Kit V1.2 Ethernet board (A) Schematic `_, + sheet 2, location D2. + + +RMII Clock Sourced Externally by PHY +"""""""""""""""""""""""""""""""""""" + +By default, the ESP32-Ethernet-Kit is configured to provide RMII clock for the +IP101GRI PHY's 50M_CLKO output. The clock signal is generated by the frequency +multiplication of 25 MHz crystal connected to the PHY. For details, please see +the figure below. + +.. figure:: img/esp32-ethernet-kit-rmii-clk-from-phy.jpg + :align: center + :alt: RMII Clock from IP101GRI PHY + :figclass: align-center + + RMII Clock from IP101GRI PHY + +Please note that the PHY is reset on power up by pulling the RESET_N signal +down with a resistor. ESP32 should assert RESET_N high with GPIO5 to enable +PHY. Only this can ensure the power-up of system. Otherwise ESP32 may enter +download mode (when the clock signal of REF_CLK_50M is at a high logic level +during the GPIO0 power-up sampling phase). + + +RMII Clock Sourced Internally from ESP32's APLL +""""""""""""""""""""""""""""""""""""""""""""""" + +Another option is to source the RMII Clock from internal ESP32 APLL, see +figure below. The clock signal coming from GPIO0 is first inverted, to account +for transmission line delay, and then supplied to the PHY. + +.. figure:: img/esp32-ethernet-kit-rmii-clk-to-phy.jpg + :align: center + :alt: RMII Clock from ESP Internal APLL + :figclass: align-center + + RMII Clock from ESP Internal APLL + +To implement this option, users need to remove or add some RC components on +the board. For details please refer to +`ESP32-Ethernet-Kit V1.2 Ethernet board (A) Schematic `_, +sheet 2, location D2. Please note that if the APLL is already used for other +purposes (e.g. I2S peripheral), then you have no choice but use an external +RMII clock. + + +GPIO Allocation +--------------- + +This section describes allocation of ESP32 GPIOs to specific interfaces or +functions of the ESP32-Ethernet-Kit. + + +IP101GRI (PHY) Interface +^^^^^^^^^^^^^^^^^^^^^^^^ + +The allocation of the ESP32 (MAC) pins to IP101GRI (PHY) is shown in the table +below. Implementation of ESP32-Ethernet-Kit defaults to Reduced +Media-Independent Interface (RMII). + +==== ================ =============== +No. ESP32 Pin (MAC) IP101GRI (PHY) +==== ================ =============== +*RMII Interface* +--------------------------------------- + 1 GPIO21 TX_EN + 2 GPIO19 TXD[0] + 3 GPIO22 TXD[1] + 4 GPIO25 RXD[0] + 5 GPIO26 RXD[1] + 6 GPIO27 CRS_DV + 7 GPIO0 REF_CLK +---- ---------------- --------------- +*Serial Management Interface* +--------------------------------------- + 8 GPIO23 MDC + 9 GPIO18 MDIO +---- ---------------- --------------- +*PHY Reset* +--------------------------------------- +10 GPIO5 Reset_N +==== ================ =============== + +.. note:: + + The allocation of all pins under the ESP32's *RMII Interface* is fixed and + cannot be changed either through IO MUX or GPIO Matrix. REF_CLK can only + be selected from GPIO0, GPIO16 or GPIO17 and it can not be changed through + GPIO Matrix. + + +GPIO Header 1 +^^^^^^^^^^^^^ + +This header exposes some GPIOs that are not used elsewhere on the +ESP32-Ethernet-Kit. + +==== ================ +No. ESP32 Pin +==== ================ + 1 GPIO32 + 2 GPIO33 + 3 GPIO34 + 4 GPIO35 + 5 GPIO36 + 6 GPIO39 +==== ================ + + +GPIO Header 2 +^^^^^^^^^^^^^ + +This header contains GPIOs that may be used for other purposes depending on +scenarios described in column "Comments". + +==== ========== ==================== +No. ESP32 Pin Comments +==== ========== ==================== + 1 GPIO17 See note 1 + 2 GPIO16 See note 1 + 3 GPIO4 + 4 GPIO2 + 5 GPIO13 See note 2 + 6 GPIO12 See note 2 + 7 GPIO15 See note 2 + 8 GPIO14 See note 2 + 9 GND Ground +10 3V3 3.3 V power supply +==== ========== ==================== + +.. note:: + + 1. The ESP32 pins GPIO16 and GPIO17 are not broken out to the + ESP32-WROVER-E module and therefore not available for use. If you need + to use these pins, please solder a module without PSRAM memory inside, + e.g. the ESP32-WROOM-32D or ESP32-SOLO-1. + + 2. Functionality depends on the settings of the `Function Switch`_. + + +GPIO Allocation Summary +^^^^^^^^^^^^^^^^^^^^^^^ + +.. csv-table:: + :header: ESP32-WROVER-E,IP101GRI,UART,JTAG,GPIO,Comments + + S_VP,,,,IO36, + S_VN,,,,IO39, + IO34,,,,IO34, + IO35,,,,IO35, + IO32,,,,IO32, + IO33,,,,IO33, + IO25,RXD[0],,,, + IO26,RXD[1],,,, + IO27,CRS_DV,,,, + IO14,,,TMS,IO14, + IO12,,,TDI,IO12, + IO13,,,TCK,IO13, + IO15,,,TDO,IO15, + IO2,,,,IO2, + IO0,REF_CLK,,,,See note 1 + IO4,,,,IO4, + IO16,,,,IO16 (NC),See note 2 + IO17,,,,IO17 (NC),See note 2 + IO5,Reset_N,,,,See note 1 + IO18,MDIO,,,, + IO19,TXD[0],,,, + IO21,TX_EN,,,, + RXD0,,RXD,,, + TXD0,,TXD,,, + IO22,TXD[1],,,, + IO23,MDC,,,, + +.. note:: + + 1. To prevent the power-on state of the GPIO0 from being affected by the + clock output on the PHY side, the RESET_N signal to PHY defaults to + low, turning the clock output off. After power-on you can control + RESET_N with GPIO5 to turn the clock output on. See also + `RMII Clock Sourced Externally by PHY`_. For PHYs that cannot turn off + the clock output through RESET_N, it is recommended to use a crystal + module that can be disabled/enabled externally. Similarly like when + using RESET_N, the oscillator module should be disabled by default and + turned on by ESP32 after power-up. For a reference design please see + `ESP32-Ethernet-Kit V1.2 Ethernet board (A) Schematic `_. + + 2. The ESP32 pins GPIO16 and GPIO17 are not broken out to the + ESP32-WROVER-E module and therefore not available for use. If you need + to use these pins, please solder a module without PSRAM memory inside, + e.g. the ESP32-WROOM-32D or ESP32-SOLO-1. + +System requirements +------------------- + +Prerequisites +------------- + +Espressif HAL requires WiFi and Bluetooth binary blobs in order work. Run the command +below to retrieve those files. + +.. code-block:: console + + west blobs fetch hal_espressif + +.. note:: + + It is recommended running the command above after :file:`west update`. + +Building & Flashing +------------------- + +Build and flash applications as usual (see :ref:`build_an_application` and +:ref:`application_run` for more details). + +.. zephyr-app-commands:: + :zephyr-app: samples/hello_world + :board: esp32_ethernet_kit + :goals: build + +The usual ``flash`` target will work with the ``esp32_ethernet_kit`` board +configuration. Here is an example for the :ref:`hello_world` +application. + +.. zephyr-app-commands:: + :zephyr-app: samples/hello_world + :board: esp32_ethernet_kit + :goals: flash + +Open the serial monitor using the following command: + +.. code-block:: shell + + west espressif monitor + +After the board has automatically reset and booted, you should see the following +message in the monitor: + +.. code-block:: console + + ***** Booting Zephyr OS vx.x.x-xxx-gxxxxxxxxxxxx ***** + Hello World! esp32_ethernet_kit + +Debugging +--------- + +As with much custom hardware, the ESP32 modules require patches to +OpenOCD that are not upstreamed yet. Espressif maintains their own fork of +the project. The custom OpenOCD can be obtained at `OpenOCD ESP32`_ + +The Zephyr SDK uses a bundled version of OpenOCD by default. You can overwrite that behavior by adding the +``-DOPENOCD= -DOPENOCD_DEFAULT_PATH=`` +parameter when building. + +Here is an example for building the :ref:`hello_world` application. + +.. zephyr-app-commands:: + :zephyr-app: samples/hello_world + :board: esp32_ethernet_kit + :goals: build flash + :gen-args: -DOPENOCD= -DOPENOCD_DEFAULT_PATH= + +You can debug an application in the usual way. Here is an example for the :ref:`hello_world` application. + +.. zephyr-app-commands:: + :zephyr-app: samples/hello_world + :board: esp32_ethernet_kit + :goals: debug + +Related Documents +----------------- + +* `ESP32-Ethernet-Kit V1.2 Ethernet Board (A) Schematic `_ (PDF) +* `ESP32-Ethernet-Kit PoE Board (B) Schematic `_ (PDF) +* `ESP32-Ethernet-Kit V1.2 Ethernet Board (A) PCB Layout `_ (PDF) +* `ESP32-Ethernet-Kit PoE Board (B) PCB Layout `_ (PDF) +* `ESP32 Datasheet `_ (PDF) +* `ESP32-WROVER-E Datasheet `_ (PDF) +* `OpenOCD ESP32 `_ diff --git a/boards/xtensa/esp32_ethernet_kit/esp32_ethernet_kit-pinctrl.dtsi b/boards/xtensa/esp32_ethernet_kit/esp32_ethernet_kit-pinctrl.dtsi new file mode 100644 index 00000000000..0d2f7c3ee63 --- /dev/null +++ b/boards/xtensa/esp32_ethernet_kit/esp32_ethernet_kit-pinctrl.dtsi @@ -0,0 +1,35 @@ +/* + * Copyright (c) 2022 Grant Ramsay + * + * SPDX-License-Identifier: Apache-2.0 + */ + +#include +#include +#include + +&pinctrl { + + uart0_default: uart0_default { + group1 { + pinmux = ; + }; + group2 { + pinmux = ; + bias-pull-up; + }; + }; + + spim2_default: spim2_default { + group1 { + pinmux = , + , + ; + }; + group2 { + pinmux = ; + output-low; + }; + }; + +}; diff --git a/boards/xtensa/esp32_ethernet_kit/esp32_ethernet_kit.dts b/boards/xtensa/esp32_ethernet_kit/esp32_ethernet_kit.dts new file mode 100644 index 00000000000..4ad49f3788f --- /dev/null +++ b/boards/xtensa/esp32_ethernet_kit/esp32_ethernet_kit.dts @@ -0,0 +1,116 @@ +/* + * Copyright (c) 2022 Grant Ramsay + * + * SPDX-License-Identifier: Apache-2.0 + */ +/dts-v1/; + +#include +#include "esp32_ethernet_kit-pinctrl.dtsi" + +/ { + model = "esp32"; + compatible = "espressif,esp32"; + + aliases { + uart-0 = &uart0; + watchdog0 = &wdt0; + }; + + chosen { + zephyr,sram = &sram0; + zephyr,console = &uart0; + zephyr,shell-uart = &uart0; + zephyr,flash = &flash0; + }; +}; + +&cpu0 { + clock-frequency = ; +}; + +&cpu1 { + clock-frequency = ; +}; + +&uart0 { + status = "okay"; + current-speed = <115200>; + pinctrl-0 = <&uart0_default>; + pinctrl-names = "default"; +}; + +&gpio0 { + status = "okay"; +}; + +&gpio1 { + status = "okay"; +}; + +&spi2 { + #address-cells = <1>; + #size-cells = <0>; + status = "okay"; + pinctrl-0 = <&spim2_default>; + pinctrl-names = "default"; +}; + +&timer0 { + status = "okay"; +}; + +&timer1 { + status = "okay"; +}; + +&timer2 { + status = "okay"; +}; + +&timer3 { + status = "okay"; +}; + +&trng0 { + status = "okay"; +}; + +&flash0 { + status = "okay"; + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + /* Reserve 60kB for the bootloader */ + boot_partition: partition@1000 { + label = "mcuboot"; + reg = <0x00001000 0x0000F000>; + read-only; + }; + + /* Reserve 1024kB for the application in slot 0 */ + slot0_partition: partition@10000 { + label = "image-0"; + reg = <0x00010000 0x00100000>; + }; + + /* Reserve 1024kB for the application in slot 1 */ + slot1_partition: partition@110000 { + label = "image-1"; + reg = <0x00110000 0x00100000>; + }; + + /* Reserve 256kB for the scratch partition */ + scratch_partition: partition@210000 { + label = "image-scratch"; + reg = <0x00210000 0x00040000>; + }; + + storage_partition: partition@250000 { + label = "storage"; + reg = <0x00250000 0x00006000>; + }; + }; +}; diff --git a/boards/xtensa/esp32_ethernet_kit/esp32_ethernet_kit.yaml b/boards/xtensa/esp32_ethernet_kit/esp32_ethernet_kit.yaml new file mode 100644 index 00000000000..e80b9a07a64 --- /dev/null +++ b/boards/xtensa/esp32_ethernet_kit/esp32_ethernet_kit.yaml @@ -0,0 +1,16 @@ +identifier: esp32_ethernet_kit +name: ESP32 ETHERNET KIT +type: mcu +arch: xtensa +toolchain: + - zephyr +supported: + - gpio + - watchdog + - uart + - nvs + - pwm +testing: + ignore_tags: + - net + - bluetooth diff --git a/boards/xtensa/esp32_ethernet_kit/esp32_ethernet_kit_defconfig b/boards/xtensa/esp32_ethernet_kit/esp32_ethernet_kit_defconfig new file mode 100644 index 00000000000..8e04ae55dc7 --- /dev/null +++ b/boards/xtensa/esp32_ethernet_kit/esp32_ethernet_kit_defconfig @@ -0,0 +1,23 @@ +# SPDX-License-Identifier: Apache-2.0 + +CONFIG_XTENSA_RESET_VECTOR=n + +CONFIG_BOARD_ESP32_ETHERNET_KIT=y +CONFIG_SOC_ESP32=y + +CONFIG_MAIN_STACK_SIZE=2048 + +CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=240000000 + +CONFIG_CONSOLE=y +CONFIG_SERIAL=y +CONFIG_UART_CONSOLE=y + +CONFIG_XTENSA_USE_CORE_CRT1=n + +CONFIG_GPIO=y + +CONFIG_GEN_ISR_TABLES=y +CONFIG_GEN_IRQ_VECTOR_TABLE=n + +CONFIG_CLOCK_CONTROL=y diff --git a/boards/xtensa/esp32_ethernet_kit/support/openocd.cfg b/boards/xtensa/esp32_ethernet_kit/support/openocd.cfg new file mode 100644 index 00000000000..338e6e4e6ea --- /dev/null +++ b/boards/xtensa/esp32_ethernet_kit/support/openocd.cfg @@ -0,0 +1,5 @@ +set ESP_RTOS none +set ESP32_ONLYCPU 1 + +source [find interface/ftdi/esp32_devkitj_v1.cfg] +source [find target/esp32.cfg] diff --git a/samples/arch/smp/pktqueue/sample.yaml b/samples/arch/smp/pktqueue/sample.yaml index d19d440ce31..bd74ff56d69 100644 --- a/samples/arch/smp/pktqueue/sample.yaml +++ b/samples/arch/smp/pktqueue/sample.yaml @@ -15,4 +15,5 @@ tests: sample.smp.pktqueue: tags: introduction filter: (CONFIG_MP_NUM_CPUS > 1) - platform_exclude: esp32 esp_wrover_kit heltec_wifi_lora32_v2 odroid_go olimex_esp32_evb + platform_exclude: esp32 esp_wrover_kit esp32_ethernet_kit + heltec_wifi_lora32_v2 odroid_go olimex_esp32_evb