Skip to content

Commit

Permalink
add Rock4SE config and devicetree
Browse files Browse the repository at this point in the history
  • Loading branch information
citruz committed Feb 12, 2023
1 parent c00c0a6 commit 0f2d0e5
Show file tree
Hide file tree
Showing 11 changed files with 261 additions and 7 deletions.
6 changes: 6 additions & 0 deletions .github/workflows/matrix.json
Original file line number Diff line number Diff line change
Expand Up @@ -34,5 +34,11 @@
"defconfig": "rock_4c_plus",
"runner": "x64_runner",
"label": "board/rock-4c-plus"
},
{
"id": "rock-4se",
"defconfig": "rock_4se",
"runner": "x64_runner",
"label": "board/rock-4se"
}
]
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
From 76a7e48fc38a461edf5467f13c1307efe644297d Mon Sep 17 00:00:00 2001
From: Felix Seele <3756270+citruz@users.noreply.github.com>
Date: Sun, 12 Feb 2023 11:12:31 +0000
Subject: [PATCH] arm64: dts: rockchip: rk3399: Radxa ROCK 4SE
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Add devicetree for Rock 4SE. Slightly adjusted copy of 4B+.

---
arch/arm64/boot/dts/rockchip/Makefile | 1 +
.../boot/dts/rockchip/rk3399-rock-4se.dts | 62 ++++++++++++++++++
2 files changed, 63 insertions(+)
create mode 100644 arch/arm64/boot/dts/rockchip/rk3399-rock-4se.dts

