1 1.88 jmcneill # $NetBSD: Makefile.inc,v 1.88 2017/07/06 00:17:04 jmcneill Exp $ 2 1.1 thorpej # 3 1.1 thorpej # etc.evbarm/Makefile.inc -- evbarm-specific etc Makefile targets 4 1.1 thorpej # 5 1.1 thorpej 6 1.35 christos MKIMAGE= ${NETBSDSRCDIR}/distrib/utils/embedded/mkimage 7 1.35 christos 8 1.21 pavel # If you change the list of distributed kernels, don't forget 9 1.21 pavel # to update the release documentation in distrib/notes/common/contents 10 1.30 matt EVBARM_BOARDS= 11 1.53 matt .for i in armv4 xscale armv5t armv6 armv7 12 1.53 matt EVBARM_BOARDS.${i}= 13 1.53 matt .endfor 14 1.21 pavel 15 1.53 matt .if !empty(MACHINE_ARCH:M*eb) 16 1.77 martin IMAGEENDIAN= be 17 1.53 matt # big endian boards 18 1.55 matt KERNEL_SETS.armv4+= IXM1200 19 1.53 matt EVBARM_BOARDS.xscale+= ADI_BRH 20 1.53 matt KERNEL_SETS.xscale+= NSLU2 21 1.84 skrll KERNEL_SETS.armv7+= VEXPRESS_A15 22 1.84 skrll KERNEL_SETS.armv7hf+= VEXPRESS_A15 23 1.53 matt EVBARM_BOARDS.armv7+= BCM5301X 24 1.60 matt EVBARM_BOARDS.armv7hf+= BCM5301X 25 1.62 matt #EVBARM_BOARDS.armv7+= BCM56340 26 1.62 matt #EVBARM_BOARDS.armv7hf+= BCM56340 27 1.64 skrll EVBARM_BOARDS.armv7+= BPI 28 1.64 skrll EVBARM_BOARDS.armv7hf+= BPI 29 1.60 matt EVBARM_BOARDS.armv7+= CUBIEBOARD 30 1.60 matt EVBARM_BOARDS.armv7hf+= CUBIEBOARD 31 1.65 matt EVBARM_BOARDS.armv7+= CUBIETRUCK 32 1.65 matt EVBARM_BOARDS.armv7hf+= CUBIETRUCK 33 1.53 matt .else 34 1.77 martin IMAGEENDIAN= le 35 1.53 matt # little endian boards 36 1.53 matt #EVBARM_BOARDS.armv4+= ARMADILLO210 37 1.53 matt #EVBARM_BOARDS.armv4+= ARMADILLO9 38 1.53 matt EVBARM_BOARDS.armv4+= GEMINI 39 1.53 matt EVBARM_BOARDS.armv4+= INTEGRATOR 40 1.68 jmcneill EVBARM_BOARDS.armv4+= INTEGRATOR_CP 41 1.55 matt KERNEL_SETS.armv4+= IXM1200 42 1.53 matt #EVBARM_BOARDS.armv4+= MINI2440 43 1.53 matt #EVBARM_BOARDS.armv4+= MPCSA_GENERIC 44 1.53 matt #EVBARM_BOARDS.armv4+= NAPPI 45 1.53 matt EVBARM_BOARDS.armv4+= SMDK2410 46 1.53 matt EVBARM_BOARDS.armv4+= SMDK2800 47 1.53 matt EVBARM_BOARDS.armv4+= TS7200 48 1.53 matt EVBARM_BOARDS.xscale+= ADI_BRH 49 1.53 matt EVBARM_BOARDS.xscale+= CP3100 50 1.53 matt EVBARM_BOARDS.xscale+= GUMSTIX 51 1.53 matt KERNEL_SETS.xscale+= HDL_G 52 1.53 matt EVBARM_BOARDS.xscale+= IQ80310 53 1.53 matt EVBARM_BOARDS.xscale+= IQ80321 54 1.53 matt #EVBARM_BOARDS.xscale+= LUBBOCK 55 1.53 matt EVBARM_BOARDS.xscale+= TEAMASA_NPWR 56 1.53 matt EVBARM_BOARDS.xscale+= TWINTAIL 57 1.53 matt #EVBARM_BOARDS.xscale+= VIPER 58 1.53 matt #EVBARM_BOARDS.xscale+= ZAO425 59 1.53 matt #EVBARM_BOARDS.armv5t+= DNS323 60 1.53 matt #EVBARM_BOARDS.armv5t+= HPT5325 61 1.53 matt #EVBARM_BOARDS.armv5t+= IMX21_OLINUXINO 62 1.53 matt EVBARM_BOARDS.armv5t+= KUROBOX_PRO 63 1.53 matt #EVBARM_BOARDS.armv5t+= MARVELL_NAS 64 1.53 matt #EVBARM_BOARDS.armv5t+= MMNET_GENERIC 65 1.53 matt EVBARM_BOARDS.armv5t+= MV2120 66 1.53 matt #EVBARM_BOARDS.armv5t+= OPENBLOCKS_A6 67 1.53 matt EVBARM_BOARDS.armv5t+= OPENRD 68 1.53 matt #EVBARM_BOARDS.armv5t+= OSK5912 69 1.53 matt EVBARM_BOARDS.armv5t+= SHEEVAPLUG 70 1.53 matt #EVBARM_BOARDS.armv6+= IMX31LITE 71 1.53 matt #EVBARM_BOARDS.armv6hf+= IMX31LITE 72 1.53 matt EVBARM_BOARDS.armv6+= RPI 73 1.53 matt EVBARM_BOARDS.armv6hf+= RPI 74 1.70 skrll KERNEL_SETS.armv6+= RPI2 75 1.70 skrll KERNEL_SETS.armv6hf+= RPI2 76 1.56 matt EVBARM_BOARDS.armv6+= TISDP2420 77 1.56 matt EVBARM_BOARDS.armv6hf+= TISDP2420 78 1.56 matt #EVBARM_BOARDS.armv6+= TISDP2430 79 1.84 skrll KERNEL_SETS.armv7+= VEXPRESS_A15 80 1.84 skrll KERNEL_SETS.armv7hf+= VEXPRESS_A15 81 1.53 matt EVBARM_BOARDS.armv7+= ARMADAXP 82 1.62 matt EVBARM_BOARDS.armv7hf+= ARMADAXP 83 1.53 matt EVBARM_BOARDS.armv7+= BCM5301X 84 1.53 matt EVBARM_BOARDS.armv7hf+= BCM5301X 85 1.62 matt #EVBARM_BOARDS.armv7+= BCM56340 86 1.62 matt #EVBARM_BOARDS.armv7hf+= BCM56340 87 1.53 matt EVBARM_BOARDS.armv7+= BEAGLEBOARD 88 1.53 matt EVBARM_BOARDS.armv7hf+= BEAGLEBOARD 89 1.53 matt EVBARM_BOARDS.armv7+= BEAGLEBOARDXM 90 1.53 matt EVBARM_BOARDS.armv7hf+= BEAGLEBOARDXM 91 1.53 matt EVBARM_BOARDS.armv7+= BEAGLEBONE 92 1.53 matt EVBARM_BOARDS.armv7hf+= BEAGLEBONE 93 1.64 skrll EVBARM_BOARDS.armv7+= BPI 94 1.64 skrll EVBARM_BOARDS.armv7hf+= BPI 95 1.59 matt EVBARM_BOARDS.armv7+= CUBIEBOARD 96 1.59 matt EVBARM_BOARDS.armv7hf+= CUBIEBOARD 97 1.65 matt EVBARM_BOARDS.armv7+= CUBIETRUCK 98 1.65 matt EVBARM_BOARDS.armv7hf+= CUBIETRUCK 99 1.81 kiyohara EVBARM_BOARDS.armv7+= CUBOX 100 1.81 kiyohara EVBARM_BOARDS.armv7hf+= CUBOX 101 1.78 matt EVBARM_BOARDS.armv7+= CUBOX-I 102 1.78 matt EVBARM_BOARDS.armv7hf+= CUBOX-I 103 1.53 matt #EVBARM_BOARDS.armv7+= IGEPV2 104 1.82 ryo EVBARM_BOARDS.armv7+= IMX6UL-STARTER 105 1.82 ryo EVBARM_BOARDS.armv7hf+= IMX6UL-STARTER 106 1.79 jmcneill EVBARM_BOARDS.armv7+= TEGRA 107 1.79 jmcneill EVBARM_BOARDS.armv7hf+= TEGRA 108 1.80 ryo EVBARM_BOARDS.armv7+= ARMADILLO-IOT-G3 109 1.80 ryo EVBARM_BOARDS.armv7hf+= ARMADILLO-IOT-G3 110 1.74 matt EVBARM_BOARDS.armv7+= KOBO 111 1.74 matt EVBARM_BOARDS.armv7hf+= KOBO 112 1.62 matt EVBARM_BOARDS.armv7+= MIRABOX 113 1.62 matt EVBARM_BOARDS.armv7hf+= MIRABOX 114 1.53 matt #EVBARM_BOARDS.armv7+= N900 115 1.61 hkenken EVBARM_BOARDS.armv7+= NETWALKER 116 1.61 hkenken EVBARM_BOARDS.armv7hf+= NETWALKER 117 1.71 jmcneill EVBARM_BOARDS.armv7+= ODROID-C1 118 1.71 jmcneill EVBARM_BOARDS.armv7hf+= ODROID-C1 119 1.62 matt EVBARM_BOARDS.armv7+= OMAP5EVM 120 1.62 matt EVBARM_BOARDS.armv7hf+= OMAP5EVM 121 1.69 kiyohara EVBARM_BOARDS.armv7+= OVERO 122 1.69 kiyohara EVBARM_BOARDS.armv7hf+= OVERO 123 1.62 matt EVBARM_BOARDS.armv7+= PANDABOARD 124 1.62 matt EVBARM_BOARDS.armv7hf+= PANDABOARD 125 1.70 skrll EVBARM_BOARDS.armv7+= RPI2 126 1.70 skrll EVBARM_BOARDS.armv7hf+= RPI2 127 1.86 jmcneill KERNEL_SETS.armv7+= SUNXI 128 1.86 jmcneill KERNEL_SETS.armv7hf+= SUNXI 129 1.30 matt .endif 130 1.30 matt 131 1.40 christos IMAGE.rel= ${RELEASEDIR}/${RELEASEMACHINEDIR} 132 1.44 christos IMAGE.dir= ${IMAGE.rel}/binary/gzimg 133 1.40 christos IMAGE.kern= ${IMAGE.rel}/binary/kernel 134 1.49 garbled IMAGE.instk= ${IMAGE.rel}/installation/instkernel 135 1.40 christos 136 1.40 christos __mkimage: .USE 137 1.88 jmcneill TOOL_MAKE=${MAKE} \ 138 1.40 christos TOOL_MAKEFS=${TOOL_MAKEFS} \ 139 1.40 christos TOOL_DISKLABEL=${TOOL_DISKLABEL} \ 140 1.40 christos TOOL_FDISK=${TOOL_FDISK} \ 141 1.52 jakllsch TOOL_GZIP=${TOOL_GZIP} \ 142 1.40 christos TOOL_MKNOD=${TOOL_MKNOD} \ 143 1.40 christos TOOL_PAX=${TOOL_PAX} \ 144 1.76 jmcneill TOOL_MKUBOOTIMAGE=${TOOL_MKUBOOTIMAGE} \ 145 1.40 christos TOOL_MTREE=${TOOL_MTREE} \ 146 1.47 hans HOST_SH=${HOST_SH} \ 147 1.88 jmcneill KERNOBJDIR=${KERNOBJDIR} \ 148 1.88 jmcneill MACHINE=${MACHINE} \ 149 1.47 hans ${HOST_SH} ${MKIMAGE} -x -h ${.TARGET:S/smp_//} -D ${DESTDIR} \ 150 1.77 martin -S ${NETBSDSRCDIR} -B ${IMAGEENDIAN} ${MKI_OPTS.${.TARGET}} \ 151 1.43 jmcneill ${IMAGE.dir}/${.TARGET:S/smp_//}.img.gz 152 1.40 christos 153 1.53 matt ARCHES.arm= armv4 xscale armv5t armv6 armv7 154 1.54 matt ARCHES.armeb= armv4 xscale armv5t armv6 155 1.53 matt ARCHES.earm= xscale armv5t armv6 armv7 156 1.54 matt ARCHES.earmeb= xscale armv5t armv6 157 1.53 matt ARCHES.earmhf= armv6hf armv7hf 158 1.54 matt ARCHES.earmhfeb= armv6hf 159 1.53 matt ARCHES.earmv4= armv4 160 1.54 matt ARCHES.earmv4eb= armv4 161 1.54 matt ARCHES.earmv5= xscale armv5t 162 1.54 matt ARCHES.earmv5eb= xscale armv5t 163 1.53 matt ARCHES.earmv6= armv6 164 1.53 matt ARCHES.earmv6hf= armv6hf 165 1.54 matt ARCHES.earmv6eb= armv6 166 1.54 matt ARCHES.earmv6hfeb= armv6hf 167 1.53 matt ARCHES.earmv7= armv7 168 1.53 matt ARCHES.earmv7hf= armv7hf 169 1.54 matt ARCHES.earmv7eb= armv7 170 1.54 matt ARCHES.earmv7hfeb= armv7hf 171 1.54 matt .for arch in ${ARCHES.${MACHINE_ARCH}} 172 1.53 matt .for board in ${EVBARM_BOARDS.${arch}} 173 1.53 matt KERNEL_SETS+= ${board} 174 1.53 matt BUILD_KERNELS+= ${board}_INSTALL 175 1.53 matt .endfor 176 1.53 matt KERNEL_SETS+= ${KERNEL_SETS.${arch}} 177 1.53 matt .endfor 178 1.53 matt 179 1.72 jmcneill .if !empty(MACHINE_ARCH:M*armv7*) && empty(ALL_KERNELS) 180 1.72 jmcneill smp_armv7: __mkimage 181 1.72 jmcneill MKI_OPTS.smp_armv7= -K ${IMAGE.kern} 182 1.72 jmcneill SNAP_MD_POST_DEPS+= smp_armv7 183 1.48 mlelstv .endif 184 1.12 thorpej 185 1.53 matt .if !empty(KERNEL_SETS:MRPI) 186 1.72 jmcneill smp_rpi: __mkimage 187 1.50 mlelstv .if empty(ALL_KERNELS) || !empty(ALL_KERNELS:MRPI) 188 1.72 jmcneill MKI_OPTS.smp_rpi= -K ${IMAGE.kern}/netbsd-RPI.bin.gz 189 1.50 mlelstv SNAP_MD_POST_DEPS+= smp_rpi 190 1.50 mlelstv .endif 191 1.49 garbled smp_rpi_inst: ${IMAGE.instk}/netbsd-RPI_INSTALL.bin.gz __mkimage 192 1.50 mlelstv .if empty(ALL_KERNELS) || !empty(ALL_KERNELS:MRPI_INSTALL) 193 1.72 jmcneill MKI_OPTS.smp_rpi_inst= -b -K ${IMAGE.instk}/netbsd-RPI_INSTALL.bin.gz 194 1.50 mlelstv SNAP_MD_POST_DEPS+= smp_rpi_inst 195 1.30 matt .endif 196 1.48 mlelstv .endif 197 1.30 matt 198 1.42 jmcneill snap_md_post: check_DESTDIR check_RELEASEDIR snap_post .WAIT ${SNAP_MD_POST_DEPS} 199 1.40 christos 200 1.29 kiyohara KERNEL_SUFFIXES= bin srec ub 201 1.6 thorpej 202 1.9 lukem INSTALLATION_DIRS+= binary/gzimg \ 203 1.87 jmcneill installation/instkernel \ 204 1.87 jmcneill installation/ramdisk 205