Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 6 additions & 2 deletions config/boards/helios64.conf
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,10 @@ BOARD_VENDOR="kobol"
BOARDFAMILY="rockchip64" # Used to be rk3399
BOARD_MAINTAINER="prahal"
BOOTCONFIG="helios64-rk3399_defconfig"
BOOT_SCENARIO="tpl-blob-atf-mainline"
BOOTBRANCH="tag:v2026.01-rc5"
BOOTPATCHDIR="v2026.01/board_helios64"
BOOT_SCENARIO="binman-atf-mainline"
DDR_BLOB="rk33/rk3399_ddr_933MHz_v1.25.bin"
KERNEL_TARGET="current,edge"
KERNEL_TEST_TARGET="current"
MODULES="lm75 ledtrig-netdev"
Expand All @@ -14,8 +17,9 @@ PACKAGE_LIST_BOARD="mdadm i2c-tools fancontrol"
PACKAGE_LIST_BOARD_REMOVE="fake-hwclock"
CPUMAX="1800000"
enable_extension "watchdog"
enable_extension "uboot-btrfs"

if [[ "$ROOTFS_TYPE" =~ btrfs|f2fs|nilfs2|nfs|xfs ]]; then
if [[ "$ROOTFS_TYPE" =~ f2fs|nilfs2|nfs|xfs ]]; then
BOOTFS_TYPE=${BOOTFS_TYPE:-ext4}
BOOTPART_REQUIRED=${BOOTPART_REQUIRED:-yes}
fi
Expand Down
1 change: 0 additions & 1 deletion patch/u-boot/v2026.01/0000.patching_config.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
config:

overlay-directories:
- { source: "defconfig", target: "configs" } # copies all files in defconfig dir to the configs/ dir in the u-boot source tree
- { source: "dt_upstream_rockchip", target: "dts/upstream/src/arm64/rockchip" } # copies all files in dt_upstream_rockchip dir to the dts/upstream/src/arm64/rockchip dir in the u-boot source tree
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
config:

# Board-specific overlays live inside this directory to keep Helios64
# patches self contained.
overlay-directories:
- { source: "defconfig", target: "configs" }
- { source: "dt_upstream_rockchip", target: "dts/upstream/src/arm64/rockchip" }
- { source: "dt_uboot", target: "arch/arm/dts" }
- { source: "board", target: "board/kobol/helios64" }
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Codex Bot <bot@example.com>
Date: Thu, 25 Dec 2025 00:00:00 +0000
Subject: [PATCH] exception: include string.h for strlen/strncmp

Fix implicit declarations in cmd/arm/exception64 by pulling in the
standard string helpers.

---
include/exception.h | 1 +
1 file changed, 1 insertion(+)

diff --git a/include/exception.h b/include/exception.h
index 0d27152ffa..e32eb833af 100644
--- a/include/exception.h
+++ b/include/exception.h
@@ -7,6 +7,7 @@
* Copyright (c) 2018, Heinrich Schuchardt <xypron.glpk@gmx.de>
*/

#include <command.h>
+#include <string.h>

static int do_exception(struct cmd_tbl *cmdtp, int flag, int argc,
char *const argv[])
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Codex Bot <bot@example.com>
Date: Thu, 6 Mar 2025 00:00:00 +0000
Subject: [PATCH] rk3399: add Helios64 target

Wire Helios64 into the rk3399 board menu and source tree so its defconfig
builds again on v2026.01-rc5.

---
arch/arm/mach-rockchip/rk3399/Kconfig | 14 ++++++++++++++
1 file changed, 14 insertions(+)

diff --git a/arch/arm/mach-rockchip/rk3399/Kconfig b/arch/arm/mach-rockchip/rk3399/Kconfig
index 39e5b0548d..2b5e169acd 100644
--- a/arch/arm/mach-rockchip/rk3399/Kconfig
+++ b/arch/arm/mach-rockchip/rk3399/Kconfig
@@ -130,6 +130,13 @@
* wide voltage input(5V-15V), dual cell battery
* Wifi/BT accessible via expansion board M.2

+config TARGET_HELIOS64
+ bool "Kobol Helios64"
+ help
+ Helios64 is a RK3399-based NAS board with a JMB585 SATA HBA,
+ USB-C (DP Alt), USB3 hub, dual Ethernet (1G + 2.5G), eMMC and
+ LPDDR4 memory.
+
endchoice