diff --git a/arch/arm64/boot/dts/rockchip/Makefile b/arch/arm64/boot/dts/rockchip/Makefile
index 236e8ae52c7071..cdd1f211496dab 100644
--- a/arch/arm64/boot/dts/rockchip/Makefile
+++ b/arch/arm64/boot/dts/rockchip/Makefile
@@ -49,6 +49,7 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-roc-pc.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-roc-pc-mezzanine.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-roc-pc-plus.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-rock-4c-plus.dtb
+dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-rock-4se.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-rock-pi-4a.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-rock-pi-4a-plus.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-rock-pi-4b.dtb
diff --git a/arch/arm64/boot/dts/rockchip/rk3399-rock-4se.dts b/arch/arm64/boot/dts/rockchip/rk3399-rock-4se.dts
new file mode 100644
index 00000000000000..a1c4727acfcd47
--- /dev/null
+++ b/arch/arm64/boot/dts/rockchip/rk3399-rock-4se.dts
@@ -0,0 +1,62 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (c) 2019 Akash Gajjar <Akash_Gajjar@mentor.com>
+ * Copyright (c) 2019 Pragnesh Patel <Pragnesh_Patel@mentor.com>
+ */
+
+/dts-v1/;
+#include "rk3399-rock-pi-4.dtsi"
+#include "rk3399-t-opp.dtsi"
+
+/ {
+ model = "Radxa ROCK 4SE";
+ compatible = "radxa,rock-4se", "rockchip,rk3399";
+
+ aliases {
+ mmc2 = &sdio0;
+ };
+};
+
+&es8316 {
+ pinctrl-0 = <&hp_detect &hp_int>;
+ pinctrl-names = "default";
+ interrupt-parent = <&gpio1>;
+ interrupts = <RK_PA1 IRQ_TYPE_LEVEL_HIGH>;
+};
+
+&sdio0 {
+ status = "okay";
+
+ brcmf: wifi@1 {
+ compatible = "brcm,bcm4329-fmac";
+ reg = <1>;
+ interrupt-parent = <&gpio0>;
+ interrupts = <RK_PA3 GPIO_ACTIVE_HIGH>;
+ interrupt-names = "host-wake";
+ pinctrl-names = "default";
+ pinctrl-0 = <&wifi_host_wake_l>;
+ };
+};
+
+&sound {
+ hp-det-gpio = <&gpio1 RK_PA0 GPIO_ACTIVE_HIGH>;
+};
+
+&uart0 {
+ status = "okay";
+
+ bluetooth {
+ compatible = "brcm,bcm4345c5";
+ clocks = <&rk808 1>;
+ clock-names = "lpo";
+ device-wakeup-gpios = <&gpio2 RK_PD3 GPIO_ACTIVE_HIGH>;
+ host-wakeup-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_HIGH>;
+ shutdown-gpios = <&gpio0 RK_PB1 GPIO_ACTIVE_HIGH>;
+ max-speed = <1500000>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&bt_host_wake_l &bt_wake_l &bt_enable_h>;
+ vbat-supply = <&vcc3v3_sys>;
+ vddio-supply = <&vcc_1v8>;
+ };
+};
+
2 changes: 2 additions & 0 deletions buildroot-external/board/radxa/rock-4se/boot-env.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# Select device tree (DO NOT MODIFY)
fdtfile=rk3399-rock-4se.dtb
11 changes: 11 additions & 0 deletions buildroot-external/board/radxa/rock-4se/meta
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
BOARD_ID=rock-4se
BOARD_NAME="Rock 4SE"
CHASSIS=embedded
BOOTLOADER=uboot
KERNEL_FILE=Image
BOOT_SYS=gpt
BOOT_SPL=true
BOOT_ENV_SIZE=0x8000
SUPERVISOR_MACHINE=qemuarm-64
SUPERVISOR_ARCH=aarch64
DISK_SIZE=2
4 changes: 2 additions & 2 deletions buildroot-external/configs/rock_4c_plus_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ BR2_DL_DIR="/cache/dl"
BR2_CCACHE=y
BR2_CCACHE_DIR="/cache/cc"
BR2_OPTIMIZE_2=y
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_HASSOS_PATH)/patches"
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_HASSOS_PATH)/patches $(BR2_EXTERNAL_HASSOS_PATH)/board/radxa/patches"
# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set
BR2_GCC_ENABLE_LTO=y
BR2_GCC_VERSION_9_X=y
Expand Down Expand Up @@ -115,7 +115,7 @@ BR2_PACKAGE_LIBDNET=y
BR2_PACKAGE_NETWORK_MANAGER=y
BR2_PACKAGE_NVME=y
BR2_PACKAGE_OS_AGENT=y
BR2_PACKAGE_OS_AGENT_BOARD="RockPi4C+"
BR2_PACKAGE_OS_AGENT_BOARD="Rock4C+"
BR2_PACKAGE_PROCPS_NG=y
BR2_PACKAGE_RAUC=y
BR2_PACKAGE_RAUC_DBUS=y
Expand Down
139 changes: 139 additions & 0 deletions buildroot-external/configs/rock_4se_defconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,139 @@
BR2_aarch64=y
BR2_cortex_a72_a53=y
BR2_DL_DIR="/cache/dl"
BR2_CCACHE=y
BR2_CCACHE_DIR="/cache/cc"
BR2_OPTIMIZE_2=y
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_HASSOS_PATH)/patches $(BR2_EXTERNAL_HASSOS_PATH)/board/radxa/patches"
# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set
BR2_GCC_ENABLE_LTO=y
BR2_GCC_VERSION_9_X=y
BR2_INIT_SYSTEMD=y
BR2_ROOTFS_OVERLAY="$(BR2_EXTERNAL_HASSOS_PATH)/rootfs-overlay"
BR2_ROOTFS_POST_BUILD_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-build.sh"
BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh"
BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/radxa/rock-4se $(BR2_EXTERNAL_HASSOS_PATH)/board/radxa/hassos-hook.sh"
BR2_SSP_REGULAR=y
BR2_TARGET_GENERIC_HOSTNAME="homeassistant"
BR2_TARGET_GENERIC_ISSUE="Welcome to Home Assistant"
BR2_TARGET_ROOTFS_SQUASHFS=y
BR2_TARGET_ROOTFS_SQUASHFS4_LZ4=y
# BR2_TARGET_ROOTFS_TAR is not set
BR2_TOOLCHAIN_BUILDROOT_CXX=y
BR2_TOOLCHAIN_BUILDROOT_GLIBC=y

# Firmware
BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_GIT=y
BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_URL="https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git"
BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_VERSION="9881bb93a3bc0a3ea37e9f093e09ab4b360a9e48"
BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="rk3399"
BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y
BR2_TARGET_ARM_TRUSTED_FIRMWARE_NEEDS_ARM32_TOOLCHAIN=y
BR2_TARGET_ARM_TRUSTED_FIRMWARE_IMAGES=""

