Sinovoip BananaPi BPi-R64 V1.1, V1.2

Bananapi BPi-R64 board

Prepare SD Card:

gzip -cd bananapi_bpi-r64-sdcard.img.gz > /dev/mmcblkX

This card can now be used to boot OpenWrt recovery (==initramfs) as well as production (==with f2fs overlay) system from that card. When running OpenWrt from the SD card, you can trigger the installation of the bootloader and OpenWrt images to the on-board eMMC or SPI-NAND flash by setting a bootloader environment variable or by using the bootloader menu accessible via the serial console. If you do not have access to the serial console, connect via SSH and access the U-Boot environment using `fw_setenv`:

fw_setenv bootcmd run emmc_init

At the next reboot the bootloader on the SD card will write ARM Trusted Firmware, U-Boot and the OpenWrt images contained on the SD card to the eMMC. You can then switch to boot from eMMC and use sysupgrade to keep the system up-to-date.

Alternatively, installation to the on-board SPI-NAND flash chip can be achieved as well:

fw_setenv bootcmd run ubi_init

At the next reboot the bootloader on the SD Card will write ARM Trusted Firmware, U-Boot and the OpenWrt images contained on the SD card to the SPI-NAND flash. Wait for 2-3 minutes to be safe, disconnect the board and set the hardware switch in the position to boot from SPI-NAND. Verify that have are now using UBIFS as rootfs-overlay.

sysupgrade

  • Login as root via SSH on 192.168.1.1, then enter the following commands:
cd /tmp
wget https://downloads.openwrt.org/snapshots/targets/mediatek/mt7622/openwrt-mediatek-mt7622-bananapi_bpi-r64-squashfs-sysupgrade.itb
sysupgrade /tmp/openwrt-mediatek-mt7622-bananapi_bpi-r64-squashfs-sysupgrade.itb
  • BananaPi R64 that were flashed before this commit, need to follow this manual bootloader update process
commit ec50d2d366fecb6f4bac2ae9d5cfa4aba9cf7bbc
Author: Daniel Golle <daniel@makrotopia.org>
Date:   Sun Jun 4 18:55:17 2023 +0100

    uboot-mediatek: adapt BPi-R3 and BPi-R64 to new device tree overlay:

easy uboot update in case you have your BananaPi at hand via sdcard

  1. create config backup (sysupgrade or via LUCI)
  2. put new openwrt image to a micro sdcard

alternatively:

  1. connect serial console to your BananaPi to instruct the uboot bootloader menu
  2. boot with sdcard and choose your favorite option (sdcard to emmc or nand)
  3. switch to your prefered boot device & remove sdcard
  4. reboot & restore your config backup

easy uboot update in case you have your BananaPi at hand via tftp

  • 1) attache serial console
  • 2) provide full folder content from bin/targets/mediatek/mt7622 via tftp to your BananaPi
#e.g.
cd bin/targets/mediatek/mt7622
tftpd -L -v -s .
  • 3) choose in uboot menu: Update BL31+U-Boot via TFTP
  • 4) choose in uboot menu: Reset all settings to factory defaults (to reset uboot env)

complex uboot update in case you have your BananaPi running on the roof

  • 1) CHECK from which storage your BananaPi has booted from:
cat /proc/cmdline
if return = root=/dev/ubiblock0* ... YOU BOOTED FROM internal NAND
if return = root=/dev/mmcblk0* ... YOU BOOTED from EMMC
if return = root=/dev/mmcblk1* ... YOU BOOTED from the SDCARD
  • 2a) in case snand / sdcard boot copy new bootloader to your BananaPi:
scp -O openwrt-snapshot-mediatek-mt7622-bananapi_bpi-r64-snand-bl31-uboot.fip root@my_router_ip:/tmp
  • 2a) install mtd with write support
 scp -O kmod-mtd-rw_aarch64_cortex-a53.ipk root@my_router_ip:/tmp
#ssh into your router & install mtd_rw: 
opkg install --force-depends /tmp/kmod-mtd-rw_aarch64_cortex-a53.ipk
insmod /lib/modules/*/mtd-rw.ko i_want_a_brick=1
  • 2a) write new bootloader image WITHOUT reboot!
mtd write /tmp/openwrt-snapshot-r23288+58-7a0ec001ff79-mediatek-mt7622-bananapi_bpi-r64-snand-bl31-uboot.fip fip
# clear environment after you have checked where you environment is stored: ubinfo -a
ubiupdatevol /dev/ubi0_0 -t
ubiupdatevol /dev/ubi0_1 -t
  • 2b) in case of emmc boot:

# find fip partition and ubootenv partition # X=fip partition # Y=ubootenv partition

for p in /sys/block/mmcblk*/mmcblk*p* ; do bn=$(basename $p) ; echo -n "$bn : " ; grep PARTNAME $p/uevent || echo ; done

#copy uboot to your router and update the uboot partition

scp -O openwrt-snapshot-mediatek-mt7622-bananapi_bpi-r64-emmc-bl31-uboot.fip root@my_router_ip:/tmp
dd if=/tmp/openwrt-snapshot-mediatek-mt7622-bananapi_bpi-r64-emmc-bl31-uboot.fip of=/dev/mmcblk0pX

# clear environment

dd if=/dev/zero of=/dev/mmcblk0pY
  • 3) as we have cleared the env, rootfs_data_max no longer exists at this point...

# now copy your sysupgrade image to the target router

scp -O openwrt-snapshot-mediatek-mt7622-bananapi_bpi-r64-squashfs-sysupgrade.itb root@my_router_ip:/tmp
sysupgrade -F /tmp/openwrt-snapshot-mediatek-mt7622-bananapi_bpi-r64-squashfs-sysupgrade.itb
  • 4) a 2nd sysupgrade is needed, because of rootfs_data_max desires: set compat version and restore rootfs_data_max
