version 1.76, 2018/10/30 14:28:28
|
version 1.77, 2018/10/30 14:35:31
|
Line 159 The device boots by finding a file "boot
|
Line 159 The device boots by finding a file "boot
|
|
|
The standard approach is to use a uSD card, with a fdisk partition table containing a FAT32 partition marked active, and a NetBSD partition. The NetBSD partition will then contain a disklabel, pointing to an FFS partition (a), a swap paritiion (b) and the FAT32 boot partition mounted as /boot (e). The file /boot/cmdline.txt has a line to set the root partition. |
The standard approach is to use a uSD card, with a fdisk partition table containing a FAT32 partition marked active, and a NetBSD partition. The NetBSD partition will then contain a disklabel, pointing to an FFS partition (a), a swap paritiion (b) and the FAT32 boot partition mounted as /boot (e). The file /boot/cmdline.txt has a line to set the root partition. |
|
|
One wrinkle in the standard approach is that the disk layout is "boot swap /", but the NetBSD fdisk partition starts at the location of /. The / partition can hold a disklabel, while swap cannot. It is normal to have swap after /, but this arrangement permits growing / on first boot, for the typical case where a larger uSD is used. |
One wrinkle in the standard approach is that the disk layout is "boot swap /", but the NetBSD fdisk partition starts at the location of /. The / partition can hold a disklabel, while swap cannot. It is normal to have swap after / (and thus within the fdisk partition), but the arrangement used permits growing / on first boot, for the typical case where a larger uSD is used, compared to the minimum image size. |
|
|
An alternate approach is to have the boot FAT32 partition as above, but to have the entire system including root on an external disk. This is configured by changing root=ld0a to root=sd0a or root=dk0 (depending on disklabel/GPT). Besides greateer space, part of the point is to avoid writing to the uSD card. |
An alternate approach is to have the boot FAT32 partition as above, but to have the entire system including root on an external disk. This is configured by changing root=ld0a to root=sd0a or root=dk0 (depending on disklabel/GPT). Besides greater space, part of the point is to avoid writing to the uSD card. |
|
|
A third approach, workable on the Pi 3 only, is to configure USB host booting (already enableed on the 3+) see the upstream documentation) and have the boot partition also on the external device. In this case the external device must be configured via fdisk because the hardware's first-stage boot does not have GPT support. \todo Explain if this has been observed to work. |
A third approach, workable on the Pi 3 only, is to configure USB host booting (already enableed on the 3+) see the upstream documentation) and have the boot partition also on the external device. In this case the external device must be configured via fdisk because the hardware's first-stage boot does not have GPT support. \todo Explain if this has been observed to work. |
\todo Explain if the [[procedure to program USB host boot mode|https://www.raspberrypi.org/documentation/hardware/raspberrypi/bootmodes/msd.md]] can function under NetBSD; the examples on the web use Raspbian. |
\todo Explain if the [[procedure to program USB host boot mode|https://www.raspberrypi.org/documentation/hardware/raspberrypi/bootmodes/msd.md]] can function under NetBSD; the examples on the web use Raspbian. |