# Bootloader
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.10"
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="rock-pi-4-rk3399"
BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/bootloader/uboot.config $(BR2_EXTERNAL_HASSOS_PATH)/board/radxa/uboot.config"
BR2_TARGET_UBOOT_NEEDS_DTC=y
BR2_TARGET_UBOOT_NEEDS_PYTHON3=y
BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y
BR2_TARGET_UBOOT_NEEDS_ATF_BL31_ELF=y
BR2_TARGET_UBOOT_FORMAT_CUSTOM=y
BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="u-boot.itb"
BR2_TARGET_UBOOT_SPL=y
BR2_TARGET_UBOOT_SPL_NAME="idbloader.img"

# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.11"
BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/radxa/kernel.config"
BR2_LINUX_KERNEL_LZ4=y
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="rockchip/rk3399-rock-4se"
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y

# Host Packages
BR2_PACKAGE_HOST_DOSFSTOOLS=y
BR2_PACKAGE_HOST_E2FSPROGS=y
BR2_PACKAGE_HOST_GPTFDISK=y
BR2_PACKAGE_HOST_MTOOLS=y
BR2_PACKAGE_HOST_RAUC=y
BR2_PACKAGE_HOST_TEMPIO=y
BR2_PACKAGE_HOST_UBOOT_TOOLS=y
BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT=y
BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE="$(BR2_EXTERNAL_HASSOS_PATH)/board/radxa/uboot-boot.ush"
BR2_PACKAGE_HOST_SWIG=y # required by uboot 2022.10