uci set system.@system[0].compat_version=1.1
uci commit system
fw_setenv rootfs_data_max 0x2000000 (only needed in case you have not reduced the size to 32MByte)
scp -O openwrt-snapshot-mediatek-mt7622-bananapi_bpi-r64-squashfs-sysupgrade.itb root@my_router_ip:/tmp
sysupgrade /tmp/openwrt-snapshot-mediatek-mt7622-bananapi_bpi-r64-squashfs-sysupgrade.itb
  • 5) update recovery partition as well, in case you need to boot into your recovery partition
#check your partitions, names and which number can be used:
ubinfo -a
#delete your recorvery
ubirmvol /dev/ubi0 -N recovery
scp -O openwrt-snapshot-mt7622-bananapi_bpi-r64-initramfs-recovery.itb root@my_router_ip:/tmp
size=$( wc -c /tmp/openwrt-snapshot-mediatek-mt7622-bananapi_bpi-r64-initramfs-recovery.itb | cut -d' ' -f0 )
ubimkvol /dev/ubi0 -n 3 -N recovery -s $size
ubiupdatevol /dev/ubi0_3 /tmp/openwrt-snapshot-mediatek-mt7622-bananapi_bpi-r64-initramfs-recovery.itb

# opkg update && opkg install lsblk && lsblk /dev/mmcblk0 /dev/mtdblock* -o START,SIZE,FSTYPE,NAME,PARTLABEL

START SIZE FSTYPE NAME PARTLABEL
512K mtdblock0
2M mtdblock1
125.5M mtdblock2
7.3G mmcblk0
4096 2M ├─mmcblk0p1 fip
8192 1M ├─mmcblk0p2 ubootenv
12288 32M ├─mmcblk0p3 recovery
81920 104M ├─mmcblk0p4 production
92600 4.4M squashfs ├─mmcblk0p65
101600 94.4M f2fs ├─mmcblk0p66
34 2M └─mmcblk0p128

To resize eMMC f2fs (Disk space in LuCI):

  • Check your system load correctly from eMMC (SW1 in position 0). You need to make at least one boot from eMMC after installation from SD card
  • Boot from SD card (SW1 to position 1 and reset from reset button/power loss) and type:
opkg update
opkg install parted
parted /dev/mmcblk0 resizepart 4 7818MB
mount /dev/mmcblk0p66 /mnt && umount /dev/mmcblk0p66 && resize.f2fs /dev/mmcblk0p66
  • Boot from eMMC (SW1 to position 0 and reset from reset button/power loss) and check if it worked:

- If you have LuCI installed (opkg update && opkg install luci): Status → Overview

- If not: # opkg update && opkg install lsblk && lsblk /dev/mmcblk0

NAME          MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
mmcblk0       179:8    0  7.3G  0 disk
├─mmcblk0p1   179:9    0    2M  0 part
├─mmcblk0p2   179:10   0    1M  0 part
├─mmcblk0p3   179:11   0   32M  0 part
├─mmcblk0p4   179:12   0  7.2G  0 part
├─mmcblk0p65  259:3    0  4.4M  1 part /rom
├─mmcblk0p66  259:4    0  7.2G  0 part /overlay
└─mmcblk0p128 259:5    0    2M  0 part

Being a development board, the Bananapi BPi-R64 doesn't come with (a) MAC address(es) allocated and assigned by the vendor. Hence it is left to the user to assign a permanent address to the device. If there is a MAC address stored in the U-Boot environment used during boot, this address is used by U-Boot and it is handed down to Linux and becomes the default for all downstream interfaces in OpenWrt as well. To set it from inside OpenWrt, run

fw_setenv ethaddr 02:33:44:55:66:77

and reboot.

The 'factory' button next to the power connector on the board can be used to trigger bootloader environment reset if held down during power on. Once OpenWrt is booting and the LED starts flashing, that button can be used to enter failsafe mode. → failsafe_and_factory_reset

The Sinovoip BananaPi BPi-R64 has the following buttons:

BUTTON Event
Factory reset
WPS ses

The switch Boot select/SW1 can be used to choose between the following modes:

switch position boot probes sequence
1 SD card → eMMC
0 SPI-NAND → eMMC → SD card

Hardware interfaces

port.serial general information about the serial port, serial port cable, etc.

There are a 3.3V TTL level serial port pins marked on the board, see photo above 'TTL debug'

Serial connection parameters
for Sinovoip BananaPi BPi-R64 V1.1
115200, 8N1

The SATA interface can't be used at same time as the second mPCIe slot. The decision is made by hogging gpio 90 which can be set via dtoverlay. See also commit b40f707f71.

Due to structural changes in the way device tree overlays are handled after commit 6b01d40bfe the way to instruct the bootloader to load either the SATA or mPCIe specific overlay has changed.

Enable SATA:

fw_setenv bootconf config-mt7622-bananapi-bpi-r64-sata

Enable second mPCIe (default):

fw_setenv bootconf config-mt7622-bananapi-bpi-r64-pcie1

Enable SATA:

fw_setenv bootconf config-1#mt7622-bananapi-bpi-r64-sata

Enable second mPCIe (default):

fw_setenv bootconf config-1#mt7622-bananapi-bpi-r64-pcie1

Post Install Tips

A device configured as a router will likely benefit from hardware offloading

  • If the device is configured as a dumb access points with VLANs, skip this step
  • If using LuCI: Network → Firewall and check the box for “Software flow offloading” and then the box for “Hardware flow offloading” then hit Save & Apply
  • Users not using LuCI should edit /etc/config/firewall and insert the following under the config defaults section and make sure to restart the firewall after making the /etc/init.d/firewall restart:
config defaults
...
  option flow_offloading '1'
  option flow_offloading_hw '1'

In v22.03, by default the CPU will constantly run at the maximum frequency of 1.35 Ghz. This can increase both power consumption and heat by a trivial amount. Most users will want to change the default CPU governor to either ondemand or to schedutil instead. Either will allow the CPU to dynamically scale the CPU frequency.

echo ondemand > /sys/devices/system/cpu/cpufreq/policy0/scaling_governor

