boards: xtensa: odroid_go: Convert to v2

Converts the board to hwmv2

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
This commit is contained in:
Sylvio Alves
2024-02-25 18:09:57 -03:00
committed by Carles Cufi
parent b8340b0109
commit c1067c16d2
16 changed files with 152 additions and 22 deletions

View File

@@ -0,0 +1,10 @@
.. _boards-hardkernel:
HardKernel
##########
.. toctree::
:maxdepth: 1
:glob:
**/*

View File

@@ -0,0 +1,6 @@
# Copyright (c) 2024 Espressif Systems (Shanghai) Co., Ltd.
# SPDX-License-Identifier: Apache-2.0
config BOARD_ODROID_GO
select SOC_ESP32_PROCPU if BOARD_ODROID_GO_ESP32_PROCPU
select SOC_ESP32_APPCPU if BOARD_ODROID_GO_ESP32_APPCPU

View File

@@ -3,9 +3,7 @@
# Copyright (c) 2019 Yannis Damigos
# SPDX-License-Identifier: Apache-2.0
config BOARD
default "odroid_go"
depends on BOARD_ODROID_GO
if BOARD_ODROID_GO_ESP32_PROCPU
config DISK_DRIVER_SDMMC
default y if DISK_ACCESS
@@ -13,9 +11,13 @@ config DISK_DRIVER_SDMMC
config SPI
default y if DISK_DRIVER_SDMMC
config ENTROPY_GENERATOR
config ESP_SPIRAM
default y
choice SPIRAM_TYPE
default SPIRAM_TYPE_ESPPSRAM64
endchoice
config HEAP_MEM_POOL_ADD_SIZE_BOARD
int
default 65535 if WIFI && BT
@@ -26,3 +28,12 @@ config HEAP_MEM_POOL_ADD_SIZE_BOARD
choice BT_HCI_BUS_TYPE
default BT_ESP32 if BT
endchoice
endif # BOARD_ODROID_GO_ESP32_PROCPU
if BOARD_ODROID_GO_ESP32_APPCPU
config HEAP_MEM_POOL_ADD_SIZE_BOARD
default 4096
endif # BOARD_ODROID_GO_ESP32_APPCPU

View File

@@ -4,9 +4,4 @@
# SPDX-License-Identifier: Apache-2.0
config BOARD_ODROID_GO
bool "ODROID-GO Game Kit"
depends on SOC_SERIES_ESP32
choice SOC_PART_NUMBER
default SOC_ESP32_WROVER_E_N16R2
endchoice
select SOC_ESP32_WROVER_E_N16R2

View File

@@ -0,0 +1,5 @@
board:
name: odroid_go
vendor: hardkernel
socs:
- name: esp32

View File

Before

Width:  |  Height:  |  Size: 38 KiB

After

Width:  |  Height:  |  Size: 38 KiB

View File

@@ -150,9 +150,9 @@ Zephyr build. Output is structured by the domain subdirectories:
build/
├── hello_world
   └── zephyr
   ├── zephyr.elf
   └── zephyr.bin
└── zephyr
├── zephyr.elf
└── zephyr.bin
├── mcuboot
│ └── zephyr
│ ├── zephyr.elf
@@ -184,7 +184,7 @@ Build and flash applications as usual (see :ref:`build_an_application` and
.. zephyr-app-commands::
:zephyr-app: samples/hello_world
:board: odroid_go
:board: odroid_go/esp32/procpu
:goals: build
The usual ``flash`` target will work with the ``odroid_go`` board
@@ -193,7 +193,7 @@ application.
.. zephyr-app-commands::
:zephyr-app: samples/hello_world
:board: odroid_go
:board: odroid_go/esp32/procpu
:goals: flash
Open the serial monitor using the following command:
@@ -225,7 +225,7 @@ Here is an example for building the :ref:`hello_world` application.
.. zephyr-app-commands::
:zephyr-app: samples/hello_world
:board: odroid_go
:board: odroid_go/esp32/procpu
:goals: build flash
:gen-args: -DOPENOCD=<path/to/bin/openocd> -DOPENOCD_DEFAULT_PATH=<path/to/openocd/share/openocd/scripts>
@@ -233,7 +233,7 @@ You can debug an application in the usual way. Here is an example for the :ref:`
.. zephyr-app-commands::
:zephyr-app: samples/hello_world
:board: odroid_go
:board: odroid_go/esp32/procpu
:goals: debug
References

View File

@@ -0,0 +1,74 @@
/*
* Copyright (c) 2023 Espressif Systems (Shanghai) Co., Ltd.
*
* SPDX-License-Identifier: Apache-2.0
*/
/dts-v1/;
#include <espressif/esp32/esp32_appcpu.dtsi>
/ {
model = "ODROID-GO Game Kit APPCPU";
compatible = "hardkernel,odroid_go", "espressif,esp32";
chosen {
zephyr,sram = &sram0;
zephyr,ipc_shm = &shm0;
zephyr,ipc = &ipm0;
};
};
&cpu0 {
clock-frequency = <ESP32_CLK_CPU_240M>;
};
&cpu1 {
clock-frequency = <ESP32_CLK_CPU_240M>;
};
&ipm0 {
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>;
};
};
};

View File

@@ -0,0 +1,27 @@
identifier: odroid_go/esp32/appcpu
name: ODROID-GO
type: mcu
arch: xtensa
toolchain:
- zephyr
supported:
- uart
testing:
ignore_tags:
- net
- bluetooth
- flash
- cpp
- posix
- watchdog
- logging
- kernel
- pm
- gpio
- crypto
- eeprom
- heap
- cmsis_rtos
- jwt
- zdsp
vendor: hardkernel

View File

@@ -0,0 +1,5 @@
# SPDX-License-Identifier: Apache-2.0
CONFIG_MAIN_STACK_SIZE=2048
CONFIG_CLOCK_CONTROL=y
CONFIG_MINIMAL_LIBC=y

View File

@@ -10,7 +10,7 @@
#include <zephyr/dt-bindings/input/input-event-codes.h>
/ {
model = "ODROID-GO Game Kit";
model = "ODROID-GO Game Kit PROCPU";
compatible = "hardkernel,odroid_go", "espressif,esp32";
chosen {

View File

@@ -1,4 +1,4 @@
identifier: odroid_go
identifier: odroid_go/esp32/procpu
name: ODROID-GO
type: mcu
arch: xtensa

View File

@@ -1,8 +1,5 @@
# SPDX-License-Identifier: Apache-2.0
CONFIG_BOARD_ODROID_GO=y
CONFIG_SOC_SERIES_ESP32=y
CONFIG_MAIN_STACK_SIZE=2048
CONFIG_CONSOLE=y