71 Commits

Author SHA1 Message Date
gjb
fb117627f6 Merge ^/projects/release-arm-redux into ^/head.
Of note:

- This commit adds native FreeBSD/arm release build support without
  requiring out-of-tree utilities.

- Part of this merge removes the WANDBOARD-{SOLO,DUAL,QUAD} kernel
  configuration files, for which the IMX6 kernel configuration file
  should be used instead.

- The resulting images have a 'freebsd' user (password 'freebsd'),
  to allow ssh(1) access when console access is not available (VGA
  or serial).  The default 'root' user password is set to 'root'.

- The /etc/ttys file for arm images now enable both ttyv0 and ttyu0
  by default.

Help from:	many (boot testing, feedback, etc.)
Sponsored by:	The FreeBSD Foundation
2015-05-09 21:08:12 +00:00
gjb
6c40325758 Use the IMX6 kernel configuration for the WANDBOARD build,
since it supports all of these board variants.

While here, remove the WANDBOARD-{QUAD,SOLO,DUAL} kernel
configuration files.

Discussed with:	ian
Sponsored by:	The FreeBSD Foundation
2015-05-08 18:55:09 +00:00
gjb
83dbcdd679 Strip the KERNEL from the mount paths, working around the following
error:

 root@releng2:/ # mount_msdosfs /dev/md5s1 /usr/obj/usr/src/release/WANDBOARD-QUAD/fat
 mount_msdosfs: /dev/md5s1: File name too long

Sponsored by:	The FreeBSD Foundation
2015-05-08 18:45:32 +00:00
gjb
eff85709da Fix path to the u-boot.imx file, which is relative to the root of
the chroot environment.

Sponsored by:	The FreeBSD Foundation
2015-05-08 17:53:44 +00:00
gjb
53b50c1a76 Touch '/firstboot' so the growfs rc(8) script runs.
Sponsored by:	The FreeBSD Foundation
2015-05-08 16:41:21 +00:00
gjb
d92941fb7d Fix the starting block of the partition.
Sponsored by:	The FreeBSD Foundation
2015-05-08 16:37:57 +00:00
gjb
261ee6d1dc Initial support for building the PANDABOARD image.
Sponsored by:	The FreeBSD Foundation
2015-05-08 16:00:06 +00:00
gjb
cf3aaa44c3 Add a file missed in the previous commit.
Sponsored by:	The FreeBSD Foundation
2015-05-08 15:23:21 +00:00
gjb
5924ca13e5 Copy arm/WANDBOARD-QUAD.conf to arm/WANDBOARD-{SOLO,DUAL}.conf.
Ian informed me a few months ago that the WANDBOARD-* kernels will
eventually be combined into one that will work across all these
boards, but for now, build them individually.

Sponsored by:	The FreeBSD Foundation
2015-05-08 15:22:29 +00:00
gjb
692717cb48 Fix FAT partition size.
Sponsored by:	The FreeBSD Foundation
2015-05-08 15:18:31 +00:00
gjb
26e678e2ac Initial support for building WANDBOARD-QUAD images.
Several parts of this were obtained from Crochet.

Sponsored by:	The FreeBSD Foundation
2015-05-08 15:07:17 +00:00
gjb
684abf744f Initial commit to support building RPI2 images, based on information
and documentation written by loos@ on the Wiki.

Sponsored by:	The FreeBSD Foundation
2015-05-08 13:55:27 +00:00
gjb
dc4500ae96 Do not create the uenv.txt file for RPI-B. It is not needed.
Submitted by:	ian
Sponsored by:	The FreeBSD Foundation
2015-05-08 10:39:52 +00:00
gjb
d0610f154f Copy the rpi.dtb file to the FAT partition, preventing the
'Unrecognized partition table' error, causing boot failure.

Sponsored by:	The FreeBSD Foundation
2015-05-07 23:49:48 +00:00
gjb
5c43f80d54 Remove the ZEDBOARD configuration file, as it does not
have a corresponding u-boot port in the Ports Collection.

Sponsored by:	The FreeBSD Foundation
2015-05-07 20:06:39 +00:00
gjb
22a124cc4e Spell 'u-boot.img' correctly.
Sponsored by:	The FreeBSD Foundation
2015-05-07 20:02:50 +00:00
gjb
8642bea698 Remove the arm/ROADMAP file.
Sponsored by:	The FreeBSD Foundation
2015-05-07 19:48:06 +00:00
gjb
6d28b8313e Remove arm/Makefile.{KERNEL} files, as this project
branch is now going in a different direction than
originally planned.

