armvirt: new target
An ARM Cortex-A15 machine provided by QEMU.
Kernel drivers enabled:
 - pl011, uart
 - pl031, rtc
 - pl061, gpio
 - pci-host-generic
 - virtio_{mmio,pci,net,blk,scsi,9p,console,balloon}
 - smp with NR_CPUS=4
 - cpu-hotplug
 - ext4
 - neon, vfp extensions support (otherwise userland will fail with
   illegal instruction signal (code 0x00000004))
 - DEBUG_BUGVERBOSE for debug purposes
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
			
			
This commit is contained in:
		 Yousong Zhou
					Yousong Zhou
				
			
				
					committed by
					
						 John Crispin
						John Crispin
					
				
			
			
				
	
			
			
			 John Crispin
						John Crispin
					
				
			
						parent
						
							fb237477fd
						
					
				
				
					commit
					44ecfc26eb
				
			
							
								
								
									
										28
									
								
								target/linux/armvirt/Makefile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								target/linux/armvirt/Makefile
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,28 @@ | ||||
| # | ||||
| # Copyright (C) 2016 Yousong Zhou <yszhou4tech@gmail.com> | ||||
| # | ||||
| # This is free software, licensed under the GNU General Public License v2. | ||||
| # See /LICENSE for more information. | ||||
| # | ||||
| include $(TOPDIR)/rules.mk | ||||
|  | ||||
| ARCH:=arm | ||||
| BOARD:=armvirt | ||||
| BOARDNAME:=QEMU ARM Virtual Machine | ||||
| FEATURES:=fpu pci rtc | ||||
| FEATURES+=cpiogz ext4 ramdisk squashfs targz | ||||
| CPU_TYPE:=cortex-a15 | ||||
| CPU_SUBTYPE:=neon-vfpv4 | ||||
| MAINTAINER:=Yousong Zhou <yszhou4tech@gmail.com> | ||||
|  | ||||
| KERNEL_PATCHVER:=4.4 | ||||
|  | ||||
| define Target/Description | ||||
|   Build images for QEMU ARM Virtual Machine | ||||
| endef | ||||
|  | ||||
| include $(INCLUDE_DIR)/target.mk | ||||
|  | ||||
| KERNELNAME:=zImage | ||||
|  | ||||
| $(eval $(call BuildTarget)) | ||||
							
								
								
									
										34
									
								
								target/linux/armvirt/README
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										34
									
								
								target/linux/armvirt/README
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,34 @@ | ||||
| This is intended to be used with LEDE project to provide image for use with | ||||
| QEMU arm-softmmu virt machine. | ||||
|  | ||||
| Run with qemu-system-arm | ||||
|  | ||||
| 	# boot with initramfs embedded in | ||||
| 	qemu-system-arm -nographic -M virt -m 64 -kernel lede-armvirt-zImage-initramfs | ||||
|  | ||||
| 	# boot with accel=kvm | ||||
| 	qemu-system-arm -nographic -M virt,accel=kvm -cpu host -m 64 -kernel lede-armvirt-zImage-initramfs | ||||
|  | ||||
| 	# boot with a separate rootfs | ||||
| 	qemu-system-arm -nographic -M virt -m 64 -kernel lede-armvirt-zImage \ | ||||
| 	  -drive file=lede-armvirt-root.ext4,format=raw,if=virtio -append 'root=/dev/vda rootwait' | ||||
|  | ||||
| 	# boot with local dir as rootfs | ||||
| 	qemu-system-arm -nographic -M virt -m 64 -kernel lede-armvirt-zImage \ | ||||
| 	  -fsdev local,id=rootdev,path=root-armvirt/,security_model=none \ | ||||
| 	  -device virtio-9p-pci,fsdev=rootdev,mount_tag=/dev/root \ | ||||
| 	  -append 'rootflags=trans=virtio,version=9p2000.L,cache=loose rootfstype=9p' | ||||
|  | ||||
| Run with kvmtool | ||||
|  | ||||
| 	# start a named machine | ||||
| 	lkvm run -k lede-armvirt-zImage -i lede-armvirt-rootfs.cpio --name armvirt0 | ||||
|  | ||||
| 	# start with virtio-9p rootfs | ||||
| 	lkvm run -k lede-armvirt-zImage -d root-armvirt/ | ||||
|  | ||||
| 	# stop "armvirt0" | ||||
| 	lkvm stop --name armvirt0 | ||||
|  | ||||
| 	# stop all | ||||
| 	lkvm stop --all | ||||
							
								
								
									
										14
									
								
								target/linux/armvirt/base-files/etc/board.d/00_model
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										14
									
								
								target/linux/armvirt/base-files/etc/board.d/00_model
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,14 @@ | ||||
| #!/bin/sh | ||||
| # Copyright (C) 2015 OpenWrt.org | ||||
| # Copyright (C) 2016 Yousong Zhou <yszhou4tech@gmail.com> | ||||
|  | ||||
| . /lib/functions/uci-defaults.sh | ||||
|  | ||||
| board_config_update | ||||
|  | ||||
| ucidef_set_board_id "armvirt" | ||||
| ucidef_set_model_name "QEMU ARM Virtual Machine" | ||||
|  | ||||
| board_config_flush | ||||
|  | ||||
| exit 0 | ||||
							
								
								
									
										5
									
								
								target/linux/armvirt/base-files/etc/inittab
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								target/linux/armvirt/base-files/etc/inittab
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,5 @@ | ||||
| ::sysinit:/etc/init.d/rcS S boot | ||||
| ::shutdown:/etc/init.d/rcS K shutdown | ||||
| ttyAMA0::askfirst:/usr/libexec/login.sh | ||||
| ttyS0::askfirst:/usr/libexec/login.sh | ||||
| hvc0::askfirst:/usr/libexec/login.sh | ||||
							
								
								
									
										258
									
								
								target/linux/armvirt/config-default
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										258
									
								
								target/linux/armvirt/config-default
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,258 @@ | ||||
| CONFIG_9P_FS=y | ||||
| # CONFIG_9P_FS_POSIX_ACL is not set | ||||
| # CONFIG_9P_FS_SECURITY is not set | ||||
| CONFIG_ALIGNMENT_TRAP=y | ||||
| CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y | ||||
| CONFIG_ARCH_HAS_ELF_RANDOMIZE=y | ||||
| CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y | ||||
| CONFIG_ARCH_HAS_SG_CHAIN=y | ||||
| CONFIG_ARCH_HAS_TICK_BROADCAST=y | ||||
| CONFIG_ARCH_HAVE_CUSTOM_GPIO_H=y | ||||
| CONFIG_ARCH_HIBERNATION_POSSIBLE=y | ||||
| CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y | ||||
| CONFIG_ARCH_MULTIPLATFORM=y | ||||
| # CONFIG_ARCH_MULTI_CPU_AUTO is not set | ||||
| CONFIG_ARCH_MULTI_V6_V7=y | ||||
| CONFIG_ARCH_MULTI_V7=y | ||||
| CONFIG_ARCH_NR_GPIO=0 | ||||
| # CONFIG_ARCH_SELECT_MEMORY_MODEL is not set | ||||
| # CONFIG_ARCH_SPARSEMEM_DEFAULT is not set | ||||
| CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y | ||||
| CONFIG_ARCH_SUPPORTS_UPROBES=y | ||||
| CONFIG_ARCH_SUSPEND_POSSIBLE=y | ||||
| CONFIG_ARCH_USE_BUILTIN_BSWAP=y | ||||
| CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y | ||||
| CONFIG_ARCH_VIRT=y | ||||
| CONFIG_ARCH_WANT_GENERAL_HUGETLB=y | ||||
| CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y | ||||
| CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y | ||||
| CONFIG_ARM=y | ||||
| CONFIG_ARM_AMBA=y | ||||
| CONFIG_ARM_ARCH_TIMER=y | ||||
| CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y | ||||
| # CONFIG_ARM_CPU_SUSPEND is not set | ||||
| CONFIG_ARM_GIC=y | ||||
| CONFIG_ARM_GIC_V3=y | ||||
| CONFIG_ARM_HAS_SG_CHAIN=y | ||||
| CONFIG_ARM_HEAVY_MB=y | ||||
| CONFIG_ARM_L1_CACHE_SHIFT=6 | ||||
| CONFIG_ARM_L1_CACHE_SHIFT_6=y | ||||
| # CONFIG_ARM_LPAE is not set | ||||
| CONFIG_ARM_PATCH_PHYS_VIRT=y | ||||
| CONFIG_ARM_PSCI=y | ||||
| CONFIG_ARM_PSCI_FW=y | ||||
| # CONFIG_ARM_SP805_WATCHDOG is not set | ||||
| CONFIG_ARM_THUMB=y | ||||
| # CONFIG_ARM_THUMBEE is not set | ||||
| CONFIG_ARM_VIRT_EXT=y | ||||
| CONFIG_AUTO_ZRELADDR=y | ||||
| CONFIG_CACHE_L2X0=y | ||||
| CONFIG_CLKDEV_LOOKUP=y | ||||
| CONFIG_CLKSRC_OF=y | ||||
| CONFIG_CLKSRC_PROBE=y | ||||
| CONFIG_CLONE_BACKWARDS=y | ||||
| CONFIG_COMMON_CLK=y | ||||
| CONFIG_CPU_32v6K=y | ||||
| CONFIG_CPU_32v7=y | ||||
| CONFIG_CPU_ABRT_EV7=y | ||||
| # CONFIG_CPU_BPREDICT_DISABLE is not set | ||||
| CONFIG_CPU_CACHE_V7=y | ||||
| CONFIG_CPU_CACHE_VIPT=y | ||||
| CONFIG_CPU_COPY_V6=y | ||||
| CONFIG_CPU_CP15=y | ||||
| CONFIG_CPU_CP15_MMU=y | ||||
| CONFIG_CPU_HAS_ASID=y | ||||
| # CONFIG_CPU_ICACHE_DISABLE is not set | ||||
| CONFIG_CPU_PABRT_V7=y | ||||
| CONFIG_CPU_RMAP=y | ||||
| CONFIG_CPU_TLB_V7=y | ||||
| CONFIG_CPU_V7=y | ||||
| CONFIG_CRC16=y | ||||
| CONFIG_CRYPTO_AEAD=y | ||||
| CONFIG_CRYPTO_AEAD2=y | ||||
| CONFIG_CRYPTO_CRC32C=y | ||||
| CONFIG_CRYPTO_HASH=y | ||||
| CONFIG_CRYPTO_HASH2=y | ||||
| CONFIG_CRYPTO_MANAGER=y | ||||
| CONFIG_CRYPTO_MANAGER2=y | ||||
| CONFIG_CRYPTO_NULL2=y | ||||
| CONFIG_CRYPTO_RNG2=y | ||||
| CONFIG_CRYPTO_WORKQUEUE=y | ||||
| CONFIG_DCACHE_WORD_ACCESS=y | ||||
| CONFIG_DEBUG_BUGVERBOSE=y | ||||
| CONFIG_DEBUG_LL_INCLUDE="mach/debug-macro.S" | ||||
| # CONFIG_DEBUG_UART_8250 is not set | ||||
| # CONFIG_DEBUG_USER is not set | ||||
| CONFIG_DTC=y | ||||
| CONFIG_EDAC_ATOMIC_SCRUB=y | ||||
| CONFIG_EDAC_SUPPORT=y | ||||
| CONFIG_EXT4_FS=y | ||||
| CONFIG_FIX_EARLYCON_MEM=y | ||||
| CONFIG_FRAME_POINTER=y | ||||
| CONFIG_FS_MBCACHE=y | ||||
| CONFIG_GENERIC_ALLOCATOR=y | ||||
| CONFIG_GENERIC_BUG=y | ||||
| CONFIG_GENERIC_CLOCKEVENTS=y | ||||
| CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y | ||||
| CONFIG_GENERIC_IDLE_POLL_SETUP=y | ||||
| CONFIG_GENERIC_IO=y | ||||
| CONFIG_GENERIC_IRQ_SHOW=y | ||||
| CONFIG_GENERIC_IRQ_SHOW_LEVEL=y | ||||
| CONFIG_GENERIC_PCI_IOMAP=y | ||||
| CONFIG_GENERIC_SCHED_CLOCK=y | ||||
| CONFIG_GENERIC_SMP_IDLE_THREAD=y | ||||
| CONFIG_GENERIC_STRNCPY_FROM_USER=y | ||||
| CONFIG_GENERIC_STRNLEN_USER=y | ||||
| CONFIG_GPIOLIB=y | ||||
| CONFIG_GPIOLIB_IRQCHIP=y | ||||
| CONFIG_GPIO_DEVRES=y | ||||
| CONFIG_GPIO_PL061=y | ||||
| CONFIG_HANDLE_DOMAIN_IRQ=y | ||||
| CONFIG_HARDIRQS_SW_RESEND=y | ||||
| CONFIG_HAS_DMA=y | ||||
| CONFIG_HAS_IOMEM=y | ||||
| CONFIG_HAS_IOPORT_MAP=y | ||||
| # CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set | ||||
| CONFIG_HAVE_ARCH_AUDITSYSCALL=y | ||||
| CONFIG_HAVE_ARCH_BITREVERSE=y | ||||
| CONFIG_HAVE_ARCH_JUMP_LABEL=y | ||||
| CONFIG_HAVE_ARCH_KGDB=y | ||||
| CONFIG_HAVE_ARCH_PFN_VALID=y | ||||
| CONFIG_HAVE_ARCH_SECCOMP_FILTER=y | ||||
| CONFIG_HAVE_ARCH_TRACEHOOK=y | ||||
| CONFIG_HAVE_ARM_ARCH_TIMER=y | ||||
| # CONFIG_HAVE_BOOTMEM_INFO_NODE is not set | ||||
| CONFIG_HAVE_BPF_JIT=y | ||||
| CONFIG_HAVE_CC_STACKPROTECTOR=y | ||||
| CONFIG_HAVE_CLK=y | ||||
| CONFIG_HAVE_CLK_PREPARE=y | ||||
| CONFIG_HAVE_CONTEXT_TRACKING=y | ||||
| CONFIG_HAVE_C_RECORDMCOUNT=y | ||||
| CONFIG_HAVE_DEBUG_KMEMLEAK=y | ||||
| CONFIG_HAVE_DMA_API_DEBUG=y | ||||
| CONFIG_HAVE_DMA_ATTRS=y | ||||
| CONFIG_HAVE_DMA_CONTIGUOUS=y | ||||
| CONFIG_HAVE_DYNAMIC_FTRACE=y | ||||
| CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y | ||||
| CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y | ||||
| CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y | ||||
| CONFIG_HAVE_FUNCTION_TRACER=y | ||||
| CONFIG_HAVE_GENERIC_DMA_COHERENT=y | ||||
| CONFIG_HAVE_IDE=y | ||||
| CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y | ||||
| CONFIG_HAVE_MEMBLOCK=y | ||||
| CONFIG_HAVE_MOD_ARCH_SPECIFIC=y | ||||
| CONFIG_HAVE_NET_DSA=y | ||||
| CONFIG_HAVE_OPROFILE=y | ||||
| CONFIG_HAVE_OPTPROBES=y | ||||
| CONFIG_HAVE_PERF_EVENTS=y | ||||
| CONFIG_HAVE_PERF_REGS=y | ||||
| CONFIG_HAVE_PERF_USER_STACK_DUMP=y | ||||
| CONFIG_HAVE_PROC_CPU=y | ||||
| CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y | ||||
| CONFIG_HAVE_SMP=y | ||||
| CONFIG_HAVE_SYSCALL_TRACEPOINTS=y | ||||
| CONFIG_HAVE_UID16=y | ||||
| CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y | ||||
| CONFIG_HOTPLUG_CPU=y | ||||
| CONFIG_HVC_DRIVER=y | ||||
| CONFIG_HZ_FIXED=0 | ||||
| CONFIG_HZ_PERIODIC=y | ||||
| CONFIG_INITRAMFS_SOURCE="" | ||||
| CONFIG_IOMMU_HELPER=y | ||||
| CONFIG_IRQCHIP=y | ||||
| CONFIG_IRQ_DOMAIN=y | ||||
| CONFIG_IRQ_DOMAIN_HIERARCHY=y | ||||
| CONFIG_IRQ_FORCED_THREADING=y | ||||
| CONFIG_IRQ_WORK=y | ||||
| CONFIG_JBD2=y | ||||
| CONFIG_LIBFDT=y | ||||
| CONFIG_LOCK_SPIN_ON_OWNER=y | ||||
| CONFIG_MEMORY_BALLOON=y | ||||
| CONFIG_MIGHT_HAVE_CACHE_L2X0=y | ||||
| CONFIG_MIGHT_HAVE_PCI=y | ||||
| CONFIG_MODULES_USE_ELF_REL=y | ||||
| CONFIG_MULTI_IRQ_HANDLER=y | ||||
| CONFIG_MUTEX_SPIN_ON_OWNER=y | ||||
| CONFIG_NEED_DMA_MAP_STATE=y | ||||
| CONFIG_NEON=y | ||||
| CONFIG_NET_9P=y | ||||
| # CONFIG_NET_9P_DEBUG is not set | ||||
| CONFIG_NET_9P_VIRTIO=y | ||||
| CONFIG_NET_FLOW_LIMIT=y | ||||
| CONFIG_NO_BOOTMEM=y | ||||
| CONFIG_NR_CPUS=4 | ||||
| CONFIG_OF=y | ||||
| CONFIG_OF_ADDRESS=y | ||||
| CONFIG_OF_ADDRESS_PCI=y | ||||
| CONFIG_OF_EARLY_FLATTREE=y | ||||
| CONFIG_OF_FLATTREE=y | ||||
| CONFIG_OF_GPIO=y | ||||
| CONFIG_OF_IRQ=y | ||||
| CONFIG_OF_MTD=y | ||||
| CONFIG_OF_NET=y | ||||
| CONFIG_OF_PCI=y | ||||
| CONFIG_OF_PCI_IRQ=y | ||||
| CONFIG_OF_RESERVED_MEM=y | ||||
| CONFIG_OLD_SIGACTION=y | ||||
| CONFIG_OLD_SIGSUSPEND3=y | ||||
| CONFIG_OUTER_CACHE=y | ||||
| CONFIG_OUTER_CACHE_SYNC=y | ||||
| CONFIG_PADATA=y | ||||
| CONFIG_PAGE_OFFSET=0xC0000000 | ||||
| CONFIG_PCI=y | ||||
| # CONFIG_PCI_DOMAINS_GENERIC is not set | ||||
| CONFIG_PCI_HOST_GENERIC=y | ||||
| CONFIG_PERF_USE_VMALLOC=y | ||||
| CONFIG_PGTABLE_LEVELS=2 | ||||
| # CONFIG_PL310_ERRATA_588369 is not set | ||||
| # CONFIG_PL310_ERRATA_727915 is not set | ||||
| # CONFIG_PL310_ERRATA_753970 is not set | ||||
| # CONFIG_PL310_ERRATA_769419 is not set | ||||
| CONFIG_RATIONAL=y | ||||
| CONFIG_RCU_STALL_COMMON=y | ||||
| CONFIG_RFS_ACCEL=y | ||||
| CONFIG_RPS=y | ||||
| CONFIG_RTC_CLASS=y | ||||
| CONFIG_RTC_DRV_PL031=y | ||||
| CONFIG_RWSEM_SPIN_ON_OWNER=y | ||||
| CONFIG_RWSEM_XCHGADD_ALGORITHM=y | ||||
| CONFIG_SCHED_HRTICK=y | ||||
| # CONFIG_SCHED_INFO is not set | ||||
| CONFIG_SCSI=y | ||||
| CONFIG_SCSI_VIRTIO=y | ||||
| CONFIG_SERIAL_8250_FSL=y | ||||
| # CONFIG_SERIAL_AMBA_PL010 is not set | ||||
| CONFIG_SERIAL_AMBA_PL011=y | ||||
| CONFIG_SERIAL_AMBA_PL011_CONSOLE=y | ||||
| CONFIG_SERIAL_OF_PLATFORM=y | ||||
| CONFIG_SMP=y | ||||
| CONFIG_SMP_ON_UP=y | ||||
| CONFIG_SPARSE_IRQ=y | ||||
| CONFIG_SRCU=y | ||||
| CONFIG_SWIOTLB=y | ||||
| CONFIG_SWP_EMULATE=y | ||||
| CONFIG_SYS_SUPPORTS_APM_EMULATION=y | ||||
| # CONFIG_THUMB2_KERNEL is not set | ||||
| CONFIG_TICK_CPU_ACCOUNTING=y | ||||
| CONFIG_TREE_RCU=y | ||||
| CONFIG_UNCOMPRESS_INCLUDE="debug/uncompress.h" | ||||
| CONFIG_USE_OF=y | ||||
| CONFIG_VECTORS_BASE=0xffff0000 | ||||
| CONFIG_VFP=y | ||||
| CONFIG_VFPv3=y | ||||
| CONFIG_VIRTIO=y | ||||
| CONFIG_VIRTIO_BALLOON=y | ||||
| CONFIG_VIRTIO_BLK=y | ||||
| CONFIG_VIRTIO_CONSOLE=y | ||||
| CONFIG_VIRTIO_MMIO=y | ||||
| # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set | ||||
| CONFIG_VIRTIO_NET=y | ||||
| CONFIG_VIRTIO_PCI=y | ||||
| CONFIG_VIRTIO_PCI_LEGACY=y | ||||
| CONFIG_XPS=y | ||||
| CONFIG_XZ_DEC_ARM=y | ||||
| CONFIG_XZ_DEC_BCJ=y | ||||
| CONFIG_ZBOOT_ROM_BSS=0 | ||||
| CONFIG_ZBOOT_ROM_TEXT=0 | ||||
| CONFIG_ZONE_DMA_FLAG=0 | ||||
							
								
								
									
										24
									
								
								target/linux/armvirt/image/Makefile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								target/linux/armvirt/image/Makefile
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,24 @@ | ||||
| # | ||||
| # Copyright (C) 2016 Yousong Zhou <yszhou4tech@gmail.com> | ||||
| # | ||||
| # This is free software, licensed under the GNU General Public License v2. | ||||
| # See /LICENSE for more information. | ||||
| # | ||||
| include $(TOPDIR)/rules.mk | ||||
| include $(INCLUDE_DIR)/image.mk | ||||
|  | ||||
| define Image/BuildKernel | ||||
| 	cp $(KDIR)/$(KERNELNAME) $(BIN_DIR)/$(IMG_PREFIX)-$(KERNELNAME) | ||||
| endef | ||||
|  | ||||
| define Image/Build/Initramfs | ||||
| 	cp $(KDIR)/$(KERNELNAME)-initramfs $(BIN_DIR)/$(IMG_PREFIX)-$(KERNELNAME)-initramfs | ||||
| endef | ||||
|  | ||||
| define Image/Build | ||||
| 	$(call Image/Build/$(1)) | ||||
| 	dd if=$(KDIR)/root.$(1) bs=128k conv=sync | \ | ||||
| 		gzip -9n >$(BIN_DIR)/$(IMG_PREFIX)-root.$(1).gz | ||||
| endef | ||||
|  | ||||
| $(eval $(call BuildImage)) | ||||
		Reference in New Issue
	
	Block a user