Commit Graph

7177 Commits

Author SHA1 Message Date
gjb
f930e15914 Fix virtual machine disk format creating by passing VMFORMAT
to mkimg(1)

PR:		200068
Submitted by:	Jeremy Norris
MFC after:	3 days
Sponsored by:	The FreeBSD Foundation
2015-05-11 14:53:07 +00:00
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
d16bf9c909 Sigh. Really fix CHECKSUM file creation.
Sponsored by:	The FreeBSD Foundation
2015-05-08 15:15:36 +00:00
gjb
c7d77fb592 Fix CHECKSUM file creation.
Sponsored by:	The FreeBSD Foundation
2015-05-08 15:10:00 +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
9aa9f68bf0 Do not include '/R' in the path when generating checksums, since
that will cause '/R' to be included in the CHECKSUM files.

Sponsored by:	The FreeBSD Foundation
2015-05-08 12:55:25 +00:00
gjb
cdb1ccc959 Move the finished image build to the '/R' directory (the
standard 'install' location for other architectures), then
compress the image with xz(1), and generate the CHECKSUM
files.

Sponsored by:	The FreeBSD Foundation
2015-05-08 12:50:48 +00:00
gjb
d03c979953 Fix the name of the final image.
Sigh.  Thou shalt not commit before coffee.

Sponsored by:	The FreeBSD Foundation
2015-05-08 10:47:57 +00:00
gjb
28058afb01 Rename KERNEL.img -> OSRELEASE-KERNEL.img when complete.
Sponsored by:	The FreeBSD Foundation
2015-05-08 10:43:29 +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
c8fa25fd06 Fix path to /boot/msdos for the target image.
Sponsored by:	The FreeBSD Foundation
2015-05-08 10:38:32 +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
463d845cba Reorder / and /boot/msdos mount to avoid the following error:
Mounting local file systems:
mount: /boot/msdos: No such file or directory

Sponsored by:	The FreeBSD Foundation
2015-05-07 23:46:33 +00:00
gjb
2bf3795a46 Create the /boot/msdos directory so the FAT partition is mounted
properly.

Noticed by:	sbruno
Sponsored by:	The FreeBSD Foundation
2015-05-07 20:25:17 +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
22dede213e Enable the growfs rc(8) script.
Sponsored by:	The FreeBSD Foundation
2015-05-07 18:49:43 +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
7d456fbbb9 Fix paths.
Remove the temporary directory when done with it.
Destroy the md(4) device when done with it.

Sponsored by:	The FreeBSD Foundation
2015-05-07 17:40:00 +00:00
gjb
3d9f396598 In arm_create_disk(), chroot(8) to the build environment
is necessary.

In arm_install_base(), chroot(8) when installing world
and kernel.  Fix paths for fstab(5) and rc.conf(5).

Sponsored by:	The FreeBSD Foundation
2015-05-07 17:35:48 +00:00
gjb
353abfd8a4 Fix file/directory paths.
Sponsored by:	The FreeBSD Foundation
2015-05-07 17:33:21 +00:00
gjb
af0be5ff22 In release.sh, create the /dev directory within the chroot
before attempting to mount(8) devfs.  Also, create the
.OBJDIR for the 'release' target, so files end up in the
correct location.

In tools/arm.subr, fix the target device when creating the
gpart partition scheme.

Sponsored by:	The FreeBSD Foundation
2015-05-07 00:27:28 +00:00
gjb
1def0e984e Use the correct variable for the tools/TARGET.conf file.
Sponsored by:	The FreeBSD Foundation
2015-05-06 23:26:51 +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
51eaadc0d0 Evaluage chroot_build_release_cmd based on the TARGET/TARGET_ARCH
of the build target.

Move arm/armv6 'release' bits to chroot_arm_armv6_build_release().

Sponsored by:	The FreeBSD Foundation
2015-05-06 18:16:27 +00:00
gjb
be8dfe41ce buildenv_setup(), if overridden in the configuration file,
only needs to be invoked once.

Sponsored by:	The FreeBSD Foundation
2015-05-06 16:21:12 +00:00
gjb
c0b6e73450 Remove Crochet invocation.
Sponsored by:	The FreeBSD Foundation
2015-05-06 16:04:11 +00:00
gjb
1289a25572 Remove crochet configuration files and tools/arm/ directory.
Sponsored by:	The FreeBSD Foundation
2015-05-06 15:59:29 +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