You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: hardware/computemodule/cm-emmc-flashing.md
+7-5Lines changed: 7 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,15 +6,15 @@ Please also read the section on [Module booting and flashing the eMMC](cm-design
6
6
7
7
## Steps to flash the eMMC on a Compute Module
8
8
9
-
You need a host Linux system; a Raspberry Pi is recommended but you should be able to use any recent Linux distribution and you can also now use this tool via Cygwin on Windows.
9
+
You need a host Linux system; a Raspberry Pi is recommended but you should be able to use any recent Linux distribution and you can also use this tool via Cygwin on Windows.
10
10
11
11
Note that there is a bug in the BCM2835 bootloader which returns a slightly incorrect USB packet to the host. Most USB hosts seem to ignore this benign bug and work OK, however we do see some USB ports that due to this bug do not work. We don't quote understand why some ports fail - it doesn't seem to be correlated with whether they are USB2 or USB3 (we have seen both types working) but is likely specific to the host controller and driver.
12
12
13
13
**For Windows Users**
14
14
15
15
To use the tool under Cygwin on Windows firstly you'll need to install [Cygwin](https://www.cygwin.com/). You'll need to make sure to install the libusb-1.0 and libusb-1.0-devel packages (NB tested using version 1.0.19-1) as well as gcc and Make.
16
16
17
-
You then need to install the Windows driver which can be downloaded here: [bcm270x-boot-driver.zip](bcm270x-boot-driver.zip). To install the driver firstly plug the host machine into the Compute Module IO Board USB slave port (J15) and power on the CMIO board. Windows will see a new USB hardware device "BCM2708 Boot".
17
+
You then need to install the Windows driver which can be downloaded here: [bcm270x-boot-driver.zip](bcm270x-boot-driver.zip). To install the driver firstly make sure that J4 (USB SLAVE BOOT ENABLE) is set to the 'EN' position, then plug the host machine into the Compute Module IO Board USB slave port (J15) and finally apply power to the CMIO board. Windows will see a new USB hardware device "BCM2708 Boot".
@@ -75,15 +75,17 @@ Run the usbboot tool and it will wait for a connection:
75
75
sudo rpiboot
76
76
```
77
77
78
-
Now plug the host machine into the Compute Module IO Board USB slave port (J15) and power on the CMIO board. The usbboot tool will discover the Compute Module and send boot code to allow access to the eMMC.
78
+
Now plug the host machine into the Compute Module IO Board USB slave port (J15) and power on the CMIO board. The rpiboot tool will discover the Compute Module and send boot code to allow access to the eMMC.
79
79
80
80
## Writing to the eMMC - Cygwin
81
81
82
-
After running rpiboot a new USB mass storage drive will appear in Windows. We recommend following this [guide](../../installation/installing-images/windows.md) and using Win32DiskImager to write images to the drive, rather than trying to use /dev/sda etc. from Cygwin.
82
+
After rpiboot completes a new USB mass storage drive will appear in Windows. We recommend following this [guide](../../installation/installing-images/windows.md) and using Win32DiskImager to write images to the drive, rather than trying to use /dev/sda etc. from Cygwin.
83
+
84
+
Once you have written an OS image make sure J4 (USB SLAVE BOOT ENABLE) is set to the disabled position and/or nothing is plugged into the USB slave port. Power cycling the IO board should result in the Compute Module booting the OS image from eMMC.
83
85
84
86
## Writing to the eMMC - Linux
85
87
86
-
Once complete you will see a new device appear; this is commonly /dev/sda but it could be another location such as /dev/sdb, so check in /dev/ before running rpiboot so you can see what changes.
88
+
After rpiboot completes you will see a new device appear; this is commonly /dev/sda on a Pi but it could be another location such as /dev/sdb, so check in /dev/ before running rpiboot so you can see what changes.
87
89
88
90
You now need to write a raw OS image (such as [Raspbian](http://downloads.raspberrypi.org/raspbian_latest)) to the device. Note the following command may take some time to complete, depending on the size of the image:
0 commit comments