Sponsored by:	The FreeBSD Foundation
2015-05-07 19:47:15 +00:00
gjb
adf94dc7b1 Fix creating directories within DESTDIR.
Sponsored by:	The FreeBSD Foundation
2015-05-07 19:10:08 +00:00
gjb
a30e226e45 Fix a copy/paste mistake.
Sponsored by:	The FreeBSD Foundation
2015-05-07 18:53:48 +00:00
gjb
0b9e3dc2e4 Add entries to uenv.txt.
Obtained from:	Crochet
Sponsored by:	The FreeBSD Foundation
2015-05-07 18:51:59 +00:00
gjb
1b0542d03e Set NODOC=1 to avoid building the reldoc target.
Sponsored by:	The FreeBSD Foundation
2015-05-07 18:48:47 +00:00
gjb
ccd6128133 Add initial native suppor for RPI-B:
- Set UBLDR_LOADADDR.
 - Include files to install to the FAT partition.

Obtained from:	Crochet
Sponsored by:	The FreeBSD Foundation
2015-05-07 18:47:59 +00:00
gjb
de17051a05 Remove FDT_DIR definition, which is no longer needed.
Sponsored by:	The FreeBSD Foundation
2015-05-07 18:41:23 +00:00
gjb
355240e2f8 Reduce the number of files copied onto the FAT partition.
The DTB files are loaded from /boot/dtb on the UFS filesystem.

Submitted by:	loos
Sponsored by:	The FreeBSD Foundation
2015-05-07 18:32:11 +00:00
gjb
835daf69d3 In arm_install_uboot(), mount both FAT and UFS partitions
in the empty DESTDIR, and update path names.
Copy the ubldr to the FAT partition. [1]

Spotted by:	andrew [1]
Sponsored by:	The FreeBSD Foundation
2015-05-07 18:00:12 +00:00
gjb
8db5e66f89 Set UBLDR_LOADADDR for the BEAGLEBONE image.
Sponsored by:	The FreeBSD Foundation
2015-05-07 17:50:24 +00:00
gjb
dd14d1e0ad Do not rename u-boot.img file when copying to the FAT partition.
Sponsored by:	The FreeBSD Foundation
2015-05-07 17:48:19 +00:00
gjb
353abfd8a4 Fix file/directory paths.
Sponsored by:	The FreeBSD Foundation
2015-05-07 17:33:21 +00:00
gjb
db697baa50 Add tools/arm.subr to contain common subroutines used for
building arm images.  This is similar to tools/vmimage.subr
used for building virtual machine disk images.  By default,
only arm_create_disk() and arm_install_base() contain real
functionality here, and arm_install_uboot() must be overridden
in the arm/KERNEL.conf file.

In release.sh, make create_arm_armv6_build_release() do
something now.

In arm/BEAGLEBONE.conf, set IMAGE_SIZE, PART_SCHEME, FAT_SIZE,
FAT_TYPE, and MD_ARGS, as well as make arm_install_uboot()
functional.

Parts of this were taken from disecting a previous BEAGLEBONE
image, and other parts obtained from Crochet sources.

