Banana Pi BPI-R3 Mini Router board with MediaTek MT7986(Filogic 830),support Wi-Fi 6,2.5GbE

i have initrd file here: should be placed in BPI-BOOT (not BPI-ROOT)

https://drive.google.com/drive/folders/1fxDR-uL3DIO-8ebgqOJd5MoWORQTTm7Z?usp=drive_link

there are some files with cpio in name (not the md5 files of course)

and set the initrd-var in uEnv.txt to its name

gpt fix should be done this way (change filename and device):

sudo sgdisk --backup=bpi-r3_sgdisk.gpt /dev/sdb
sudo sgdisk --load-backup=bpi-r3_sgdisk.gpt /dev/sdb
1 Like

Maybe follow the advise there … when run on the device, parted will ask to repair if it sees this error.

Just don’t know how to run parted on system what can not boot. All I have is just u-boot console. Not sure - may be u-boot has parted builtin.

Just insert sdcard in any linux host computer …

It is r3mini…no sdcard :slight_smile:

my initrd file should have parted in

This board has no sdcard. Only soldered emmc chip on board.

oops, was not paying attention there :wink:

@frank-w if you make emmc image size same as size of mmcblk0 then should not yet this error, even when dd-ing an image…

dd if=/dev/zero of=my.img bs=1M count=7456 status=progress conv=notrunc,fsync

yes, but maybe different emmc chips are used with slightly different size…my uboot-repo does not make a difference between SD/emmc when creating base image

So far, all the same size.

ok, have updated my atf-branch to use this size and triggered rebuild of uboot 2023-10 in CI pipeline

Yo-ho-ho! Finally got it working.

Debian GNU/Linux 11 bpi-r3 ttyS0

bpi-r3 login: root
Password: 
Linux bpi-r3 6.1.0-bpi-r3-main #1 SMP Fri Dec 16 10:37:25 CET 2022 aarch64
root@bpi-r3:~# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        ether 3e:31:34:69:e3:63  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 121  

lanbr0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 192.168.1.1  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fd00:a::10  prefixlen 64  scopeid 0x0<global>
        ether 96:3f:c5:84:65:f0  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 8  bytes 616 (616.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 8  bytes 616 (616.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Thank you very much for support!!!

Ohhh - no - seems wrong kernel loaded.

yes, seems again the 6.1-main-tree :slight_smile: not the 6.6-r3mini

Well - in my previous “success” attempt it was old kernel in emms (your main branch kernel). It loading well but not all the network devices present.

If load kernel from 6.6r3-mini branch (from flash stick) so we have the following errors:

[    6.198147] clk: Disabling unused clocks
[    6.225181] /dev/root: Can't open blockdev
[    6.229327] VFS: Cannot open root device  or unknown-block(0,0): error -6
[    6.236272] Please append a correct root= boot option; here are the available partitions:
[    6.244618] List of all bdev filesystems:
[    6.248617]  ext3
[    6.248619]  ext2
[    6.250533]  ext4
[    6.252447]  squashfs
[    6.254359]  vfat
[    6.256620]  f2fs
[    6.258533]
[    6.261930] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
[    6.270175] CPU: 2 PID: 1 Comm: swapper/0 Not tainted 6.6.0-bpi-r314bea7d278205bc8f10cc4132b595a24ca203745 #1
[    6.280068] Hardware name: Bananapi BPI-R3 Mini (DT)
[    6.285017] Call trace:
[    6.287452]  dump_backtrace+0x98/0x118
[    6.291195]  show_stack+0x18/0x24
[    6.294498]  dump_stack_lvl+0x48/0x60
[    6.298150]  dump_stack+0x18/0x24

But at least root fs now has no issues. It was one of images you provided earlier. So at least I can boot to something. Board what I received initially was with some broken openwrt image what was not even able to boot.

Does 6.6-main work with filesystem? Maybe emmc config is more like full r3 and we made a mistake in r3mini dts…if not it may a driver issue between 6.1 and 6.6…so you can try 6.2-main till 6.5-main to nail the first broken kernel version down

Better is to use initrd to made some additional tests like pinctrl and clock debugs or looking into dmesg and sysfs

Hmmm … will try to investigate what is going on there.

As you use my uboot you can do this (having itb and inird as separate files on root dir of usb stick,adjust filenames as needed):

BPI-R3> run useusb
BPI-R3> setenv initrd rootfs.cpio.zst
BPI-R3> setenv fit bpi-r3.itb
BPI-R3> setenv bootconf "#conf-2" #set config in fit e.g. #conf-emmc-mini
BPI-R3> run newboot

So you are able to test multiple kernels in short time.

But it looks like emmc config in dts is same for r3 and r3mini

Hi There, could you please advice how do you connect this card to R3 Mini. and what about current limitation?