Minnowboard:MinnowMaxBSD-Distros

'''THESE INSTRUCTIONS ARE NOT YET COMPLETE! THIS IS A WORK IN PROGRESS'''

= Considerations = The general process of setting up BSD for the MinnowBoard MAX is quite similar to setting up Linux on any other computer:
 * 1) Make a bootable installer for your distro of choice
 * 2) Plug in the storage volume you want to install to (i.e. a larger SATA or USB HDD, MicroSD card, etc.,)
 * 3) Install to that drive

However, there are a few things to keep in mind:


 * MicroSD cards:
 * When installing to a MicroSD card, be aware that these cards are frequently quite slow and may result in poor performance if you install an operating system to them.
 * SD Cards (as do all flash) have a limited number of writes, take care when using flash memory, particularly for SWAP as they can incur a lot of writes in a short period of time, ultimately leading to flash failure
 * USB Sticks:
 * SD Cards (as do all flash) have a limited number of writes, take care when using flash memory, particularly for SWAP as they can incur a lot of writes in a short period of time, ultimately leading to flash failure
 * Installing TO USB storage as well as installing FROM storage may cause issues, and you may have to wait for your installer to fully boot before plugging in the USB stick you intend to install to.

The MinnowBoard MAX ships with a 64-bit UEFI Firmware. UEFI can only work when the OS and Firmware are matched on what the architecture is. This means a 32-bit OS cannot be run from a 64-bit Firmware, and vice versa.

The ONLY available FreeBSD UEFI Loader supports 64-bit Operating Systems and 64-bit UEFI Firmware. There is no 32-bit FreeBSD UEFI Loader:

Support matrix of firmware and OS:

Running in an unsupported configuration may not even boot, but at the least will lead to very odd system interactions. Having a single firmware with UEFI that supports both is not possible.

A detailed explanation of this can be found On the MAX Bios page - 32-bit vs 64-bit UEFI section

= Installing FreeBSD 10.1 AMD64" =

Please Note: FreeBSD 10.0 Does NOT have a suitable UEFI image available for download.

Download the image
Download the FreeBSD UEFI memstick image from the link below:

ftp://ftp.freebsd.org/pub/FreeBSD/releases/ISO-IMAGES/10.1/FreeBSD-10.1-RELEASE-amd64-uefi-memstick.img

Create a bootable installer
To create a bootable USB installer drive for FreeBSD, you should use the "direct write method" such as:

dd if=FreeBSD-10.1-RELEASE-amd64-uefi-memstick.img of=/dev/sdX bs=64K

For instance If your freshly inserted USB is /dev/sdb then run the following command:

dd if=FreeBSD-10.1-RELEASE-amd64-uefi-memstick.img of=/dev/sdb bs=64K

If you have a Windows system use the method listed here:

https://www.freebsd.org/doc/handbook/install-pre.html#install-boot-media

Booting the Installer
Insert the USB drive into the Minnowboard Max and power it on. Once you get to the EFI shell, the following command will boot the installer:

fs0:\efi\boot\bootx64.efi

NOTE Consider waiting to plug in your installation target drive until after the FreeBSD installer has finished booting. This way you will surely know which device you are installing to, ie da0 or da1, etc. Once the system has fully booted insert the USB/SD card and the FreeBSD kernel will display the device name on screen, which will aid you in identifying the proper target device.

Install Process
This will be very similar to a normal FreeBSD installation process. Just be sure to select the correct storage volume to install to. Select the options to wipe whatever's on that volume already and repartition it automatically. The installer will create a 800K FAT EFI partition, a large UFS root partition, and then a small swap partition. This is all fine.

Final Steps
You may need to edit the /etc/fstab to reflect the appropriate root device or else your system may fail to boot after installation. The FreeBSD installer detected your installation media as well as your target device and numbered them accordingly.

If your installation target was drive da1 during the installation process then you need to change every instance of da1 to da0

Booting from your FreeBSD 10.1 Installation
fs0:\EFI\BOOT\bootx64.efi

NOTE: Your FreeBSD system WILL fail to boot if you create a boot entry in the UEFI Boot Manager.

The only current way to achieve unassisted booting of FreeBSD on the Minnowboard Max is to utilize a  file.

So utilize a 10.1 or greater image if you're not an experienced FreeBSD user. Once you have the FreeBSD UEFI loader on boot media you can boot older releases of