11.8Schristos#	$NetBSD: mk.gumstix,v 1.8 2024/02/17 15:08:32 christos Exp $
21.1Skiyohara
31.7Sskrll.if ${BOARDTYPE} == "gumstix"
41.1SkiyoharaSYSTEM_FIRST_OBJ=	gumstix_start.o
51.1SkiyoharaSYSTEM_FIRST_SFILE=	${THISARM}/gumstix/gumstix_start.S
61.1Skiyohara
71.7SskrllKERNEL_BASE_PHYS=0xa0200000
81.7SskrllMKUBOOTEXTRAARGS=
91.7Sskrll.else
101.7SskrllSYSTEM_FIRST_OBJ=	armv6_start.o
111.7SskrllSYSTEM_FIRST_SFILE=	${ARM}/arm/armv6_start.S
121.2Skiyohara
131.6SkiyoharaKERNEL_BASE_PHYS=$(LOADADDRESS)
141.7SskrllMKUBOOTEXTRAARGS=	-O linux
151.2Skiyohara.endif
161.7Sskrll
171.7Sskrll_OSRELEASE!=            ${HOST_SH} $S/conf/osrelease.sh
181.7Sskrll
191.2SkiyoharaKERNEL_BASE_VIRT=$(LOADADDRESS)
201.2Skiyohara
211.7SskrllMKUBOOTIMAGEARGS=	-A arm -T kernel ${MKUBOOTEXTRAARGS}
221.2SkiyoharaMKUBOOTIMAGEARGS+=	-a $(KERNEL_BASE_PHYS)
231.2SkiyoharaMKUBOOTIMAGEARGS+=	-n "NetBSD/$(BOARDTYPE) ${_OSRELEASE}"
241.8Schristos.if ${MKREPRO_TIMESTAMP:Uno} != "no"
251.8SchristosMKUBOOTIMAGEARGS+=	-t "${MKREPRO_TIMESTAMP}"
261.8Schristos.endif
271.2SkiyoharaMKUBOOTIMAGEARGS_NONE=	${MKUBOOTIMAGEARGS} -C none
281.2SkiyoharaMKUBOOTIMAGEARGS_GZ=	${MKUBOOTIMAGEARGS} -C gz
291.1Skiyohara
301.1SkiyoharaSYSTEM_LD_TAIL_EXTRA+=; \
311.1Skiyohara	echo ${OBJCOPY} -S -O binary $@ $@.bin; \
321.2Skiyohara	${OBJCOPY} -S -O binary $@ $@.bin; \
331.5Skiyohara	echo ${TOOL_MKUBOOTIMAGE} ${MKUBOOTIMAGEARGS_NONE} $@.bin $@.ub; \
341.5Skiyohara	${TOOL_MKUBOOTIMAGE} ${MKUBOOTIMAGEARGS_NONE} $@.bin $@.ub; \
351.4Smatt	echo ${TOOL_GZIP} -c $@.bin > $@.bin.gz; \
361.4Smatt	${TOOL_GZIP} -c $@.bin > $@.bin.gz; \
371.3Smatt	echo ${TOOL_MKUBOOTIMAGE} ${MKUBOOTIMAGEARGS_GZ} $@.bin.gz $@.gz.ub; \
381.3Smatt	${TOOL_MKUBOOTIMAGE} ${MKUBOOTIMAGEARGS_GZ} $@.bin.gz $@.gz.ub
391.3Smatt
401.5Skiyohara#
411.5Skiyohara# U-boot that operates with old basix/connex has some bugs.
421.5Skiyohara#
431.2Skiyohara.if ${BOARDTYPE} == "gumstix"
441.2Skiyohara	#
451.2Skiyohara	# These not have expanding buffer over 4Mbyte. (before version 1.1.5)
461.2Skiyohara	# And these cannot handle the endian of entry point. (1.1.4 and older)
471.2Skiyohara	#
481.2SkiyoharaSYSTEM_LD_TAIL_EXTRA+=; \
491.3Smatt	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; \
501.3Smatt	${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
511.2Skiyohara.endif
521.2SkiyoharaSYSTEM_LD_TAIL_EXTRA+=; \
531.2Skiyohara	echo
541.1Skiyohara
551.1SkiyoharaEXTRA_KERNELS+= ${KERNELS:@.KERNEL.@${.KERNEL.}.bin@}
561.3SmattEXTRA_KERNELS+= ${KERNELS:@.KERNEL.@${.KERNEL.}.bin.gz@}
571.3SmattEXTRA_KERNELS+= ${KERNELS:@.KERNEL.@${.KERNEL.}.ub@}
581.3SmattEXTRA_KERNELS+= ${KERNELS:@.KERNEL.@${.KERNEL.}.gz.ub@}
591.3SmattEXTRA_KERNELS+= ${KERNELS:@.KERNEL.@${.KERNEL.}-old.ub@}
60