summaryrefslogtreecommitdiff
path: root/target/aarch64
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2022-12-08 12:02:03 +0100
committerWaldemar Brodkorb <wbx@openadk.org>2022-12-15 15:30:15 +0100
commit767514154be31670df3f072c44537af64993a6a4 (patch)
tree0f6b657272cefbe5e3bfa31bde711de6fad001d2 /target/aarch64
parent63896d07d312a57fa4033b0826fd3317816b500d (diff)
add support for rockpi4-plus
Diffstat (limited to 'target/aarch64')
-rw-r--r--target/aarch64/Makefile20
-rw-r--r--target/aarch64/kernel/rockpi4-plus5
-rw-r--r--target/aarch64/rockpi4-plus/extlinux.conf4
-rw-r--r--target/aarch64/rockpi4-plus/genimage.cfg39
-rw-r--r--target/aarch64/systems/rockpi4-plus22
5 files changed, 90 insertions, 0 deletions
diff --git a/target/aarch64/Makefile b/target/aarch64/Makefile
index b470e2975..0106bd609 100644
--- a/target/aarch64/Makefile
+++ b/target/aarch64/Makefile
@@ -24,6 +24,10 @@ ifeq ($(ADK_TARGET_BOARD_BCM28XX),y)
@echo "Use following command to install it on SD card:"
@echo "sudo ./scripts/install.sh $(ADK_TARGET_SYSTEM) /dev/sdX $(FW_DIR)/$(ROOTFSTARBALL)"
endif
+ifeq ($(ADK_TARGET_SYSTEM_ROCKPI4_PLUS),y)
+ @echo "Use following command to install it on SD card:"
+ @echo "sudo ./scripts/install.sh $(ADK_TARGET_SYSTEM) /dev/sdX $(FW_DIR)/$(ROOTFSTARBALL)"
+endif
ifeq ($(ADK_TARGET_QEMU),y)
@echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}'
@echo "Use following command to create a QEMU Image:"
@@ -54,6 +58,12 @@ ifeq ($(ADK_TARGET_QEMU),y)
@echo 'qemu-system-${ADK_TARGET_CPU_ARCH} ${QEMU_ARGS} -kernel $(FW_DIR)/$(TARGET_KERNEL)'
endif
endif
+ifeq ($(ADK_TARGET_FS),genimage)
+targethelp:
+ @echo "The disk image is: $(FW_DIR)/sdcard.img"
+ @echo "Use following command to install it on SD card:"
+ @echo 'sudo dd if=$(FW_DIR)/sdcard.img of=/dev/sdX bs=2048k'
+endif
kernel-strip:
@cp $(KERNEL) $(BUILD_DIR)/$(TARGET_KERNEL)
@@ -74,6 +84,13 @@ ifeq ($(ADK_TARGET_BOARD_BCM28XX),y)
break; \
done
endif
+ifeq ($(ADK_TARGET_SYSTEM_ROCKPI4_PLUS),y)
+ ${KERNEL_MAKE} rockchip/rk3399-rock-pi-4c-plus.dtb $(MAKE_TRACE)
+endif
+ for x in $(LINUX_DIR)/arch/arm64/boot/dts/*/*.dtb; do \
+ [[ -e "$$x" ]] && cp $(LINUX_DIR)/arch/arm64/boot/dts/*/*.dtb $(FW_DIR); \
+ break; \
+ done
# filesystem specific targets
ifeq ($(ADK_TARGET_FS),archive)
@@ -88,3 +105,6 @@ endif
ifeq ($(ADK_TARGET_FS),initramfspiggyback)
imageinstall: createinitramfs targethelp
endif
+ifeq ($(ADK_TARGET_FS),genimage)
+imageinstall: dtb-install $(FW_DIR)/$(GENIMAGE) targethelp
+endif
diff --git a/target/aarch64/kernel/rockpi4-plus b/target/aarch64/kernel/rockpi4-plus
new file mode 100644
index 000000000..5faf024de
--- /dev/null
+++ b/target/aarch64/kernel/rockpi4-plus
@@ -0,0 +1,5 @@
+CONFIG_ARM64=y
+CONFIG_ARCH_ROCKCHIP=y
+CONFIG_SERIAL_8250=y
+CONFIG_SERIAL_8250_CONSOLE=y
+CONFIG_SERIAL_OF_PLATFORM=y
diff --git a/target/aarch64/rockpi4-plus/extlinux.conf b/target/aarch64/rockpi4-plus/extlinux.conf
new file mode 100644
index 000000000..162cf49d7
--- /dev/null
+++ b/target/aarch64/rockpi4-plus/extlinux.conf
@@ -0,0 +1,4 @@
+label rockpi4-plus-openadk
+ kernel /kernel
+ devicetree /rk3399-rock-pi-4c-plus.dtb
+ append console=ttyS2,115200n8 rw rootwait
diff --git a/target/aarch64/rockpi4-plus/genimage.cfg b/target/aarch64/rockpi4-plus/genimage.cfg
new file mode 100644
index 000000000..6c93aa58c
--- /dev/null
+++ b/target/aarch64/rockpi4-plus/genimage.cfg
@@ -0,0 +1,39 @@
+image boot.vfat {
+ vfat {
+ files = {
+ "kernel",
+ "rk3399-rock-pi-4c-plus.dtb",
+ "extlinux"
+ }
+ }
+
+ size = 112M
+}
+
+image sdcard.img {
+ hdimage {
+ partition-table-type = "gpt"
+ }
+
+ partition loader1 {
+ image = "idbloader.img"
+ offset = 32K
+ }
+
+ partition loader2 {
+ image = "u-boot.itb"
+ offset = 8M
+ }
+
+ partition boot {
+ partition-type-uuid = F
+ bootable = "true"
+ image = "boot.vfat"
+ offset = 16M
+ }
+
+ partition rootfs {
+ partition-type-uuid = b921b045-1df0-41c3-af44-4c6f280d3fae
+ image = "rootfs.ext"
+ }
+}
diff --git a/target/aarch64/systems/rockpi4-plus b/target/aarch64/systems/rockpi4-plus
new file mode 100644
index 000000000..650f98bf1
--- /dev/null
+++ b/target/aarch64/systems/rockpi4-plus
@@ -0,0 +1,22 @@
+config ADK_TARGET_SYSTEM_ROCKPI4_PLUS
+ bool "Rock PI 4 Plus"
+ depends on ADK_TARGET_OS_LINUX
+ select ADK_TARGET_LITTLE_ENDIAN
+ select ADK_TARGET_CPU_AARCH64_CORTEX_A53
+ select ADK_TARGET_WITH_VGA
+ select ADK_TARGET_WITH_SERIAL
+ select ADK_TARGET_WITH_CPU_FREQ
+ select ADK_TARGET_WITH_USB
+ select ADK_TARGET_WITH_INPUT
+ select ADK_TARGET_WITH_SD
+ select ADK_TARGET_WITH_I2C
+ select ADK_TARGET_WITH_SPI
+ select ADK_TARGET_WITH_SMP
+ select ADK_TARGET_WITH_NET
+ select ADK_TARGET_WITH_NETDEVICE
+ select ADK_TARGET_WITH_BLOCK
+ select ADK_TARGET_WITH_SOUND
+ select ADK_TARGET_KERNEL_IMAGE
+ help
+ Rock PI 4 Plus
+