Home | History | Annotate | Line # | Download | only in etc.evbarm
Makefile.inc revision 1.122.2.1
      1 #	$NetBSD: Makefile.inc,v 1.122.2.1 2021/05/31 22:06:55 cjep Exp $
      2 #
      3 #	etc.evbarm/Makefile.inc -- evbarm-specific etc Makefile targets
      4 #
      5 
      6 MKIMAGE= ${NETBSDSRCDIR}/distrib/utils/embedded/mkimage
      7 
      8 # If you change the list of distributed kernels, don't forget
      9 # to update the release documentation in distrib/notes/common/contents
     10 EVBARM_BOARDS=
     11 .for i in armv4 xscale armv5t armv6 armv7 arm64
     12 EVBARM_BOARDS.${i}=
     13 .endfor
     14 
     15 .if !empty(MACHINE_ARCH:M*eb)
     16 IMAGEENDIAN=	be
     17 # big endian boards
     18 KERNEL_SETS.armv4+=		IXM1200
     19 
     20 EVBARM_BOARDS.xscale+=		ADI_BRH
     21 KERNEL_SETS.xscale+=		NSLU2
     22 
     23 EVBARM_BOARDS.armv6+=		RPI
     24 EVBARM_BOARDS.armv6hf+=	 	RPI
     25 KERNEL_SETS.armv6+=		RPI2
     26 KERNEL_SETS.armv6hf+=	 	RPI2
     27 
     28 KERNEL_SETS.armv7+=		GENERIC
     29 KERNEL_SETS.armv7hf+=		GENERIC
     30 KERNEL_SETS.arm64+=		GENERIC64
     31 .else
     32 IMAGEENDIAN=	le
     33 # little endian boards
     34 #EVBARM_BOARDS.armv4+=		ARMADILLO210
     35 #EVBARM_BOARDS.armv4+=		ARMADILLO9
     36 EVBARM_BOARDS.armv4+=		GEMINI
     37 EVBARM_BOARDS.armv4+=		INTEGRATOR
     38 EVBARM_BOARDS.armv4+=		INTEGRATOR_CP
     39 KERNEL_SETS.armv4+=		IXM1200
     40 #EVBARM_BOARDS.armv4+=		MINI2440
     41 #EVBARM_BOARDS.armv4+=		MPCSA_GENERIC
     42 #EVBARM_BOARDS.armv4+=		NAPPI
     43 EVBARM_BOARDS.armv4+=		SMDK2410
     44 EVBARM_BOARDS.armv4+=		SMDK2800
     45 EVBARM_BOARDS.armv4+=		TS7200
     46 
     47 EVBARM_BOARDS.xscale+=		ADI_BRH
     48 EVBARM_BOARDS.xscale+=		CP3100
     49 EVBARM_BOARDS.xscale+=		GUMSTIX
     50 KERNEL_SETS.xscale+=		HDL_G
     51 EVBARM_BOARDS.xscale+=		IQ80310
     52 EVBARM_BOARDS.xscale+=		IQ80321
     53 #EVBARM_BOARDS.xscale+=		LUBBOCK
     54 EVBARM_BOARDS.xscale+=		TEAMASA_NPWR
     55 EVBARM_BOARDS.xscale+=		TWINTAIL
     56 #EVBARM_BOARDS.xscale+=		VIPER
     57 #EVBARM_BOARDS.xscale+=		ZAO425
     58 
     59 #EVBARM_BOARDS.armv5t+=		DNS323
     60 #EVBARM_BOARDS.armv5t+=		HPT5325
     61 #EVBARM_BOARDS.armv5t+=		IMX23_OLINUXINO
     62 EVBARM_BOARDS.armv5t+=		KUROBOX_PRO
     63 #EVBARM_BOARDS.armv5t+=		MARVELL_NAS
     64 #EVBARM_BOARDS.armv5t+=		MMNET_GENERIC
     65 EVBARM_BOARDS.armv5t+=		MV2120
     66 #EVBARM_BOARDS.armv5t+=		OPENBLOCKS_A6
     67 EVBARM_BOARDS.armv5t+=		OPENRD
     68 #EVBARM_BOARDS.armv5t+=		OSK5912
     69 EVBARM_BOARDS.armv5t+=		SHEEVAPLUG
     70 
     71 #EVBARM_BOARDS.armv6+=		IMX31LITE
     72 #EVBARM_BOARDS.armv6hf+= 	IMX31LITE
     73 EVBARM_BOARDS.armv6+=		RPI
     74 EVBARM_BOARDS.armv6hf+=	 	RPI
     75 KERNEL_SETS.armv6+=		RPI2
     76 KERNEL_SETS.armv6hf+=	 	RPI2
     77 EVBARM_BOARDS.armv6+=		TISDP2420
     78 EVBARM_BOARDS.armv6hf+= 	TISDP2420
     79 #EVBARM_BOARDS.armv6+=		TISDP2430
     80 
     81 KERNEL_SETS.armv7+=		GENERIC
     82 KERNEL_SETS.armv7hf+=		GENERIC
     83 KERNEL_SETS.arm64+=		GENERIC64
     84 .endif
     85 
     86 IMAGE.rel=	${RELEASEDIR}/${RELEASEMACHINEDIR}
     87 IMAGE.dir=	${IMAGE.rel}/binary/gzimg
     88 IMAGE.kern=	${IMAGE.rel}/binary/kernel
     89 IMAGE.instk=	${IMAGE.rel}/installation/instkernel
     90 
     91 __mkimage: .USE
     92 	TOOL_MAKE=${MAKE} \
     93 	TOOL_MAKEFS=${TOOL_MAKEFS} \
     94 	TOOL_DISKLABEL=${TOOL_DISKLABEL} \
     95 	TOOL_FDISK=${TOOL_FDISK} \
     96 	TOOL_GPT=${TOOL_GPT} \
     97 	TOOL_GZIP=${TOOL_GZIP} \
     98 	TOOL_MKNOD=${TOOL_MKNOD} \
     99 	TOOL_PAX=${TOOL_PAX} \
    100 	TOOL_MKUBOOTIMAGE=${TOOL_MKUBOOTIMAGE} \
    101 	TOOL_MTREE=${TOOL_MTREE} \
    102 	HOST_SH=${HOST_SH} \
    103 	KERNOBJDIR=${KERNOBJDIR} \
    104 	MACHINE=${MACHINE} \
    105 	MKDTB=${MKDTB} \
    106 	${HOST_SH} ${MKIMAGE} -x -h ${.TARGET:S/smp_//} -D ${DESTDIR} \
    107 	    -S ${NETBSDSRCDIR} -B ${IMAGEENDIAN} ${MKI_OPTS.${.TARGET}} \
    108 	    ${IMAGE.dir}/${.TARGET:S/smp_//}.img.gz
    109 
    110 ARCHES.earmv4=		armv4
    111 ARCHES.earmv4eb=	armv4
    112 ARCHES.earmv5=		xscale armv5t
    113 ARCHES.earmv5eb=	xscale armv5t
    114 ARCHES.earmv6=		armv6
    115 ARCHES.earmv6hf=	armv6hf
    116 ARCHES.earmv6eb=	armv6
    117 ARCHES.earmv6hfeb=	armv6hf
    118 ARCHES.earmv7=		armv7
    119 ARCHES.earmv7hf=	armv7hf
    120 ARCHES.earmv7eb=	armv7
    121 ARCHES.earmv7hfeb=	armv7hf
    122 ARCHES.aarch64=		arm64
    123 ARCHES.aarch64eb=	arm64
    124 .for arch in ${ARCHES.${MACHINE_ARCH}}
    125 .for board in ${EVBARM_BOARDS.${arch}}
    126 KERNEL_SETS+=		${board}
    127 BUILD_KERNELS+=		${board}_INSTALL
    128 .endfor
    129 KERNEL_SETS+=		${KERNEL_SETS.${arch}}
    130 .endfor
    131 
    132 .if !empty(MACHINE_ARCH:Maarch64*)
    133 smp_efibootaa64:
    134 	cd ${KERNSRCDIR}/stand/efiboot/bootaa64 && ${MAKE} release
    135 SNAP_MD_POST_DEPS+=	smp_efibootaa64
    136 INSTALLATION_DIRS+=	installation/misc
    137 .endif
    138 
    139 .if !empty(MACHINE_ARCH:Mearmv7hf)
    140 smp_efibootarm:
    141 	cd ${KERNSRCDIR}/stand/efiboot/bootarm && ${MAKE} release
    142 SNAP_MD_POST_DEPS+=	smp_efibootarm
    143 INSTALLATION_DIRS+=	installation/misc
    144 .endif
    145 
    146 .if !empty(MACHINE_ARCH:M*armv7*) && empty(ALL_KERNELS)
    147 smp_armv7: __mkimage
    148 MKI_OPTS.smp_armv7=	-K ${IMAGE.kern}
    149 SNAP_MD_POST_DEPS+=	smp_armv7
    150 .endif
    151 
    152 .if !empty(MACHINE_ARCH:Maarch64*) && empty(ALL_KERNELS)
    153 smp_arm64: __mkimage
    154 MKI_OPTS.smp_arm64=	-K ${IMAGE.kern}
    155 SNAP_MD_POST_DEPS+=	smp_arm64
    156 smp_arm64mbr: __mkimage
    157 MKI_OPTS.smp_arm64mbr=	-K ${IMAGE.kern}
    158 SNAP_MD_POST_DEPS+=	smp_arm64mbr
    159 .endif
    160 
    161 .if !empty(KERNEL_SETS:MRPI)
    162 smp_rpi: __mkimage
    163 .if empty(ALL_KERNELS) || !empty(ALL_KERNELS:MRPI)
    164 MKI_OPTS.smp_rpi=	-K ${IMAGE.kern}/netbsd-RPI.img.gz
    165 SNAP_MD_POST_DEPS+=	smp_rpi
    166 .endif
    167 smp_rpi_inst: ${IMAGE.instk}/netbsd-RPI_INSTALL.img.gz __mkimage
    168 .if empty(ALL_KERNELS) || !empty(ALL_KERNELS:MRPI_INSTALL)
    169 MKI_OPTS.smp_rpi_inst=	-b -K ${IMAGE.instk}/netbsd-RPI_INSTALL.img.gz
    170 SNAP_MD_POST_DEPS+=	smp_rpi_inst
    171 .endif
    172 .endif
    173 
    174 snap_md_post: check_DESTDIR check_RELEASEDIR snap_post .WAIT ${SNAP_MD_POST_DEPS}
    175 
    176 KERNEL_SUFFIXES=	bin img srec ub
    177 
    178 INSTALLATION_DIRS+=	binary/gzimg		\
    179 			installation/instkernel
    180