Sponsored by:	The FreeBSD Foundation
2015-05-06 19:58:12 +00:00
gjb
49990fc7c2 Update the arm/*.conf configuration files to only set
EMBEDDEDBUILD, EMBEDDED_TARGET, EMBEDDED_TARGET_ARCH,
EMBEDDEDPORTS, and KERNEL.

In release.sh, set TARGET and TARGET_ARCH to the
EMBEDDED_* variants from the configuration file.

Sponsored by:	The FreeBSD Foundation
2015-05-06 15:58:21 +00:00
gjb
7a5a99c8de In extra_chroot_setup(), use 'uname -U' to determine OSVERSION.
Move the port build for EMBEDDEDPORTS (if set) from arm/release.sh
to release.sh.

Remove arm/release.sh.

Sponsored by:	The FreeBSD Foundation
2015-05-06 15:41:43 +00:00
gjb
e9b794a6df MFH: r282315-r282534
Sponsored by:	The FreeBSD Foundation
2015-05-06 11:50:30 +00:00
gjb
7ac181d7c0 Fix building BEAGLEBONE images with Crochet using the
sysutils/u-boot-beaglebone port:

 - In arm/BEAGLEBONE.conf, set EMBEDDEDPORTS to the
   sysutils/u-boot-beaglebone port.
 - In arm/release.sh, remove BEAGLEBONE from setting WANT_UBOOT
 - In tools/arm/crochet-BEAGLEBONE.conf, override the
   beaglebone_check_uboot(), and set BEAGLEBONE_UBOOT to
   /tmp/external/u-boot-beaglebone, and create symlinks to the
   u-boot files in /usr/local/share/u-boot-beaglebone and the
   uEnv.txt file in crochet/board/Beaglebone/files.

Sponsored by:	The FreeBSD Foundation
2015-05-05 21:08:50 +00:00
gjb
fcd4d834e5 Remove buildenv_setup(), and set EMBEDDEDPORTS to the
sysutils/u-boot-rpi2 port, since these cases are already
handled by arm/release.sh.

Sponsored by:	The FreeBSD Foundation
2015-05-05 16:37:59 +00:00
gjb
0f66edf8be Add initial support for building RPI2 images.
In release.sh, allow overriding buildenv_setup() before
the handoff to arm/release.sh.

Copy arm/RPI-B.conf -> arm/RPI2.conf, set UBOOT_PORT and
the correct KERNEL, and add the buildenv_setup() override
to install the sysutils/u-boot-rpi2 port/package.

Copy tools/arm/crochet-RPI-B.conf -> tools/arm/crochet-RPI2.conf,
and set the correct entries for the RaspberryPi2 board.

Thanks to:	loos@
Sponsored by:	The FreeBSD Foundation
2015-05-05 16:28:04 +00:00
gjb
55e5b36d38 MFH: r281855-r282312
Sponsored by:	The FreeBSD Foundation
2015-05-01 18:07:18 +00:00
gjb
27341016bc Fix CROCHETBRANCH, forgotten in r280640.
Submitted by:	ruben.kerkhof@gmail.com
PR:		199760
MFC after:	3 days
Sponsored by:	The FreeBSD Foundation
2015-04-28 15:32:59 +00:00
gjb
d80ecfbe72 Attempt to create the final image (though not nearly ready
for it yet).

This is probably very broken and/or wrong, but that's why
we have projects branches.

Sponsored by:	The FreeBSD Foundation
2015-03-26 03:05:07 +00:00
gjb
6681de7bf9 MFH: r278968-r280640
Sponsored by:	The FreeBSD Foundation
2015-03-25 22:35:08 +00:00
gjb
b24b75c074 Crochet sources moved to a new home; update accordingly.
MFC after:	3 days
Sponsored by:	The FreeBSD Foundation
2015-03-25 22:08:02 +00:00
gjb
7665c62d04 Properly evaluate XZ_CMD from the chroot.
Sponsored by:	The FreeBSD Foundation
2015-03-02 18:10:58 +00:00
gjb
9ffc8ca9a2 Use xz(1) to compress FreeBSD/arm images.
Sponsored by:	The FreeBSD Foundation
2015-03-02 18:04:57 +00:00
gjb
14f6e421fa Add a ROADMAP file for FreeBSD/arm release builds, which
will make final documentation much easier when done.

Sponsored by:	The FreeBSD Foundation
2015-02-12 00:50:54 +00:00
gjb
2f97a00223 Fix build-arm-ports target for WANDBOARD-QUAD.
Sponsored by:	The FreeBSD Foundation
2015-02-11 20:51:58 +00:00
gjb
0790752ed0 Add CROSS_TOOLCHAIN for arm builds.
Remove a BOARDS entry left in while testing.
Add build-arm-ports${BOARD} target as a prerequisite when
ARMPORTS is set.
Add build-arm-KERNCONF and build-arm-ports to CLEANFILES.

Sponsored by:	The FreeBSD Foundation
2015-02-11 20:50:25 +00:00
gjb
7e24e21572 Initial restructure for FreeBSD/arm release builds.
Sponsored by:	The FreeBSD Foundation
2015-02-11 20:25:21 +00:00
emaste
3c6d556e12 Build gperf before gcc
The ARM image builds build the in-tree gcc in order to build u-boot
and gperf is needed to build gcc, but is no longer installed on archs
that use clang.

Invoking the make targets as separate steps is done to work around
a build failure which is not yet fully understood.

Reviewed by:	gjb, imp
Sponsored by:	The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D1317
2014-12-24 18:51:25 +00:00
gjb
3847bc3130 Set a static revision of the Crochet checkout to avoid
surprise build failures.

MFC after:	3 days
X-10.1-MFC:	yes
X-MFC-With:	r271676, r271677
Sponsored by:	The FreeBSD Foundation
2014-09-16 15:35:13 +00:00
gjb
84ac7e085c Catch up with Crochet changes to fix the WANDBOARD-QUAD
build.

Tested on:	stable/10@r271618
MFC after:	3 days
X-10.1-MFC:	yes
X-MFC-With:	r271676
Sponsored by:	The FreeBSD Foundation
2014-09-16 15:31:50 +00:00