config ROCKCHIP_BOOT_MODE_REG
@@ -166,6 +173,7 @@
source "board/pine64/pinephone-pro-rk3399/Kconfig"
source "board/pine64/rockpro64_rk3399/Kconfig"
source "board/radxa/rockpi4-rk3399/Kconfig"
+source "board/kobol/helios64/Kconfig"
source "board/rockchip/evb_rk3399/Kconfig"
source "board/theobroma-systems/puma_rk3399/Kconfig"
source "board/vamrs/rock960_rk3399/Kconfig"
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Codex Bot <bot@example.com>
Date: Thu, 25 Dec 2025 00:00:00 +0000
Subject: [PATCH] helios64: provide board config header

Add include/configs/helios64.h so the rk3399 Helios64 build has its own
boot targets and env placement. Keep the distro boot target list short
enough to fit the early 32-byte env_buf.

---
include/configs/helios64.h | 48 +++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 48 insertions(+)

diff --git a/include/configs/helios64.h b/include/configs/helios64.h
new file mode 100644
index 0000000000..bf5ddfcd10
--- /dev/null
+++ b/include/configs/helios64.h
@@ -0,0 +1,48 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
+/*
+ * (C) Copyright 2020 Aditya Prayoga <aditya@kobol.io>
+ */
+
+#ifndef __HELIOS64_H
+#define __HELIOS64_H
+
+#include <configs/rk3399_common.h>
+
+#define SDRAM_BANK_SIZE (2UL << 30)
+
+#if defined(CONFIG_ENV_IS_IN_MMC)
+ #define CONFIG_SYS_MMC_ENV_DEV 0
+#elif defined(CONFIG_ENV_IS_IN_SPI_FLASH)
+ #define CONFIG_ENV_SPI_BUS CONFIG_SF_DEFAULT_BUS
+ #define CONFIG_ENV_SPI_CS CONFIG_SF_DEFAULT_CS
+ #define CONFIG_ENV_SPI_MODE CONFIG_SF_DEFAULT_MODE
+ #define CONFIG_ENV_SPI_MAX_HZ CONFIG_SF_DEFAULT_SPEED
+#endif
+
+
+#ifndef CONFIG_SPL_BUILD
+#if CONFIG_IS_ENABLED(SCSI)
+
+ #define CONFIG_SYS_SCSI_MAX_SCSI_ID 5
+ #define CONFIG_SYS_SCSI_MAX_LUN 1
+
+ #define BOOT_TARGET_SCSI(func) \
+ func(SCSI, scsi, 0)
+#else
+ #define BOOT_TARGET_SCSI(func)
+#endif
+
+/* Keep boot_targets short to fit early env_buf (32 bytes); bootstd still
+ * scans SD (mmc0) and eMMC (mmc1) automatically.
+ */
+#undef BOOT_TARGET_DEVICES
+#define BOOT_TARGET_DEVICES(func) \
+ func(MMC, mmc, 1) \
+ func(SCSI, scsi, 0) \
+ func(USB, usb, 0) \
+ func(PXE, pxe, na) \
+ func(DHCP, dhcp, na)
+
+#endif /* !CONFIG_SPL_BUILD */
+
+#endif /* __HELIOS64_H */
24 changes: 24 additions & 0 deletions patch/u-boot/v2026.01/board_helios64/board/Kconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
if TARGET_HELIOS64

config SYS_BOARD
default "helios64"

config SYS_VENDOR
default "kobol"

config SYS_CONFIG_NAME
default "helios64"

config BOARD_SPECIFIC_OPTIONS # dummy
def_bool y

config ENV_SECT_SIZE
default 0x1000 if ENV_IS_IN_SPI_FLASH

config ENV_SIZE
default 0x8000

config ENV_OFFSET
default 0x460000 if ENV_IS_IN_SPI_FLASH

endif
6 changes: 6 additions & 0 deletions patch/u-boot/v2026.01/board_helios64/board/MAINTAINERS
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
HELIOS64 BOARD
M: Aditya Prayoga <aditya@kobol.io>
S: Maintained
F: board/kobol/helios64/
F: include/configs/helios64.h
F: configs/helios64-rk3399_defconfig
5 changes: 5 additions & 0 deletions patch/u-boot/v2026.01/board_helios64/board/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# SPDX-License-Identifier: GPL-2.0+
#
# Copyright (C) 2020 Aditya Prayoga <aditya@kobol.io>

obj-y := helios64.o sys_otp.o
Loading