summaryrefslogtreecommitdiff
path: root/target/aarch64
diff options
context:
space:
mode:
Diffstat (limited to 'target/aarch64')
-rw-r--r--target/aarch64/Makefile21
-rw-r--r--target/aarch64/kernel/raspberry-pi3-6410
-rw-r--r--target/aarch64/systems/raspberry-pi3-6426
3 files changed, 56 insertions, 1 deletions
diff --git a/target/aarch64/Makefile b/target/aarch64/Makefile
index 34a2b8ecd..c96264c39 100644
--- a/target/aarch64/Makefile
+++ b/target/aarch64/Makefile
@@ -20,6 +20,10 @@ endif
ifeq ($(ADK_TARGET_FS),archive)
targethelp:
@echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSTARBALL)"
+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_QEMU),y)
@echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}'
@echo "Use following command to create a QEMU Image:"
@@ -57,9 +61,24 @@ kernel-strip:
kernel-install: kernel-strip
@cp $(BUILD_DIR)/$(TARGET_KERNEL) $(FW_DIR)/$(TARGET_KERNEL)
+dtb-install:
+ifeq ($(ADK_TARGET_BOARD_BCM28XX),y)
+ env $(KERNEL_MAKE_ENV) $(MAKE) -C "${LINUX_DIR}" $(KERNEL_MAKE_OPTS) \
+ dtbs $(MAKE_TRACE)
+ mkdir -p $(FW_DIR)/overlays
+ for x in $(LINUX_DIR)/arch/arm64/boot/dts/overlays/*.dtbo; do \
+ [[ -e "$$x" ]] && cp $(LINUX_DIR)/arch/arm64/boot/dts/overlays/*.dtbo $(FW_DIR)/overlays; \
+ break; \
+ done
+ for x in $(LINUX_DIR)/arch/arm64/boot/dts/broadcom/*.dtb; do \
+ [[ -e "$$x" ]] && cp $(LINUX_DIR)/arch/arm64/boot/dts/broadcom/*.dtb $(FW_DIR); \
+ break; \
+ done
+endif
+
# filesystem specific targets
ifeq ($(ADK_TARGET_FS),archive)
-imageinstall: $(FW_DIR)/$(ROOTFSTARBALL) targethelp
+imageinstall: dtb-install $(FW_DIR)/$(ROOTFSTARBALL) targethelp
endif
ifeq ($(ADK_TARGET_FS),initramfs)
imageinstall: kernel-install $(FW_DIR)/$(INITRAMFS) targethelp
diff --git a/target/aarch64/kernel/raspberry-pi3-64 b/target/aarch64/kernel/raspberry-pi3-64
new file mode 100644
index 000000000..6d9ace351
--- /dev/null
+++ b/target/aarch64/kernel/raspberry-pi3-64
@@ -0,0 +1,10 @@
+CONFIG_ARM64=y
+CONFIG_ARCH_BCM2835=y
+CONFIG_BRCM_CHAR_DRIVERS=y
+CONFIG_BCM2708_VCMEM=y
+CONFIG_BCM_VCIO=y
+CONFIG_BCMA=y
+CONFIG_MAILBOX=y
+CONFIG_BCM2835_MBOX=y
+CONFIG_RASPBERRYPI_POWER=y
+CONFIG_RASPBERRYPI_FIRMWARE=y
diff --git a/target/aarch64/systems/raspberry-pi3-64 b/target/aarch64/systems/raspberry-pi3-64
new file mode 100644
index 000000000..03f1d755d
--- /dev/null
+++ b/target/aarch64/systems/raspberry-pi3-64
@@ -0,0 +1,26 @@
+config ADK_TARGET_SYSTEM_RASPBERRY_PI3_64
+ bool "Raspberry PI 3 (AARCH64)"
+ depends on ADK_TARGET_LITTLE_ENDIAN
+ select ADK_TARGET_CPU_AARCH64_CORTEX_A53
+ select ADK_TARGET_BOARD_BCM28XX
+ 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_WIFI
+ select ADK_TARGET_WITH_BLOCK
+ select ADK_TARGET_WITH_SOUND
+ select ADK_TARGET_WITH_SDIO
+ select ADK_PACKAGE_BCM28XX_BOOTLOADER
+ select ADK_TARGET_WITH_ROOT_RW
+ select ADK_TARGET_KERNEL_IMAGE
+ help
+ Raspberry PI 3 (AARCH64)
+