This is an automated email from the ASF dual-hosted git repository. xiaoxiang781216 pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/nuttx.git
commit aa8ce27d35554a0a2df00a3ee95c57413e4aa225 Author: Justin Hammond <[email protected]> AuthorDate: Sun Aug 16 18:03:00 2026 +0800 boards/risc-v/eic7700x: Add the ESWIN EIC7700 EVB board. ESWIN's own evaluation board for this SoC. Where the StarPro64 is a single board computer built around the chip, the EVB brings out most of the SoC's interfaces. Everything shared with the StarPro64 is already in the common directory, so this carries the board's own facts: which UART reaches which connector, which pads carry the boot straps, where its memory sits, and a configuration starting from the same place the StarPro64's does. The summary tables on sheet 3 of both boards' schematics are inherited from ESWIN's reference design and describe that design rather than either board. On this board the console is UART0 through the FT4232 bridge, UART1 goes to the M.2 socket and a header, and UART2 reaches the RS232 port. The documentation page follows the board template: a photograph, the board's features, the console and its port on the FT4232 bridge, power, the build and TFTP boot procedure, and what NuttX drives so far. Boots to an NSH prompt over UART0 with all four harts running. Assisted-by: Claude:claude-opus-5 Signed-off-by: Justin Hammond <[email protected]> --- .../eic7700x/boards/eic7700-evb/eic7700-evb.jpg | Bin 0 -> 465585 bytes .../risc-v/eic7700x/boards/eic7700-evb/index.rst | 154 +++++++++++++++++++++ boards/Kconfig | 21 +++ boards/risc-v/eic7700x/eic7700-evb/Kconfig | 0 .../eic7700x/eic7700-evb/configs/nsh/defconfig | 119 ++++++++++++++++ boards/risc-v/eic7700x/eic7700-evb/include/board.h | 70 ++++++++++ .../eic7700x/eic7700-evb/include/board_memorymap.h | 85 ++++++++++++ boards/risc-v/eic7700x/eic7700-evb/src/.gitignore | 2 + boards/risc-v/eic7700x/eic7700-evb/src/Make.defs | 27 ++++ .../risc-v/eic7700x/eic7700-evb/src/board_config.h | 47 +++++++ .../eic7700x/eic7700-evb/src/eic7700x_bringup.c | 50 +++++++ 11 files changed, 575 insertions(+) diff --git a/Documentation/platforms/risc-v/eic7700x/boards/eic7700-evb/eic7700-evb.jpg b/Documentation/platforms/risc-v/eic7700x/boards/eic7700-evb/eic7700-evb.jpg new file mode 100644 index 00000000000..9561a901c42 Binary files /dev/null and b/Documentation/platforms/risc-v/eic7700x/boards/eic7700-evb/eic7700-evb.jpg differ diff --git a/Documentation/platforms/risc-v/eic7700x/boards/eic7700-evb/index.rst b/Documentation/platforms/risc-v/eic7700x/boards/eic7700-evb/index.rst new file mode 100644 index 00000000000..c1f4af889b2 --- /dev/null +++ b/Documentation/platforms/risc-v/eic7700x/boards/eic7700-evb/index.rst @@ -0,0 +1,154 @@ +================= +ESWIN EIC7700 EVB +================= + +.. tags:: chip:eic7700x, arch:risc-v, vendor:eswin, experimental + +.. figure:: eic7700-evb.jpg + :align: center + :alt: The ESWIN EIC7700 EVB, a development board carrying the EIC7700X SoC + + ESWIN EIC7700 EVB + +The `EIC7700 EVB <https://www.eswincomputing.com/en/products/index/36.html>`_ +is ESWIN's own evaluation board for the +:doc:`EIC7700X <../../index>` SoC. Where the +:doc:`PINE64 StarPro64 <../starpro64/index>` is a single board computer built +around the chip, the EVB brings out most of the SoC's interfaces, so it is the +board to develop drivers on. + +Features +======== + +* ESWIN EIC7700X, 4 x RV64GC 1.4 GHz RISC-V cores +* 16 GB LPDDR5 +* eMMC, microSD and SPI NOR flash, the last holding the boot firmware +* 2 x Ethernet (GMAC, RGMII) +* 2 x USB 3.0, host and device capable +* HDMI output, with CEC +* PCIe 3.0 slot, and two M.2 slots, for SATA and for a WiFi and Bluetooth + module +* USB serial console, RS232 on a DB9, and further UARTs on the headers +* Expansion headers carrying GPIO, I2C, SPI and PWM +* PWM fan header + +.. warning:: + + This port is under development and drives a subset of the board. + `Peripheral Support`_ below records what it drives. + +Serial Console +============== + +The console is UART0 at **115200 8N1**. It is wired to the on-board FT4232 +USB bridge, so a single USB cable carries it and no separate USB serial +adapter is needed. The bridge presents four ports, of which UART0 is the +third; on Linux that is usually ``/dev/ttyUSB2``, the first of the four +being the JTAG interface: + +.. code:: console + + $ screen /dev/ttyUSB2 115200 + +Buttons and LEDs +================ + +The board has four LEDs on GPIO lines 107 to 110 and one push button, ``OK``, +on GPIO line 6. NuttX does not drive any of them yet. + +Power Supply +============ + +The board is powered through its barrel jack. The core rails, including the +NPU rail, are set by regulators on I2C bus 1, which NuttX leaves alone: the +firmware has already configured them by the time NuttX starts, and writing to +them changes a core voltage. + +RISC-V Toolchain +================ + +Install `xPack GNU RISC-V Embedded GCC (riscv-none-elf) +<https://github.com/xpack-dev-tools/riscv-none-elf-gcc-xpack/releases>`_ and +add its ``bin`` directory to ``PATH``, as described for the +:doc:`PINE64 StarPro64 <../starpro64/index>`. + +Building NuttX +============== + +Configure and build: + +.. code:: console + + $ cd nuttx + $ tools/configure.sh eic7700-evb:nsh + $ make + +Then build the applications filesystem and package it with the kernel: + +.. code:: console + + $ make export + $ pushd ../apps + $ tools/mkimport.sh -z -x ../nuttx/nuttx-export-*.tar.gz + $ make import + $ popd + $ boards/risc-v/eic7700x/common/tools/mkimage.sh + +The image is the kernel, then padding, then a RAM disk holding the +applications. Use the script rather than padding by hand: the RAM disk is +found at run time by searching memory for its header, and that search runs +after BSS has been cleared, so the disk has to start above ``_ebss`` or it is +zeroed before anything looks for it. The script reads ``_ebss`` from the +kernel and pads to suit. + +The result is ``Image-eic7700-evb``. + +Booting NuttX +============= + +The board boots over TFTP from U-Boot, as the +:doc:`PINE64 StarPro64 <../starpro64/index>` does. Copy +``Image-eic7700-evb`` and the device tree to the TFTP server: + +.. code:: console + + $ wget https://github.com/lupyuen/nuttx-starpro64/raw/refs/heads/main/eic7700-evb.dtb + $ scp Image-eic7700-evb eic7700-evb.dtb tftpserver:/tftpfolder/ + +Interrupt U-Boot with Ctrl-C at power on and boot the image: + +.. code:: console + + # Change to your TFTP Server + $ setenv tftp_server 192.168.x.x + $ saveenv + $ dhcp ${kernel_addr_r} ${tftp_server}:Image-eic7700-evb + $ tftpboot ${fdt_addr_r} ${tftp_server}:eic7700-evb.dtb + $ fdt addr ${fdt_addr_r} + $ booti ${kernel_addr_r} - ${fdt_addr_r} + +NuttShell appears on the console. + +Configurations +============== + +.. code:: console + + $ tools/configure.sh eic7700-evb:<config-name> + +nsh +--- + +NuttShell on UART0 at 115200 8N1, with the RAM disk mounted and ``/proc`` +available. Built-in applications are supported; none are enabled. + +Peripheral Support +================== + +NuttX for the EIC7700 EVB supports these peripherals: + +======================== ======= ===== +Peripheral Support NOTES +======================== ======= ===== +UART Yes +======================== ======= ===== diff --git a/boards/Kconfig b/boards/Kconfig index 03d3c64674e..31653133202 100644 --- a/boards/Kconfig +++ b/boards/Kconfig @@ -2428,6 +2428,23 @@ config ARCH_BOARD_EIC7700X_STARPRO64 pad, drives the system state LED, GPIO63 is unconnected, the UART3 pads carry I2C8, and the UART4 pads go nowhere. +config ARCH_BOARD_EIC7700X_EVB + bool "ESWIN EIC7700 EVB" + depends on ARCH_CHIP_EIC7700X + ---help--- + ESWIN's own evaluation board for the EIC7700X, which U-Boot + identifies as "ESWIN EIC7700 EVB" and whose schematic calls it + ESWIN-EIC7700FG-LP4X-A1. + + UART0 is the console, on the FT4232 USB-C serial bridge. UART1 + goes to the Bluetooth M.2 Key-E connector, CTS and RTS included, + and is also broken out on the six pin header J97. UART2 goes to + the RS232 transceiver and its DB9 connector. UART3 and UART4 + are unused. + + The four boot select pads, GPIO107 to GPIO110, each drive a + system LED once the straps have been sampled. + config ARCH_BOARD_S32K118EVB bool "NXP S32K118EVB" depends on ARCH_CHIP_S32K118 @@ -4040,6 +4057,7 @@ config ARCH_BOARD default "ox64" if ARCH_BOARD_BL808_OX64 default "milkv_duos" if ARCH_BOARD_SG2000_MILKV_DUOS default "starpro64" if ARCH_BOARD_EIC7700X_STARPRO64 + default "eic7700-evb" if ARCH_BOARD_EIC7700X_EVB default "sabre-6quad" if ARCH_BOARD_SABRE_6QUAD default "a2g-tc397-5v-tft" if ARCH_BOARD_A2G_TC397_5V_TFT default "triboard_tc4x9_com" if ARCH_BOARD_TRIBOARD_TC4X9_COM @@ -5139,6 +5157,9 @@ endif if ARCH_BOARD_EIC7700X_STARPRO64 source "boards/risc-v/eic7700x/starpro64/Kconfig" endif +if ARCH_BOARD_EIC7700X_EVB +source "boards/risc-v/eic7700x/eic7700-evb/Kconfig" +endif if ARCH_BOARD_ESP32C3_LEGACY_DEVKIT source "boards/risc-v/esp32c3-legacy/esp32c3-legacy-devkit/Kconfig" endif diff --git a/boards/risc-v/eic7700x/eic7700-evb/Kconfig b/boards/risc-v/eic7700x/eic7700-evb/Kconfig new file mode 100644 index 00000000000..e69de29bb2d diff --git a/boards/risc-v/eic7700x/eic7700-evb/configs/nsh/defconfig b/boards/risc-v/eic7700x/eic7700-evb/configs/nsh/defconfig new file mode 100644 index 00000000000..dd8d2aaf194 --- /dev/null +++ b/boards/risc-v/eic7700x/eic7700-evb/configs/nsh/defconfig @@ -0,0 +1,119 @@ +# +# This file is autogenerated: PLEASE DO NOT EDIT IT. +# +# You can use "make menuconfig" to make any modifications to the installed .config file. +# You can then do "make savedefconfig" to generate a new defconfig file that includes your +# modifications. +# +# CONFIG_DISABLE_OS_API is not set +# CONFIG_NSH_DISABLE_LOSMART is not set +CONFIG_16550_ADDRWIDTH=0 +CONFIG_16550_DLF_SIZE=4 +CONFIG_16550_REGINCR=4 +CONFIG_16550_UART0=y +CONFIG_16550_UART0_BASE=0x50900000 +CONFIG_16550_UART0_CLOCK=200000000 +CONFIG_16550_UART0_IRQ=125 +CONFIG_16550_UART0_SERIAL_CONSOLE=y +CONFIG_16550_UART1=y +CONFIG_16550_UART1_BASE=0x50910000 +CONFIG_16550_UART1_CLOCK=200000000 +CONFIG_16550_UART1_IRQ=126 +CONFIG_16550_UART2=y +CONFIG_16550_UART2_BASE=0x50920000 +CONFIG_16550_UART2_CLOCK=200000000 +CONFIG_16550_UART2_IRQ=127 +CONFIG_16550_UART=y +CONFIG_16550_WAIT_LCR=y +CONFIG_ARCH="risc-v" +CONFIG_ARCH_ADDRENV=y +CONFIG_ARCH_BOARD="eic7700-evb" +CONFIG_ARCH_BOARD_COMMON=y +CONFIG_ARCH_BOARD_EIC7700X_EVB=y +CONFIG_ARCH_CHIP="eic7700x" +CONFIG_ARCH_CHIP_EIC7700X=y +CONFIG_ARCH_DATA_NPAGES=128 +CONFIG_ARCH_DATA_VBASE=0xC0100000 +CONFIG_ARCH_HEAP_NPAGES=128 +CONFIG_ARCH_HEAP_VBASE=0xC0200000 +CONFIG_ARCH_INTERRUPTSTACK=2048 +CONFIG_ARCH_KERNEL_STACKSIZE=3072 +CONFIG_ARCH_PGPOOL_MAPPING=y +CONFIG_ARCH_PGPOOL_PBASE=0xA8400000 +CONFIG_ARCH_PGPOOL_SIZE=266338304 +CONFIG_ARCH_PGPOOL_VBASE=0xA8400000 +CONFIG_ARCH_RISCV=y +CONFIG_ARCH_STACKDUMP=y +CONFIG_ARCH_TEXT_NPAGES=128 +CONFIG_ARCH_TEXT_VBASE=0xC0000000 +CONFIG_ARCH_USE_MMU=y +CONFIG_ARCH_USE_MPU=y +CONFIG_ARCH_USE_S_MODE=y +CONFIG_BINFMT_ELF_EXECUTABLE=y +CONFIG_BOARDCTL_ROMDISK=y +CONFIG_BOARD_LOOPSPERMSEC=1120 +CONFIG_BUILD_KERNEL=y +CONFIG_DEBUG_ASSERTIONS=y +CONFIG_DEBUG_ASSERTIONS_EXPRESSION=y +CONFIG_DEBUG_FEATURES=y +CONFIG_DEBUG_FS=y +CONFIG_DEBUG_FS_ERROR=y +CONFIG_DEBUG_FULLOPT=y +CONFIG_DEBUG_MM=y +CONFIG_DEBUG_MM_ERROR=y +CONFIG_DEBUG_SCHED=y +CONFIG_DEBUG_SYMBOLS=y +CONFIG_DEFAULT_TASK_STACKSIZE=8192 +CONFIG_ELF=y +CONFIG_ELF_STACKSIZE=2048 +CONFIG_EXAMPLES_HELLO=m +CONFIG_FS_PROCFS=y +CONFIG_FS_ROMFS=y +CONFIG_IDLETHREAD_STACKSIZE=3072 +CONFIG_INIT_FILEPATH="/system/bin/init" +CONFIG_INIT_MOUNT=y +CONFIG_INIT_MOUNT_FLAGS=0x1 +CONFIG_INIT_MOUNT_TARGET="/system/bin" +CONFIG_INTELHEX_BINARY=y +CONFIG_IRQ_WORK_STACKSIZE=2048 +CONFIG_LIBC_ENVPATH=y +CONFIG_LIBC_EXECFUNCS=y +CONFIG_LIBC_MEMSET_64BIT=y +CONFIG_LIBC_MEMSET_OPTSPEED=y +CONFIG_LIBC_PERROR_STDOUT=y +CONFIG_LIBC_STRERROR=y +CONFIG_MM_PGALLOC=y +CONFIG_NFILE_DESCRIPTORS_PER_BLOCK=6 +CONFIG_NSH_FILEIOSIZE=512 +CONFIG_NSH_FILE_APPS=y +CONFIG_NSH_READLINE=y +CONFIG_PATH_INITIAL="/system/bin" +CONFIG_POSIX_SPAWN_DEFAULT_STACKSIZE=2048 +CONFIG_RAMLOG=y +CONFIG_RAMLOG_BUFSIZE=32768 +CONFIG_RAMLOG_SYSLOG=y +CONFIG_RAM_SIZE=1006632960 +CONFIG_RAM_START=0x80200000 +CONFIG_RAW_BINARY=y +CONFIG_READLINE_CMD_HISTORY=y +CONFIG_RR_INTERVAL=200 +CONFIG_SCHED_BACKTRACE=y +CONFIG_SCHED_CPULOAD_SYSCLK=y +CONFIG_SCHED_HAVE_PARENT=y +CONFIG_SCHED_LPWORK=y +CONFIG_SCHED_WAITPID=y +CONFIG_SERIAL_UART_ARCH_MMIO=y +CONFIG_SMP=y +CONFIG_STACKCHECK_MARGIN=128 +CONFIG_STACK_COLORATION=y +CONFIG_START_MONTH=12 +CONFIG_START_YEAR=2021 +CONFIG_SYMTAB_ORDEREDBYNAME=y +CONFIG_SYSLOG_DEFAULT=y +CONFIG_SYSLOG_MAX_CHANNELS=2 +CONFIG_SYSTEM_NSH=y +CONFIG_SYSTEM_NSH_PROGNAME="init" +CONFIG_TESTING_GETPRIME=y +CONFIG_TESTING_OSTEST=y +CONFIG_TESTING_SMP=y +CONFIG_USEC_PER_TICK=1000 diff --git a/boards/risc-v/eic7700x/eic7700-evb/include/board.h b/boards/risc-v/eic7700x/eic7700-evb/include/board.h new file mode 100644 index 00000000000..791c948206d --- /dev/null +++ b/boards/risc-v/eic7700x/eic7700-evb/include/board.h @@ -0,0 +1,70 @@ +/**************************************************************************** + * boards/risc-v/eic7700x/eic7700-evb/include/board.h + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. The + * ASF licenses this file to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance with the + * License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations + * under the License. + * + ****************************************************************************/ + +#ifndef __BOARDS_RISCV_EIC7700X_EIC7700_EVB_INCLUDE_BOARD_H +#define __BOARDS_RISCV_EIC7700X_EIC7700_EVB_INCLUDE_BOARD_H + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#include <nuttx/config.h> + +/**************************************************************************** + * Pre-processor Definitions + ****************************************************************************/ + +/**************************************************************************** + * Public Types + ****************************************************************************/ + +#ifndef __ASSEMBLY__ + +/**************************************************************************** + * Public Data + ****************************************************************************/ + +#undef EXTERN +#if defined(__cplusplus) +#define EXTERN extern "C" +extern "C" +{ +#else +#define EXTERN extern +#endif + +/**************************************************************************** + * Public Function Prototypes + ****************************************************************************/ + +/**************************************************************************** + * Name: eic7700x_boardinitialize + ****************************************************************************/ + +void eic7700x_boardinitialize(void); + +#undef EXTERN +#if defined(__cplusplus) +} +#endif +#endif /* __ASSEMBLY__ */ +#endif /* __BOARDS_RISCV_EIC7700X_EIC7700_EVB_INCLUDE_BOARD_H */ diff --git a/boards/risc-v/eic7700x/eic7700-evb/include/board_memorymap.h b/boards/risc-v/eic7700x/eic7700-evb/include/board_memorymap.h new file mode 100644 index 00000000000..d8f84172c4a --- /dev/null +++ b/boards/risc-v/eic7700x/eic7700-evb/include/board_memorymap.h @@ -0,0 +1,85 @@ +/**************************************************************************** + * boards/risc-v/eic7700x/eic7700-evb/include/board_memorymap.h + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. The + * ASF licenses this file to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance with the + * License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations + * under the License. + * + ****************************************************************************/ + +#ifndef __BOARDS_RISCV_EIC7700X_EIC7700_EVB_INCLUDE_BOARD_MEMORYMAP_H +#define __BOARDS_RISCV_EIC7700X_EIC7700_EVB_INCLUDE_BOARD_MEMORYMAP_H + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#include <stdint.h> + +/**************************************************************************** + * Pre-processor Definitions + ****************************************************************************/ + +/* Kernel code memory (RX) */ + +#define KFLASH_START (uintptr_t)__kflash_start +#define KFLASH_SIZE (uintptr_t)__kflash_size +#define KSRAM_START (uintptr_t)__ksram_start +#define KSRAM_SIZE (uintptr_t)__ksram_size +#define KSRAM_END (uintptr_t)__ksram_end + +/* Kernel RAM (RW) */ + +#define PGPOOL_START (uintptr_t)__pgheap_start +#define PGPOOL_SIZE (uintptr_t)__pgheap_size + +/* Page pool (RWX) */ + +#define PGPOOL_START (uintptr_t)__pgheap_start +#define PGPOOL_SIZE (uintptr_t)__pgheap_size +#define PGPOOL_END (PGPOOL_START + PGPOOL_SIZE) + +/* Ramdisk (RW) */ + +#define RAMDISK_START (uintptr_t)__ramdisk_start +#define RAMDISK_SIZE (uintptr_t)__ramdisk_size + +/**************************************************************************** + * Public Data + ****************************************************************************/ + +/* Kernel code memory (RX) */ + +extern uint8_t __kflash_start[]; +extern uint8_t __kflash_size[]; + +/* Kernel RAM (RW) */ + +extern uint8_t __ksram_start[]; +extern uint8_t __ksram_size[]; +extern uint8_t __ksram_end[]; + +/* Page pool (RWX) */ + +extern uint8_t __pgheap_start[]; +extern uint8_t __pgheap_size[]; + +/* Ramdisk (RW) */ + +extern uint8_t __ramdisk_start[]; +extern uint8_t __ramdisk_size[]; + +#endif /* __BOARDS_RISCV_EIC7700X_EIC7700_EVB_INCLUDE_BOARD_MEMORYMAP_H */ diff --git a/boards/risc-v/eic7700x/eic7700-evb/src/.gitignore b/boards/risc-v/eic7700x/eic7700-evb/src/.gitignore new file mode 100644 index 00000000000..cc92d189b53 --- /dev/null +++ b/boards/risc-v/eic7700x/eic7700-evb/src/.gitignore @@ -0,0 +1,2 @@ +etctmp +etctmp.c diff --git a/boards/risc-v/eic7700x/eic7700-evb/src/Make.defs b/boards/risc-v/eic7700x/eic7700-evb/src/Make.defs new file mode 100644 index 00000000000..ab77ae5d568 --- /dev/null +++ b/boards/risc-v/eic7700x/eic7700-evb/src/Make.defs @@ -0,0 +1,27 @@ +############################################################################ +# boards/risc-v/eic7700x/eic7700-evb/src/Make.defs +# +# SPDX-License-Identifier: Apache-2.0 +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. The +# ASF licenses this file to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance with the +# License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. +# +############################################################################ + +CSRCS = eic7700x_bringup.c + +DEPPATH += --dep-path board +VPATH += :board +CFLAGS += ${INCDIR_PREFIX}$(TOPDIR)$(DELIM)arch$(DELIM)$(CONFIG_ARCH)$(DELIM)src$(DELIM)board$(DELIM)board diff --git a/boards/risc-v/eic7700x/eic7700-evb/src/board_config.h b/boards/risc-v/eic7700x/eic7700-evb/src/board_config.h new file mode 100644 index 00000000000..afea7c5a9ba --- /dev/null +++ b/boards/risc-v/eic7700x/eic7700-evb/src/board_config.h @@ -0,0 +1,47 @@ +/**************************************************************************** + * boards/risc-v/eic7700x/eic7700-evb/src/board_config.h + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. The + * ASF licenses this file to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance with the + * License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations + * under the License. + * + ****************************************************************************/ + +#ifndef __BOARDS_RISCV_EIC7700X_EIC7700_EVB_SRC_BOARD_CONFIG_H +#define __BOARDS_RISCV_EIC7700X_EIC7700_EVB_SRC_BOARD_CONFIG_H + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#include <nuttx/config.h> + +/**************************************************************************** + * Public Function Prototypes + ****************************************************************************/ + +/**************************************************************************** + * Name: eic7700x_bringup + * + * Description: + * Bring up this board's devices, in this board's order. Called from the + * common layer's board_late_initialize(). + * + ****************************************************************************/ + +int eic7700x_bringup(void); + +#endif /* __BOARDS_RISCV_EIC7700X_EIC7700_EVB_SRC_BOARD_CONFIG_H */ diff --git a/boards/risc-v/eic7700x/eic7700-evb/src/eic7700x_bringup.c b/boards/risc-v/eic7700x/eic7700-evb/src/eic7700x_bringup.c new file mode 100644 index 00000000000..3c23e6d9e18 --- /dev/null +++ b/boards/risc-v/eic7700x/eic7700-evb/src/eic7700x_bringup.c @@ -0,0 +1,50 @@ +/**************************************************************************** + * boards/risc-v/eic7700x/eic7700-evb/src/eic7700x_bringup.c + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. The + * ASF licenses this file to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance with the + * License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations + * under the License. + * + ****************************************************************************/ + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#include <nuttx/config.h> + +#include <sys/types.h> + +#include "board_config.h" + +/**************************************************************************** + * Public Functions + ****************************************************************************/ + +/**************************************************************************** + * Name: eic7700x_bringup + * + * Description: + * Bring up this board's devices, in this board's order. Device drivers + * register here as the port grows; the common layer owns everything that + * is true of the SoC rather than of this board. + * + ****************************************************************************/ + +int eic7700x_bringup(void) +{ + return OK; +}