# Packages
BR2_PACKAGE_APPARMOR=y
BR2_PACKAGE_APPARMOR_PROFILES=y
BR2_PACKAGE_BLUEZ5_UTILS=y
BR2_PACKAGE_BLUEZ5_UTILS_CLIENT=y
BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_AUDIO=y
BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_HID=y
BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_HOG=y
BR2_PACKAGE_BLUEZ5_UTILS_TOOLS=y
BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI=y
BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_BT=y
BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_WIFI=y
BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL_HASSOS_PATH)/busybox.config"
BR2_PACKAGE_BUSYBOX_INDIVIDUAL_BINARIES=y
BR2_PACKAGE_CA_CERTIFICATES=y
BR2_PACKAGE_DBUS_BROKER=y
BR2_PACKAGE_DHCP_CLIENT=y
BR2_PACKAGE_DHCP=y
BR2_PACKAGE_DOCKER_CLI=y
BR2_PACKAGE_DOCKER_ENGINE=y
BR2_PACKAGE_DOSFSTOOLS=y
BR2_PACKAGE_DOSFSTOOLS_FSCK_FAT=y
BR2_PACKAGE_DROPBEAR=y
BR2_PACKAGE_E2FSPROGS=y
BR2_PACKAGE_E2FSPROGS_E2IMAGE=y
BR2_PACKAGE_GPTFDISK=y
BR2_PACKAGE_GPTFDISK_SGDISK=y
BR2_PACKAGE_HASSIO=y
BR2_PACKAGE_HASSIO_ARCH="aarch64"
BR2_PACKAGE_HASSIO_MACHINE="qemuarm-64" # use the generic aarch64 image
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
BR2_PACKAGE_IPTABLES_NFTABLES_DEFAULT=y
BR2_PACKAGE_IPTABLES_NFTABLES=y
BR2_PACKAGE_JQ=y
BR2_PACKAGE_LESS=y
BR2_PACKAGE_LIBCGROUP=y
BR2_PACKAGE_LIBCGROUP_TOOLS=y
BR2_PACKAGE_LIBCURL_CURL=y
BR2_PACKAGE_LIBDNET=y
# BR2_PACKAGE_LVM2_STANDARD_INSTALL is not set
BR2_PACKAGE_NETWORK_MANAGER=y
BR2_PACKAGE_NVME=y
BR2_PACKAGE_OS_AGENT=y
BR2_PACKAGE_OS_AGENT_BOARD="Rock4SE"
BR2_PACKAGE_PROCPS_NG=y
BR2_PACKAGE_RAUC=y
BR2_PACKAGE_RAUC_DBUS=y
BR2_PACKAGE_RAUC_NETWORK=y
BR2_PACKAGE_RNG_TOOLS=y
BR2_PACKAGE_SYSTEMD_COREDUMP=y
# BR2_PACKAGE_SYSTEMD_HWDB is not set
BR2_PACKAGE_SYSTEMD_JOURNAL_REMOTE=y
BR2_PACKAGE_SYSTEMD_LOGIND=y
# BR2_PACKAGE_SYSTEMD_NETWORKD is not set
BR2_PACKAGE_SYSTEMD_RANDOMSEED=y
BR2_PACKAGE_TINI=y
BR2_PACKAGE_UDISKS2=y
BR2_PACKAGE_USB_MODESWITCH_DATA=y
BR2_PACKAGE_UTIL_LINUX_LOGIN=y
BR2_PACKAGE_UTIL_LINUX_NOLOGIN=y
BR2_PACKAGE_UTIL_LINUX_PARTX=y
BR2_PACKAGE_UTIL_LINUX_SULOGIN=y
BR2_PACKAGE_UTIL_LINUX_ZRAMCTL=y
BR2_PACKAGE_WIRELESS_REGDB=y
BR2_PACKAGE_WPA_SUPPLICANT_WEXT=y
2 changes: 1 addition & 1 deletion buildroot-external/configs/rockpi_4a_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ BR2_DL_DIR="/cache/dl"
BR2_CCACHE=y
BR2_CCACHE_DIR="/cache/cc"
BR2_OPTIMIZE_2=y
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_HASSOS_PATH)/patches"
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_HASSOS_PATH)/patches $(BR2_EXTERNAL_HASSOS_PATH)/board/radxa/patches"
# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set
BR2_GCC_ENABLE_LTO=y
BR2_GCC_VERSION_9_X=y
Expand Down
2 changes: 1 addition & 1 deletion buildroot-external/configs/rockpi_4a_plus_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ BR2_DL_DIR="/cache/dl"
BR2_CCACHE=y
BR2_CCACHE_DIR="/cache/cc"
BR2_OPTIMIZE_2=y
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_HASSOS_PATH)/patches"
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_HASSOS_PATH)/patches $(BR2_EXTERNAL_HASSOS_PATH)/board/radxa/patches"
# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set
BR2_GCC_ENABLE_LTO=y
BR2_GCC_VERSION_9_X=y
Expand Down
2 changes: 1 addition & 1 deletion buildroot-external/configs/rockpi_4b_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ BR2_DL_DIR="/cache/dl"
BR2_CCACHE=y
BR2_CCACHE_DIR="/cache/cc"
BR2_OPTIMIZE_2=y
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_HASSOS_PATH)/patches"
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_HASSOS_PATH)/patches $(BR2_EXTERNAL_HASSOS_PATH)/board/radxa/patches"
# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set
BR2_GCC_ENABLE_LTO=y
BR2_GCC_VERSION_9_X=y
Expand Down
2 changes: 1 addition & 1 deletion buildroot-external/configs/rockpi_4b_plus_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ BR2_DL_DIR="/cache/dl"
BR2_CCACHE=y
BR2_CCACHE_DIR="/cache/cc"
BR2_OPTIMIZE_2=y
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_HASSOS_PATH)/patches"
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_HASSOS_PATH)/patches $(BR2_EXTERNAL_HASSOS_PATH)/board/radxa/patches"
# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set
BR2_GCC_ENABLE_LTO=y
BR2_GCC_VERSION_9_X=y
Expand Down
2 changes: 1 addition & 1 deletion buildroot-external/configs/rockpi_4c_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ BR2_DL_DIR="/cache/dl"
BR2_CCACHE=y
BR2_CCACHE_DIR="/cache/cc"
BR2_OPTIMIZE_2=y
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_HASSOS_PATH)/patches"
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_HASSOS_PATH)/patches $(BR2_EXTERNAL_HASSOS_PATH)/board/radxa/patches"
# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set
BR2_GCC_ENABLE_LTO=y
BR2_GCC_VERSION_9_X=y
Expand Down

0 comments on commit 0f2d0e5

Please sign in to comment.