xref: /netbsd-src/sys/arch/evbarm/conf/mk.marvell (revision 25d856e749f08c7867213aa69d4734f8318bef47)
1#	$NetBSD: mk.marvell,v 1.6 2024/02/17 15:08:32 christos Exp $
2
3SYSTEM_FIRST_OBJ?=	marvell_start.o
4SYSTEM_FIRST_SFILE?=	${THISARM}/marvell/marvell_start.S
5
6_OSRELEASE!=		${HOST_SH} $S/conf/osrelease.sh
7
8KERNEL_BASE_PHYS?=0x00008000
9KERNEL_BASE_VIRT?=0xc0008000
10
11MKUBOOTIMAGEARGS=	-A arm -T kernel
12MKUBOOTIMAGEARGS+=	-a $(KERNEL_BASE_PHYS)
13MKUBOOTIMAGEARGS+=	-n "NetBSD/$(BOARDTYPE) ${_OSRELEASE}"
14.if ${MKREPRO_TIMESTAMP:Uno} != "no"
15MKUBOOTIMAGEARGS+=	-t "${MKREPRO_TIMESTAMP}"
16.endif
17MKUBOOTIMAGEARGS_NONE=	${MKUBOOTIMAGEARGS} -C none
18MKUBOOTIMAGEARGS_GZ=	${MKUBOOTIMAGEARGS} -C gz
19
20#
21# These not have expanding buffer over 4Mbyte. (before version 1.1.5)
22# And these cannot handle the endian of entry point. (1.1.4 and older)
23#
24SYSTEM_LD_TAIL_EXTRA+=; \
25	echo ${OBJCOPY} -S -O binary $@ $@.bin; \
26	${OBJCOPY} -S -O binary $@ $@.bin; \
27	echo ${TOOL_GZIP} -c $@.bin > $@.bin.gz; \
28	${TOOL_GZIP} -c $@.bin > $@.bin.gz; \
29	echo ${TOOL_MKUBOOTIMAGE} ${MKUBOOTIMAGEARGS_GZ} $@.bin.gz $@.gz.ub; \
30	${TOOL_MKUBOOTIMAGE} ${MKUBOOTIMAGEARGS_GZ} $@.bin.gz $@.gz.ub; \
31	echo ${TOOL_MKUBOOTIMAGE} ${MKUBOOTIMAGEARGS_NONE} $@.bin $@.ub; \
32	${TOOL_MKUBOOTIMAGE} ${MKUBOOTIMAGEARGS_NONE} $@.bin $@.ub; \
33	echo ${TOOL_MKUBOOTIMAGE} ${MKUBOOTIMAGEARGS_NONE:C/((-a (0x)*)([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2}))/\1 -e \3\7\6\5\4/W} $@.bin $@-old.ub; \
34	${TOOL_MKUBOOTIMAGE} ${MKUBOOTIMAGEARGS_NONE:C/((-a (0x)*)([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2}))/\1 -e \3\7\6\5\4/W} $@.bin $@-old.ub; \
35	echo
36
37EXTRA_KERNELS+= ${KERNELS:@.KERNEL.@${.KERNEL.}.bin@}
38EXTRA_KERNELS+= ${KERNELS:@.KERNEL.@${.KERNEL.}.bin.gz@}
39EXTRA_KERNELS+= ${KERNELS:@.KERNEL.@${.KERNEL.}.ub@}
40EXTRA_KERNELS+= ${KERNELS:@.KERNEL.@${.KERNEL.}.gz@}
41EXTRA_KERNELS+= ${KERNELS:@.KERNEL.@${.KERNEL.}.gz.ub@}
42EXTRA_KERNELS+= ${KERNELS:@.KERNEL.@${.KERNEL.}-old.ub@}
43