Skip to content

Commit fd2c9d1

Browse files
committed
bpi-r3: Document eMMC flashing and booting with Infix
1 parent c4d6e6e commit fd2c9d1

File tree

2 files changed

+73
-1
lines changed

2 files changed

+73
-1
lines changed

board/aarch64/bananapi-bpi-r3/README.md

Lines changed: 71 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,76 @@ The board comes preconfigured with:
2222
- SFP ports for high-speed fiber connections
2323
- Dual WiFi interfaces for wireless connectivity
2424

25+
### Installing Infix on eMMC
26+
27+
> [!IMPORTANT]
28+
> No standard eMMC image exist yet, you have to create it your own
29+
> from the SD card image by replacing fip.bin in the SD card image to
30+
> the eMMC variant.
31+
32+
This guide describes how to install Infix on the internal eMMC storage of your BPI-R3.
33+
The installation process requires a FTDI cable for console access, SD
34+
card with Infix, a USB drive with the necessary bootloaders and eMMC
35+
system image, and involves configuring the board's boot switches.
36+
37+
#### Required files
38+
39+
Download the following files and place them on a FAT32-formatted USB drive:
40+
41+
1. **NAND bootloader files** (for initial setup):
42+
- [bpi-r3_spim-nand_bl2.img](https://github.com/frank-w/u-boot/releases/download/CI-BUILD-2025-10-bpi-2025.10-2025-10-13_1032/bpi-r3_spim-nand_bl2.img)
43+
- [bpi-r3_spim-nand_fip.bin](https://github.com/frank-w/u-boot/releases/download/CI-BUILD-2025-10-bpi-2025.10-2025-10-13_1032/bpi-r3_spim-nand_fip.bin)
44+
45+
2. **eMMC bootloader files**:
46+
- Download and extract [bpi-r3-emmc-boot-2025.01-latest.tar.gz](https://github.com/kernelkit/infix/releases/download/latest-boot/bpi-r3-emmc-boot-2025.01-latest.tar.gz)
47+
- This contains `bl2.img` and `fip.bin` for eMMC boot
48+
49+
3. **System image**:
50+
- `infix-bpi-r3-emmc.img` - The Infix system image for eMMC
51+
52+
#### Installation steps
53+
54+
**Step 1: Flash NAND bootloader**
55+
56+
Boot from SD card and break into U-Boot by pressing Ctrl-C during startup:
57+
58+
```
59+
usb start
60+
mtd erase spi-nand0
61+
fatload usb 0:1 0x50000000 bpi-r3_spim-nand_bl2.img
62+
mtd write spi-nand0 0x50000000 0x0 0x100000
63+
fatload usb 0:1 0x50000000 bpi-r3_spim-nand_fip.bin
64+
mtd write spi-nand0 0x50000000 0x380000 0x200000
65+
```
66+
67+
Power off the board and set the boot switch to **0101** (NAND boot mode), then power on.
68+
69+
**Step 2: Flash system to eMMC**
70+
71+
From the U-Boot prompt:
72+
73+
```
74+
usb start
75+
fatload usb 0:1 0x50000000 infix-bpi-r3-emmc.img
76+
setexpr blocks ${filesize} / 0x200
77+
mmc write 0x50000000 0x0 ${blocks}
78+
```
79+
80+
**Step 3: Configure eMMC bootloader**
81+
82+
Write the eMMC bootloader and configure the boot partition:
83+
84+
```
85+
mmc partconf 0 1 1 1
86+
mmc erase 0x0 0x400
87+
fatload usb 0:1 0x50000000 bl2.img
88+
mmc write 0x50000000 0x0 0x400
89+
mmc partconf 0 1 1 0
90+
mmc bootbus 0 0 0 0
91+
```
92+
93+
Power off the board, set the boot switch to **0110** (eMMC boot mode), and power on.
94+
Your BPI-R3 should now boot Infix from the internal eMMC storage.
95+
2596
### Pre-built images
2697
SD card image: [infix-bpi-r3-sdcard.img](https://github.com/kernelkit/infix/releases/download/latest-boot/infix-bpi-r3-sdcard.img)
27-

doc/ChangeLog.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ All notable changes to the project are documented in this file.
2424
VXLAN tunnels. This also changes the default TTL of tunnels to 64, from the
2525
kernel default (*inherit*), which in turn fixes reported issues with dropped
2626
OSPF Hello frames in GRE tunnels
27+
- [Document][bpi-r3-emmc-documentation] how to go from SD card to eMMC on bpi-r3
2728

2829
### Fixes
2930

@@ -32,6 +33,7 @@ All notable changes to the project are documented in this file.
3233
boot step "Mounting filesystems ..." with up to 30 seconds!
3334

3435
[lastest-boot]: https://github.com/kernelkit/infix/releases/latest-boot
36+
[bpi-r3-emmc-documentation]: https://github.com/kernelkit/infix/blob/main/board/aarch64/bananapi-bpi-r3/README.md
3537

3638
[v25.10.0][] - 2025-10-31
3739
-------------------------

0 commit comments

Comments
 (0)