Skip to content

Commit 9257eab

Browse files
authored
Andrums bootmode page fixups (raspberrypi#1334)
* Andrums bootmodes fixups * Small changes in copy-edit
1 parent 9957bfa commit 9257eab

File tree

1 file changed

+16
-20
lines changed
  • hardware/raspberrypi/bootmodes

1 file changed

+16
-20
lines changed

hardware/raspberrypi/bootmodes/msd.md

+16-20
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,30 @@
1-
# USB mass storage device boot
1+
# USB mass storage boot
22

3-
**USB mass storage boot is available on Raspberry Pi 3B, 3B+, 3A+, and 2B v1.2 only.**
3+
**USB mass storage boot is available on Raspberry Pi 2B v1.2, 3A+, 3B, and 3B+ only. Support for USB mass storage boot will be added to the Raspberry Pi 4B in a future software update.**
44

5-
This tutorial explains how to boot your Raspberry Pi from a USB mass storage device such as a flash drive or USB hard disk. Be warned that this feature is experimental and does not work with all USB mass storage devices. See [this blog post](https://www.raspberrypi.org/blog/pi-3-booting-part-i-usb-mass-storage-boot/) from Gordon Hollingworth for an explanation of why some USB mass storage devices don't work, as well as for some background information.
5+
This tutorial explains how to boot your Raspberry Pi from a USB mass storage device such as a flash drive or a USB hard disk. Note that this feature does not work with all USB mass storage devices.
66

7-
## Program USB boot mode
7+
## Program USB host boot mode (Raspberry Pi 3A+ and 3B only)
88

9-
The Raspberry Pi 3A+ and 3B+ are able to boot from USB without any changes, but the Raspberry Pi 3A and 3B require the USB boot bit to be set in the OTP (one-time programmable) memory. If you are using a Raspberry Pi 3A+ or 3B+, please go to the next section.
10-
11-
To enable the USB boot bit, the Raspberry Pi 3 needs to be booted from an SD card with a `config` option to enable USB boot mode.
9+
To enable USB host boot mode, the Raspberry Pi needs to be booted from an SD card with a special option to set the USB host boot mode bit in the OTP (one-time programmable) memory.
1210

1311
Once this bit has been set, the SD card is no longer required. **Note that any change you make to the OTP is permanent and cannot be undone.**
1412

15-
You can use any SD card running Raspbian or Raspbian Lite to program the OTP bit. If you don't have such an SD card then you can install Raspbian or Raspbian Lite in the normal way - see [installing images](../../../installation/installing-images/README.md).
16-
17-
First, prepare the `/boot` directory with up to date boot files (this step is not required if you're using the 2017-04-10 release of Raspbian/Raspbian Lite or a later one):
13+
**On the Raspberry Pi 3A+, setting the OTP bit to enable USB host boot mode will permanently prevent that Pi from booting in USB device mode.**
1814

19-
```bash
20-
$ sudo apt update && sudo apt full-upgrade
21-
```
15+
You can use any SD card running Raspbian or Raspbian Lite to program the OTP bit.
2216

23-
Then enable USB boot mode with this code:
17+
Enable USB host boot mode with this code:
2418

2519
```bash
2620
echo program_usb_boot_mode=1 | sudo tee -a /boot/config.txt
2721
```
2822

29-
This adds `program_usb_boot_mode=1` to the end of `/boot/config.txt`. Reboot the Raspberry Pi with `sudo reboot`, then check that the OTP has been programmed with:
23+
This adds `program_usb_boot_mode=1` to the end of `/boot/config.txt`.
24+
25+
Note that although the option is named `program_usb_boot_mode`, it only enables USB *host* boot mode. USB *device* boot mode is only available on certain models of Raspberry Pi - see [USB device boot mode](device.md).
26+
27+
The next step is to reboot the Raspberry Pi with `sudo reboot` and check that the OTP has been programmed with:
3028

3129
```bash
3230
$ vcgencmd otp_dump | grep 17:
@@ -35,16 +33,14 @@ $ vcgencmd otp_dump | grep 17:
3533

3634
Check that the output `0x3020000a` is shown. If it is not, then the OTP bit has not been successfully programmed. In this case, go through the programming procedure again. If the bit is still not set, this may indicate a fault in the Pi hardware itself.
3735

38-
If you wish, you can remove the `program_usb_boot_mode` line from config.txt, so that if you put the SD card in another Raspberry Pi, it won't program USB boot mode. Make sure there is no blank line at the end of config.txt. You can edit config.txt using the nano editor using the command `sudo nano /boot/config.txt`, for example.
36+
If you wish, you can remove the `program_usb_boot_mode` line from config.txt, so that if you put the SD card into another Raspberry Pi, it won't program USB host boot mode. Make sure there is no blank line at the end of config.txt.
3937

4038
## Prepare the USB mass storage device
4139

42-
Starting with the 2017-04-10 release of Raspbian you can install a working Raspbian system to a USB mass storage device by copying the operating system image directly onto your USB device, in the same way that you would for an SD card. To perform this step, follow the instructions [here](../../../installation/installing-images/README.md), remembering to select the drive that corresponds to your USB mass storage device.
40+
Copy a Raspbian or Raspbian Lite installation image directly onto your USB device, in the same way that you would for an SD card. To perform this step, follow the instructions [here](../../../installation/installing-images/README.md), remembering to select the drive that corresponds to your USB mass storage device. Make sure that you use a recent version of Raspbian/Raspbian Lite.
4341

4442
Once you have finished imaging your USB mass storage device, remove it from your computer and insert it into your Raspberry Pi.
4543

4644
## Boot your Raspberry Pi from the USB mass storage device
4745

48-
Attach the USB mass storage device to your Raspberry Pi, and power the Pi up. After five to ten seconds, the Raspberry Pi should begin booting and show the rainbow splash screen on an attached display.
49-
50-
Note that if the USB boot bit is set, you do not need to insert an SD card into the Raspberry Pi for USB boot to work.
46+
Attach the USB mass storage device to your Raspberry Pi, and power up the Pi. After five to ten seconds, the Raspberry Pi should begin booting and show the rainbow splash screen on an attached display. Make sure that you do not have an SD card inserted in the Pi, since if you do, it will boot from that first.

0 commit comments

Comments
 (0)