This can be added to /etc/rc.local so it executes automatically by editing that file directly or through LuCI: System → Startup → Local Startup

The default governor is already ondemand in version 23 and above.

This board is commonly used with mt7915/7916 cards to add 5GHz WiFi 5/6 and WiFi 6e. It should be noted, that prior to version 1.2 of this board, the PCI slots could only source ~2.5A at 3.3v. Many of the MT7915/7915 boards (especially those from AsiaRF) draw upwards of 3-3.5A at 3.3v. These can cause significant instability in the board unless hardware tweaks are done to it. Version 1.2 of the board eliminates this issue, and can stably provide the 3.5a at 3.3v that these cards require. As of Nov 2022, all boards being sold are version 1.2.

Mod for V1.0, V1.1 for increasing current to 2.2a for CN25 slot (it's the maximum you can get without replacing the protection chip SY6280 with for example SY6282ACC):

current-patch-1.jpg

Or you can disable current protection by short circuit protection chips - AT YOUR OWN RISK

Add support:

# opkg update && opkg install kmod-mt7915-firmware kmod-mt7915e

If not working - check card is detected:

# opkg update && opkg install pciutils && lspci
0001:00:01.0 PCI bridge: MEDIATEK Corp. Device 3258
0001:01:00.0 Unclassified device [0002]: MEDIATEK Corp. MT7915E 802.11ax PCI Express Wireless Network Adapter

If one of these cards is used in this board, then Wireless Ethernet Dispatch becomes available:

Wireless Ethernet Dispatch (WED) is an extension of hardware flow offloading which can reduce CPU loads/increase routing throughput when wireless clients are active. This board's built-in mt7615-compatible WiFi 5 does not support the new Wireless Ethernet Dispatch acceleration. However, if a MediaTek mt7915/16 card is used in this device it will support WED. The following applies only if you have such a card.

A few caveats to using WED:

  • Users may experience stability issues as this is a relatively new feature
  • It can be used alone or in addition to other hardware offloading
  • Requires 22.03.0 or later
  • Only accelerates wireless traffic, not wired traffic
  • Only supported on the 5 GHz radio
  • If used on a dumb access point, an additional package is needed

Enable WED

OpenWrt 22.03.2
  • Edit /etc/modules.d/mt7915e and append this line mt7915e wed_enable=Y
  • This change requires a reboot
  • :!: This change will not persist upon updating as the file edited is not the target of a backup tarball.
Development snapshot
  • Edit /etc/modules.conf and append this line: options mt7915e wed_enable=Y
  • This change requires a reboot
Dumb access point configuration

Flow offloading happens in situations where flows are actually being tracked, ie. when using NAT/routing. To use WED on a dumb access point requires the bridger package which does a bit of BPF magic to get bridged streams tracked (and hence offloaded).

  • Install the bridger package. Optionally edit /etc/config/bridger and define a device or bridge to exclude from bridge forwarding acceleration.

Verifying that WED is enabled

To check that the kernel module has the needed option applied:

# cat /sys/module/mt7915e/parameters/wed_enable
Y

Query the status of WED

To see which flows are actually getting off-loaded. This command works only for router mode (not AP):

# cat /sys/kernel/debug/mtk_ppe/bind
01dd0 BND IPv4 5T orig=xxx:11068->10.1.10.241:33328 new=xxx:11068->10.1.10.241:33328 eth=xx:xx:xx:xx:xx:xx->xx:xx:xx:xx:xx:xx etype=0008 vlan=0,129 ib1=21403a8d ib2=007e0060

On development snapshot

# cat /sys/kernel/debug/ppe0/bind

Note that the above shows all traffic that is accelerated by the chipset's Packet Processing Engine (PPE), including the wired clients, so if a mix of wired and wireless clients are expected, the output will need to be inspected for specific MACs or IPs of the wireless clients to confirm WED is working.

If <html>/sys/kernel/debug/mtk_ppe/bind</html> is empty, that merely means that there are no offloaded flows. Again, this is expected if you do not use the device as NAT/router. If you only use it as bridged access point, WED cannot work on OpenWrt 22.03. If you ware willing to try development snapshots, you can use WED by installing the bridger package which facilitates flow-offloading also in bridged configuration.

In general, on MT7622 WED is only supported in TX direction (from router point of view), so CPU load reduction (from around 15% load to around 3% load when running speedtest) can only be observed if traffic is sent from the router to the client.

F0: 102B 0000 F5: 480A 0031 F5: 480A 0031 F3: 0000 0000 V0: 0000 0000 [0001] 00: 0000 0000 BP: 0400 0041 [0000] G0: 1190 0000 T0: 0000 02D9 [000F] Jump to BL NOTICE: BL2: v2.2(release):OpenWrt v2020-11-09-03017334-7 (mt7622-emmc-2ddr) NOTICE: BL2: Built : 09:54:38, Mar 2 2021 NOTICE: BL2: Booting BL31 NOTICE: BL31: v2.2(release):OpenWrt v2020-11-09-03017334-7 (mt7622-emmc-2ddr) NOTICE: BL31: Built : 09:54:38, Mar 2 2021 pinctrl_select_state_full: uclass_get_device_by_phandle_id: err=-19 U-Boot 2020.10 (Mar 02 2021 - 09:54:38 +0000) CPU: MediaTek MT7622 Model: mt7622-bpi-r64 DRAM: 1 GiB WDT: Started with servicing (60s timeout) MMC: mmc@11230000: 0, mmc@11240000: 1 Loading Environment from MMC... OK In: serial@11002000 Out: serial@11002000 Err: serial@11002000 Loading Environment from MMC... OK Net: Warning: ethernet@1b100000 (eth0) using random MAC address - 7e:28:52:21:af:ec eth0: ethernet@1b100000 ( ( ( OpenWrt ) ) ) [eMMC] U-Boot 2020.10 (Mar 01 2021 - 19:35:08 +0000) Press UP/DOWN to move, ENTER to select 0. Run default boot command. 1. Boot system via TFTP. 2. Boot production system from eMMC. 3. Boot recovery system from eMMC. 4. Load production system via TFTP then write to eMMC. 5. Load recovery system via TFTP then write to eMMC. 6. Reboot. 7. Reset all settings to factory defaults. U-Boot console Hit any key to stop autoboot: 3  2  1  0 switch to partitions #0, OK mmc0(part 0) is current device MMC read: dev # 0, block # 81920, count 8 ... 8 blocks read: OK MMC read: dev # 0, block # 81920, count 19440 ... 19440 blocks read: OK ## Loading kernel from FIT Image at 4007ff28 ... Using 'config@1' configuration Trying 'kernel@1' kernel subimage Description: ARM64 OpenWrt Linux-5.10.18 Type: Kernel Image Compression: gzip compressed Data Start: 0x40080f28 Data Size: 4928456 Bytes = 4.7 MiB Architecture: AArch64 OS: Linux Load Address: 0x44000000 Entry Point: 0x44000000 Hash algo: crc32 Hash value: 4269a8f2 Hash algo: sha1 Hash value: a834d420beaff7c446535af9d1ed035f93cd1515 Verifying Hash Integrity ... crc32+ sha1+ OK ## Loading fdt from FIT Image at 4007ff28 ... Using 'config@1' configuration Trying 'fdt@1' fdt subimage Description: ARM64 OpenWrt bananapi_bpi-r64 device tree blob Type: Flat Device Tree Compression: uncompressed Data Start: 0x40534f28 Data Size: 25453 Bytes = 24.9 KiB Architecture: AArch64 Hash algo: crc32 Hash value: 2e9dde3b Hash algo: sha1 Hash value: 835fb2ce0fbb87c3f03d0f896a539023bb6caa62 Verifying Hash Integrity ... crc32+ sha1+ OK Booting using the fdt blob at 0x40534f28 ## Loading loadables from FIT Image at 4007ff28 ... Trying 'rootfs@1' loadables subimage Description: ARM64 OpenWrt bananapi_bpi-r64 rootfs Type: Filesystem Image Compression: uncompressed Data Start: 0x4053bf28 Data Size: 4988928 Bytes = 4.8 MiB Hash algo: crc32 Hash value: 26f139ea Hash algo: sha1 Hash value: fa4f28d067882d6722a6680987fbb0b65a9b520d Verifying Hash Integrity ... crc32+ sha1+ OK Uncompressing Kernel Image Loading Device Tree to 000000007f7f1000, end 000000007f7fa36c ... OK Starting kernel ... [ 0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034] [ 0.000000] Linux version 5.10.18 (daniel@box) (aarch64-openwrt-linux-musl-gcc (OpenWrt GCC 8.4.0 r15637+17-7d12f29ae1) 8.4.0, GNU ld (GNU Binutils) 2.34) #0 SMP Mon Mar 1 19:35:08 2021 [ 0.000000] Machine model: Bananapi BPI-R64 [ 0.000000] earlycon: uart8250 at MMIO32 0x0000000011002000 (options '') [ 0.000000] printk: bootconsole [uart8250] enabled [ 0.000000] Zone ranges: [ 0.000000] DMA [mem 0x0000000040000000-0x000000007fffffff] [ 0.000000] DMA32 empty [ 0.000000] Normal empty [ 0.000000] Movable zone start for each node [ 0.000000] Early memory node ranges [ 0.000000] node 0: [mem 0x0000000040000000-0x0000000042ffffff] [ 0.000000] node 0: [mem 0x0000000043030000-0x000000007fffffff] [ 0.000000] Initmem setup node 0 [mem 0x0000000040000000-0x000000007fffffff] [ 0.000000] On node 0 totalpages: 262096 [ 0.000000] DMA zone: 4096 pages used for memmap [ 0.000000] DMA zone: 0 pages reserved [ 0.000000] DMA zone: 262096 pages, LIFO batch:63 [ 0.000000] psci: probing for conduit method from DT. [ 0.000000] psci: PSCIv1.1 detected in firmware. [ 0.000000] psci: Using standard PSCI v0.2 function IDs [ 0.000000] psci: MIGRATE_INFO_TYPE not supported. [ 0.000000] psci: SMC Calling Convention v1.2 [ 0.000000] percpu: Embedded 20 pages/cpu s44568 r8192 d29160 u81920 [ 0.000000] pcpu-alloc: s44568 r8192 d29160 u81920 alloc=20*4096 [ 0.000000] pcpu-alloc: [0] 0 [0] 1 [ 0.000000] Detected VIPT I-cache on CPU0 [ 0.000000] CPU features: detected: ARM erratum 845719 [ 0.000000] CPU features: kernel page table isolation disabled by kernel configuration [ 0.000000] CPU features: detected: ARM erratum 843419 [ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 258000 [ 0.000000] Kernel command line: earlycon=uart8250,mmio32,0x11002000 console=ttyS0,115200n1 swiotlb=512 root=/dev/mmcblk0p5 [ 0.000000] Dentry cache hash table entries: 131072 (order: 8, 1048576 bytes, linear) [ 0.000000] Inode-cache hash table entries: 65536 (order: 7, 524288 bytes, linear) [ 0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off [ 0.000000] Memory: 1016820K/1048384K available (7486K kernel code, 848K rwdata, 2112K rodata, 448K init, 292K bss, 31564K reserved, 0K cma-reserved) [ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1 [ 0.000000] rcu: Hierarchical RCU implementation. [ 0.000000] rcu: CONFIG_RCU_FANOUT set to non-default value of 32. [ 0.000000] Tracing variant of Tasks RCU enabled. [ 0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies. [ 0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0 [ 0.000000] GIC: GICv2 detected, but range too small and irqchip.gicv2_force_probe not set [ 0.000000] random: get_random_bytes called from start_kernel+0x340/0x48c with crng_init=0 [ 0.000000] arch_timer: cp15 timer(s) running at 12.50MHz (phys). [ 0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x2e2049cda, max_idle_ns: 440795202628 ns [ 0.000003] sched_clock: 56 bits at 12MHz, resolution 80ns, wraps every 4398046511080ns [ 0.008484] Calibrating delay loop (skipped), value calculated using timer frequency.. 25.00 BogoMIPS (lpj=50000) [ 0.019126] pid_max: default: 32768 minimum: 301 [ 0.024006] Mount-cache hash table entries: 2048 (order: 2, 16384 bytes, linear) [ 0.031678] Mountpoint-cache hash table entries: 2048 (order: 2, 16384 bytes, linear) [ 0.040778] rcu: Hierarchical SRCU implementation. [ 0.045872] dyndbg: Ignore empty _ddebug table in a CONFIG_DYNAMIC_DEBUG_CORE build [ 0.054128] smp: Bringing up secondary CPUs ... [ 0.059137] Detected VIPT I-cache on CPU1 [ 0.059187] CPU1: Booted secondary processor 0x0000000001 [0x410fd034] [ 0.059255] smp: Brought up 1 node, 2 CPUs [ 0.074413] SMP: Total of 2 processors activated. [ 0.079284] CPU features: detected: 32-bit EL0 Support [ 0.084605] CPU features: detected: CRC32 instructions [ 0.090047] CPU: All CPU(s) started at EL2 [ 0.094296] alternatives: patching kernel code [ 0.102256] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns [ 0.112384] futex hash table entries: 512 (order: 3, 32768 bytes, linear) [ 0.119500] pinctrl core: initialized pinctrl subsystem [ 0.125388] NET: Registered protocol family 16 [ 0.130721] DMA: preallocated 128 KiB GFP_KERNEL pool for atomic allocations [ 0.138156] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations [ 0.146276] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations [ 0.154818] thermal_sys: Registered thermal governor 'fair_share' [ 0.154826] thermal_sys: Registered thermal governor 'bang_bang' [ 0.161179] thermal_sys: Registered thermal governor 'step_wise' [ 0.167416] thermal_sys: Registered thermal governor 'user_space' [ 0.173918] ASID allocator initialised with 65536 entries [ 0.205904] gpio-499 (asm_sel): hogged as output/high [ 0.223676] SCSI subsystem initialized [ 0.227913] libata version 3.00 loaded. [ 0.232120] usbcore: registered new interface driver usbfs [ 0.237917] usbcore: registered new interface driver hub [ 0.243484] usbcore: registered new device driver usb [ 0.249340] workqueue: max_active 576 requested for napi_workq is out of range, clamping between 1 and 512 [ 0.260793] clocksource: Switched to clocksource arch_sys_counter [ 0.267798] NET: Registered protocol family 2 [ 0.272715] tcp_listen_portaddr_hash hash table entries: 512 (order: 1, 8192 bytes, linear) [ 0.281401] TCP established hash table entries: 8192 (order: 4, 65536 bytes, linear) [ 0.289474] TCP bind hash table entries: 8192 (order: 5, 131072 bytes, linear) [ 0.297059] TCP: Hash tables configured (established 8192 bind 8192) [ 0.303763] UDP hash table entries: 512 (order: 2, 16384 bytes, linear) [ 0.310639] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes, linear) [ 0.318063] NET: Registered protocol family 1 [ 0.322597] PCI: CLS 0 bytes, default 64 [ 0.327745] workingset: timestamp_bits=46 max_order=18 bucket_order=0 [ 0.337176] squashfs: version 4.0 (2009/01/31) Phillip Lougher [ 0.343231] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc. [ 0.386514] mtk-tphy 1a0c4000.usb-phy: failed to get ref_clk(id-1) [ 0.398239] mt-pmic-pwrap 10001000.pwrap: unexpected interrupt int=0x1 [ 0.413111] Serial: 8250/16550 driver, 3 ports, IRQ sharing disabled [ 0.420612] printk: console [ttyS0] disabled [ 0.425122] 11002000.serial: ttyS0 at MMIO 0x11002000 (irq = 23, base_baud = 1562500) is a 16550A [ 0.434348] printk: console [ttyS0] enabled [ 0.434348] printk: console [ttyS0] enabled [ 0.442722] printk: bootconsole [uart8250] disabled [ 0.442722] printk: bootconsole [uart8250] disabled [ 0.453173] 11004000.serial: ttyS1 at MMIO 0x11004000 (irq = 24, base_baud = 1562500) is a 16550A [ 0.462947] 1100c000.serial: ttyS2 at MMIO 0x1100c000 (irq = 30, base_baud = 17499995) is a MediaTek BTIF [ 0.472684] serial serial0: tty port ttyS2 registered [ 0.478104] cacheinfo: Unable to detect cache hierarchy for CPU 0 [ 0.487472] loop: module loaded [ 0.493464] libphy: Fixed MDIO Bus: probed [ 0.521349] libphy: mdio: probed [ 0.525249] mtk_soc_eth 1b100000.ethernet: generated random MAC address ce:43:f8:e7:16:80 [ 0.533780] mtk_soc_eth 1b100000.ethernet eth0: mediatek frame engine at 0xffffffc011860000, irq 39 [ 0.542892] mtk_soc_eth 1b100000.ethernet: generated random MAC address ba:09:2c:09:f1:3e [ 0.551388] mtk_soc_eth 1b100000.ethernet eth1: mediatek frame engine at 0xffffffc011860000, irq 39 [ 0.562210] rtc_mt7622 10212800.rtc: registered as rtc0 [ 0.567503] rtc_mt7622 10212800.rtc: setting system clock to 2021-03-02T20:49:47 UTC (1614718187) [ 0.577728] mtk-wdt 10212000.watchdog: Watchdog enabled (timeout=31 sec, nowayout=0) [ 0.588217] mtk-msdc 11240000.mmc: Got CD GPIO [ 0.589038] NET: Registered protocol family 10 [ 0.598499] Segment Routing with IPv6 [ 0.602229] NET: Registered protocol family 17 [ 0.606872] 8021q: 802.1Q VLAN Support v1.8 [ 0.621599] mtk-pcie 1a143000.pcie: host bridge /pcie@1a143000 ranges: [ 0.628174] mtk-pcie 1a143000.pcie: Parsing ranges property... [ 0.634018] mtk-pcie 1a143000.pcie: MEM 0x0020000000..0x0027ffffff -> 0x0020000000 [ 0.701511] mtk-msdc 11230000.mmc: phase: [map:7ffffff] [maxlen:27] [final:9] [ 0.709755] mmc0: new HS200 MMC card at address 0001 [ 0.715980] mmcblk0: mmc0:0001 008G30 7.28 GiB [ 0.721466] mmcblk0boot0: mmc0:0001 008G30 partition 1 4.00 MiB [ 0.728422] mmcblk0boot1: mmc0:0001 008G30 partition 2 4.00 MiB [ 0.734445] mmcblk0rpmb: mmc0:0001 008G30 partition 3 4.00 MiB, chardev (250:0) [ 0.742319] mtk-pcie 1a143000.pcie: Port0 link down [ 0.744166] Alternate GPT is invalid, using primary GPT. [ 0.747419] mtk-pcie 1a143000.pcie: PCI host bridge to bus 0000:00 [ 0.753402] FIT: volume size: 2007040 sectors (1027604480 bytes) [ 0.758741] pci_bus 0000:00: root bus resource [bus 00-ff] [ 0.764740] FIT: FDT structure size: 4096 bytes [ 0.770211] pci_bus 0000:00: root bus resource [mem 0x20000000-0x27ffffff] [ 0.770215] pci_bus 0000:00: scanning bus [ 0.774765] FIT: Default configuration: config@1 (OpenWrt bananapi_bpi-r64) [ 0.782743] pci_bus 0000:00: fixups for bus [ 0.785632] FIT: kernel sub-image 0x00001000 - 0x004b43c8 'kernel@1' (ARM64 OpenWrt Linux-5.10.18) [ 0.792559] pci_bus 0000:00: bus scan returning with max=00 [ 0.792998] mtk-pcie 1a145000.pcie: host bridge /pcie@1a145000 ranges: [ 0.796760] FIT: flat_dt sub-image 0x004b5000 - 0x004bb36d 'fdt@1' (ARM64 OpenWrt bananapi_bpi-r64 device tree blob) [ 0.806670] mtk-pcie 1a145000.pcie: Parsing ranges property... [ 0.812219] FIT: filesystem sub-image 0x004bc000 - 0x0097e000 'rootfs@1' (ARM64 OpenWrt bananapi_bpi-r64 rootfs) [ 0.818733] mtk-pcie 1a145000.pcie: MEM 0x0028000000..0x002fffffff -> 0x0028000000 [ 0.830113] FIT: selecting configured loadable rootfs@1 to be root filesystem [ 0.860327] mtk-pcie 1a145000.pcie: PCI host bridge to bus 0001:00 [ 0.861854] mmcblk0: p1 p2 p3 p4 p5(rootfs@1) p6(rootfs_data) p130 [ 0.868012] pci_bus 0001:00: root bus resource [bus 00-ff] [ 0.879775] pci_bus 0001:00: root bus resource [mem 0x28000000-0x2fffffff] [ 0.886657] pci_bus 0001:00: scanning bus [ 0.890850] pci 0001:00:01.0: [14c3:3258] type 01 class 0x060400 [ 0.896892] pci 0001:00:01.0: reg 0x10: [mem 0x00000000-0x1ffffffff 64bit pref] [ 0.905658] pci_bus 0001:00: fixups for bus [ 0.909855] pci 0001:00:01.0: scanning [bus 00-00] behind bridge, pass 0 [ 0.916552] pci 0001:00:01.0: bridge configuration invalid ([bus 00-00]), reconfiguring [ 0.924563] pci 0001:00:01.0: scanning [bus 00-00] behind bridge, pass 1 [ 0.931404] pci_bus 0001:01: scanning bus [ 0.935602] pci 0001:01:00.0: [14c3:7615] type 00 class 0x000280 [ 0.941787] pci 0001:01:00.0: reg 0x10: [mem 0x00000000-0x000fffff 64bit] [ 0.949558] pci 0001:01:00.0: 2.000 Gb/s available PCIe bandwidth, limited by 2.5 GT/s PCIe x1 link at 0001:00:01.0 (capable of 4.000 Gb/s with 5.0 GT/s PCIe x1 link) [ 0.977999] pci_bus 0001:01: fixups for bus [ 0.982201] pci_bus 0001:01: bus scan returning with max=01 [ 0.987776] pci_bus 0001:01: busn_res: [bus 01-ff] end is updated to 01 [ 0.994392] pci_bus 0001:00: bus scan returning with max=01 [ 0.999979] pci 0001:00:01.0: BAR 0: no space for [mem size 0x200000000 64bit pref] [ 1.007631] pci 0001:00:01.0: BAR 0: failed to assign [mem size 0x200000000 64bit pref] [ 1.015631] pci 0001:00:01.0: BAR 8: assigned [mem 0x28000000-0x280fffff] [ 1.022418] pci 0001:01:00.0: BAR 0: assigned [mem 0x28000000-0x280fffff 64bit] [ 1.029806] pci 0001:00:01.0: PCI bridge to [bus 01] [ 1.034773] pci 0001:00:01.0: bridge window [mem 0x28000000-0x280fffff] [ 1.041590] pci 0001:00:01.0: Max Payload Size set to 256/ 256 (was 128), Max Read Rq 256 [ 1.050145] pci 0001:01:00.0: Max Payload Size set to 128/ 128 (was 128), Max Read Rq 128 [ 1.058662] pcieport 0001:00:01.0: of_irq_parse_pci: failed with rc=-22 [ 1.065272] pcieport 0001:00:01.0: assign IRQ: got 0 [ 1.070241] pcieport 0001:00:01.0: enabling device (0000 -> 0002) [ 1.076347] pcieport 0001:00:01.0: enabling bus mastering [ 1.082239] mtk_hsdma 1b007000.dma-controller: Using 3 as missing dma-requests property [ 1.090514] mtk_hsdma 1b007000.dma-controller: MediaTek HSDMA driver registered [ 1.134657] libphy: dsa slave smi: probed [ 1.139599] mt7530 mdio-bus:00 wan (uninitialized): PHY [dsa-0.0:00] driver [Generic PHY] (irq=POLL) [ 1.150171] mt7530 mdio-bus:00 lan1 (uninitialized): PHY [dsa-0.0:01] driver [Generic PHY] (irq=POLL) [ 1.160832] mt7530 mdio-bus:00 lan2 (uninitialized): PHY [dsa-0.0:02] driver [Generic PHY] (irq=POLL) [ 1.171465] mt7530 mdio-bus:00 lan3 (uninitialized): PHY [dsa-0.0:03] driver [Generic PHY] (irq=POLL) [ 1.182117] mt7530 mdio-bus:00 lan4 (uninitialized): PHY [dsa-0.0:04] driver [Generic PHY] (irq=POLL) [ 1.192425] mt7530 mdio-bus:00: configuring for fixed/2500base-x link mode [ 1.200012] mt7530 mdio-bus:00: Link is Up - 2.5Gbps/Full - flow control rx/tx [ 1.200668] DSA: tree 0 setup [ 1.211128] xhci-mtk 1a0c0000.usb: xHCI Host Controller [ 1.216409] xhci-mtk 1a0c0000.usb: new USB bus registered, assigned bus number 1 [ 1.225481] xhci-mtk 1a0c0000.usb: hcc params 0x01403198 hci version 0x96 quirks 0x0000000000210010 [ 1.234574] xhci-mtk 1a0c0000.usb: irq 35, io mem 0x1a0c0000 [ 1.240734] hub 1-0:1.0: USB hub found [ 1.244541] hub 1-0:1.0: 2 ports detected [ 1.248847] xhci-mtk 1a0c0000.usb: xHCI Host Controller [ 1.254092] xhci-mtk 1a0c0000.usb: new USB bus registered, assigned bus number 2 [ 1.261495] xhci-mtk 1a0c0000.usb: Host supports USB 3.0 SuperSpeed [ 1.267814] usb usb2: We don't know the algorithms for LPM for this host, disabling LPM. [ 1.276232] hub 2-0:1.0: USB hub found [ 1.280014] hub 2-0:1.0: 1 port detected [ 1.288938] VFS: Mounted root (squashfs filesystem) readonly on device 179:5. [ 1.296271] Freeing unused kernel memory: 448K [ 1.304904] Run /sbin/init as init process [ 1.308999] with arguments: [ 1.311957] /sbin/init [ 1.314657] with environment: [ 1.317792] HOME=/ [ 1.320141] TERM=linux [ 1.477540] init: Console is alive [ 1.481082] init: - watchdog - [ 1.706270] kmodloader: loading kernel modules from /etc/modules-boot.d/* [ 1.750773] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver [ 1.758057] ehci-fsl: Freescale EHCI Host controller driver [ 1.764478] ehci-platform: EHCI generic platform driver [ 1.771580] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver [ 1.778473] ohci-platform: OHCI generic platform driver [ 1.785767] mt7622-pinctrl 10211000.pinctrl: invalid function func1 in map table [ 1.793194] mt7622-pinctrl 10211000.pinctrl: invalid function func1 in map table [ 1.800589] mt7622-pinctrl 10211000.pinctrl: invalid function func1 in map table [ 1.808765] kmodloader: done loading kernel modules from /etc/modules-boot.d/* [ 1.817097] init: - preinit - [ 1.974360] random: fast init done [ 2.059084] mtk_soc_eth 1b100000.ethernet eth0: configuring for fixed/2500base-x link mode [ 2.067452] mtk_soc_eth 1b100000.ethernet eth0: Link is Up - 2.5Gbps/Full - flow control rx/tx [ 2.084883] mt7530 mdio-bus:00 lan1: configuring for phy/gmii link mode [ 2.092048] 8021q: adding VLAN 0 to HW filter on device lan1 [ 2.106272] random: procd: uninitialized urandom read (4 bytes read) Press the [f] key and hit [enter] to enter failsafe mode Press the [1], [2], [3] or [4] key and hit [enter] to select the debug level [ 6.170766] mt7530 mdio-bus:00 lan1: Link is Up - 1Gbps/Full - flow control rx/tx [ 6.178347] IPv6: ADDRCONF(NETDEV_CHANGE): lan1: link becomes ready [ 6.198725] mount_root: loading kmods from internal overlay [ 6.209071] kmodloader: loading kernel modules from //etc/modules-boot.d/* [ 6.216269] kmodloader: done loading kernel modules from //etc/modules-boot.d/* [ 6.405375] block: attempting to load /etc/config/fstab [ 6.410691] block: unable to load configuration (fstab: Entry not found) [ 6.417408] block: no usable configuration [ 6.578103] F2FS-fs (mmcblk0p6): Mounted with checkpoint version = 3f02ec04 [ 6.671516] block: attempting to load /etc/config/fstab [ 6.676852] block: unable to load configuration (fstab: Entry not found) [ 6.683573] block: no usable configuration [ 6.689174] mount_root: switching to f2fs overlay [ 6.696010] overlayfs: "xino" feature enabled using 32 upper inode bits. Failed to find nls_cp437. Maybe it is a built in module ? Failed to find nls_iso8859-1. Maybe it is a built in module ? Failed to find fat. Ma[ 6.718452] /dev/mmcblk0p6: Can't open blockdev ybe it is a built in module ? Failed to find vfat. Maybe it is [ 6.728322] urandom-seed: Seeding with /etc/urandom.seed a built in module ? [ 6.766764] mt7530 mdio-bus:00 lan1: Link is Down [ 6.775976] procd: - early - [ 6.778967] procd: - watchdog - [ 7.314049] procd: - watchdog - [ 7.318909] procd: - ubus - [ 7.342518] random: ubusd: uninitialized urandom read (4 bytes read) [ 7.371814] random: ubusd: uninitialized urandom read (4 bytes read) [ 7.378450] random: ubusd: uninitialized urandom read (4 bytes read) [ 7.386361] procd: - init - Please press Enter to activate this console. [ 7.610252] urngd: v1.0.2 started. [ 7.639430] random: crng init done [ 7.642896] random: 6 urandom warning(s) missed due to ratelimiting [ 7.711071] kmodloader: loading kernel modules from /etc/modules.d/* [ 7.787911] fuse: init (API version 7.32) [ 7.794942] Loading modules backported from Linux version v5.10.16-0-gde53befa79cf [ 7.802558] Backport generated by backports.git v5.10.16-1-0-g21d2a1d2 [ 7.865380] xt_time: kernel timezone is -0000 [ 7.907865] mt7615e 0001:01:00.0: assign IRQ: got 147 [ 7.913006] pci 0001:00:01.0: enabling bus mastering [ 7.918020] mt7615e 0001:01:00.0: enabling device (0000 -> 0002) [ 7.924153] mt7615e 0001:01:00.0: enabling bus mastering [ 7.932454] ieee80211 phy0: Selected rate control algorithm 'minstrel_ht' [ 7.955114] mt7622-wmac 18000000.wmac: Invalid MAC address, using random address a2:ad:f8:26:d9:c4 [ 7.965513] ieee80211 phy1: Selected rate control algorithm 'minstrel_ht' [ 7.965932] mt7615e 0001:01:00.0: HW/SW Version: 0x8a108a10, Build Time: 20180518100604a [ 7.965932] [ 7.988161] PPP generic driver version 2.4.2 [ 7.993402] NET: Registered protocol family 24 [ 8.001396] mt7622-wmac 18000000.wmac: HW/SW Version: 0x8a108a10, Build Time: 20190801210006a [ 8.001396] [ 8.034416] kmodloader: done loading kernel modules from /etc/modules.d/* [ 8.045507] mt7615e 0001:01:00.0: N9 Firmware Version: _reserved_, Build Time: 20200814163649 [ 8.059669] mt7615e 0001:01:00.0: CR4 Firmware Version: _reserved_, Build Time: 20190121161307 [ 8.102375] mt7622-wmac 18000000.wmac: N9 Firmware Version: 2.0, Build Time: 20200131180931 [ 10.283089] mtk_soc_eth 1b100000.ethernet eth0: Link is Down [ 10.292959] mtk_soc_eth 1b100000.ethernet eth0: configuring for fixed/2500base-x link mode [ 10.301318] mtk_soc_eth 1b100000.ethernet eth0: Link is Up - 2.5Gbps/Full - flow control rx/tx [ 10.311125] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready [ 10.318250] mt7530 mdio-bus:00 lan1: configuring for phy/gmii link mode [ 10.325748] 8021q: adding VLAN 0 to HW filter on device lan1 [ 10.336372] br-lan: port 1(lan1) entered blocking state [ 10.341651] br-lan: port 1(lan1) entered disabled state [ 10.350660] device lan1 entered promiscuous mode [ 10.355353] device eth0 entered promiscuous mode [ 10.372511] mt7530 mdio-bus:00 lan2: configuring for phy/gmii link mode [ 10.380885] 8021q: adding VLAN 0 to HW filter on device lan2 [ 10.389533] br-lan: port 2(lan2) entered blocking state [ 10.394841] br-lan: port 2(lan2) entered disabled state [ 10.401291] device lan2 entered promiscuous mode [ 10.411298] mt7530 mdio-bus:00 lan3: configuring for phy/gmii link mode [ 10.419053] 8021q: adding VLAN 0 to HW filter on device lan3 [ 10.430013] br-lan: port 3(lan3) entered blocking state [ 10.435315] br-lan: port 3(lan3) entered disabled state [ 10.441362] device lan3 entered promiscuous mode [ 10.450812] mt7530 mdio-bus:00 lan4: configuring for phy/gmii link mode [ 10.458043] 8021q: adding VLAN 0 to HW filter on device lan4 [ 10.466074] br-lan: port 4(lan4) entered blocking state [ 10.471321] br-lan: port 4(lan4) entered disabled state [ 10.477503] device lan4 entered promiscuous mode [ 10.488445] mt7530 mdio-bus:00 wan: configuring for phy/gmii link mode [ 10.495526] 8021q: adding VLAN 0 to HW filter on device wan [ 13.402620] mt7530 mdio-bus:00 lan1: Link is Up - 1Gbps/Full - flow control rx/tx [ 13.410151] br-lan: port 1(lan1) entered blocking state [ 13.415385] br-lan: port 1(lan1) entered forwarding state [ 13.421335] IPv6: ADDRCONF(NETDEV_CHANGE): br-lan: link becomes ready BusyBox v1.33.0 () built-in shell (ash) _______ ________ __ | |.-----.-----.-----.| | | |.----.| |_ | - || _ | -__| || | | || _|| _| |_______|| __|_____|__|__||________||__| |____| |__| W I R E L E S S F R E E D O M ----------------------------------------------------- OpenWrt SNAPSHOT, r16065-a8a37d4ea5 ----------------------------------------------------- === WARNING! ===================================== There is no root password defined on this device! Use the "passwd" command to set up a new password in order to prevent unauthorized SSH logins. -------------------------------------------------- root@OpenWrt:/#


This website uses cookies. By using the website, you agree with storing cookies on your computer. Also you acknowledge that you have read and understand our Privacy Policy. If you do not agree leave the website.More information about cookies
  • Last modified: 2024/02/12 11:13
  • by 127.0.0.1