1 # This file is part of the OpenADK project. OpenADK is copyrighted
2 # material, please see the LICENCE file in the top-level directory.
4 include $(ADK_TOPDIR
)/rules.mk
5 include $(ADK_TOPDIR
)/mk
/kernel.mk
6 include $(ADK_TOPDIR
)/mk
/modules.mk
7 include $(ADK_TOPDIR
)/mk
/kernel-build.mk
8 include $(ADK_TOPDIR
)/mk
/image.mk
10 KERNEL
:=${LINUX_DIR}/arch
/arm64
/boot
/Image
12 QEMU_ARGS
:=${ADK_QEMU_ARGS}
13 QEMU_ARGS
+=-M virt
-cpu cortex-a57
-smp
1
14 ifeq ($(ADK_TARGET_QEMU_WITH_VIRTIO
),y
)
15 QEMU_ARGS
+=-netdev user
,id
=eth0
-device virtio-net-device
,netdev
=eth0
17 ifeq ($(ADK_TARGET_FS
),archive
)
18 QEMU_ARGS
+=-device virtio-blk-device
,drive
=vda
-drive file
=qemu-
${ADK_TARGET_CPU_ARCH}.img
,if
=none
,id
=vda
22 ifeq ($(ADK_TARGET_FS
),archive
)
24 @echo
"The RootFS tarball is: $(FW_DIR)/$(ROOTFSTARBALL)"
25 ifeq ($(ADK_TARGET_QEMU
),y
)
26 @echo
'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}'
27 @echo
"Use following command to create a QEMU Image:"
28 @echo
"./scripts/create.sh qemu-${ADK_TARGET_CPU_ARCH}.img $(FW_DIR)/$(ROOTFSTARBALL)"
29 @echo
"Start qemu with following options:"
30 @echo
'qemu-system-${ADK_TARGET_CPU_ARCH} ${QEMU_ARGS} -kernel $(FW_DIR)/$(TARGET_KERNEL) qemu-${ADK_TARGET_CPU_ARCH}.img'
33 ifeq ($(ADK_TARGET_FS
),initramfs
)
35 @echo
'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}'
36 @echo
'The initramfs image is: ${FW_DIR}/${INITRAMFS}'
37 ifeq ($(ADK_TARGET_QEMU
),y
)
38 @echo
"Start qemu with following command line:"
39 @echo
'qemu-system-${ADK_TARGET_CPU_ARCH} ${QEMU_ARGS} -kernel $(FW_DIR)/$(TARGET_KERNEL) -initrd ${FW_DIR}/${INITRAMFS}'
42 ifeq ($(ADK_TARGET_FS
),initramfsarchive
)
44 @echo
'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}'
45 @echo
"The RootFS tarball is: $(FW_DIR)/$(ROOTFSUSERTARBALL)"
47 ifeq ($(ADK_TARGET_FS
),initramfspiggyback
)
49 @echo
'The kernel+initramfs file is: $(FW_DIR)/${TARGET_KERNEL}'
50 ifeq ($(ADK_TARGET_SYSTEM_ARM_FM
),y
)
51 @echo
'Start emulator via:'
52 @echo
'Foundation_v8 --image=$(FW_DIR)/${TARGET_KERNEL}'
54 ifeq ($(ADK_TARGET_QEMU
),y
)
55 @echo
"Start qemu with following command line:"
56 @echo
'qemu-system-${ADK_TARGET_CPU_ARCH} ${QEMU_ARGS} -kernel $(FW_DIR)/$(TARGET_KERNEL)'
61 @cp
$(KERNEL
) $(BUILD_DIR
)/$(TARGET_KERNEL
)
63 kernel-install
: kernel-strip
64 ifeq ($(ADK_TARGET_SYSTEM_ARM_FM
),y
)
67 -C package
/boot-wrapper-aarch64
clean
70 -C package
/boot-wrapper-aarch64 package
71 ${CP} ${LINUX_DIR}/linux-system.axf \
72 $(FW_DIR
)/$(TARGET_KERNEL
)
74 @cp
$(BUILD_DIR
)/$(TARGET_KERNEL
) $(FW_DIR
)/$(TARGET_KERNEL
)
77 # filesystem specific targets
78 ifeq ($(ADK_TARGET_FS
),archive
)
79 imageinstall
: $(FW_DIR
)/$(ROOTFSTARBALL
) targethelp
81 ifeq ($(ADK_TARGET_FS
),initramfs
)
82 imageinstall
: kernel-install
$(FW_DIR
)/$(INITRAMFS
) targethelp
84 ifeq ($(ADK_TARGET_FS
),initramfsarchive
)
85 imageinstall
: kernel-install
$(FW_DIR
)/$(ROOTFSUSERTARBALL
) targethelp
87 ifeq ($(ADK_TARGET_FS
),initramfspiggyback
)
88 imageinstall
: createinitramfs targethelp