The first image with kernel 6.12.62 for our BPI‑R4‑Pro‑8x

Good evening and Happy New Year everyone — I’m sharing the first image with kernel 6.12.62 for our BPI‑R4‑Pro‑8x.

I’ve worked very hard on this. I don’t have the board to test right now, so I can’t guarantee it will boot, but I’ve managed to get the build targeting kernel 6.12.62 (the latest stable kernel available) — previously the vendor kernel supplied was 6.6.93. I’m still waiting for the defective board to be returned so I can test it properly; I hope this is resolved next week.

bpi-r4-pro-8x-kernel-6.12.62

Notes:

The archive includes all packages used in the image.

CONFIG_TARGET_mediatek=y
CONFIG_TARGET_mediatek_filogic=y
CONFIG_TARGET_MULTI_PROFILE=y
CONFIG_TARGET_DEVICE_mediatek_filogic_DEVICE_bananapi_bpi-r4-pro-8x=y
CONFIG_TARGET_DEVICE_PACKAGES_mediatek_filogic_DEVICE_bananapi_bpi-r4-pro-8x=""
CONFIG_DEVEL=y
CONFIG_BUSYBOX_CUSTOM=y
CONFIG_TARGET_PER_DEVICE_ROOTFS=y
# CONFIG_BUSYBOX_CONFIG_FEATURE_EDITING_SAVEHISTORY is not set
CONFIG_BUSYBOX_CONFIG_FEATURE_TELNETD_PORT_DEFAULT=23
CONFIG_BUSYBOX_CONFIG_FEATURE_TELNETD_STANDALONE=y
CONFIG_BUSYBOX_CONFIG_FEATURE_TFTP_GET=y
CONFIG_BUSYBOX_CONFIG_FEATURE_TFTP_PUT=y
CONFIG_BUSYBOX_CONFIG_MPSTAT=y
CONFIG_BUSYBOX_CONFIG_TELNET=y
CONFIG_BUSYBOX_CONFIG_TELNETD=y
CONFIG_BUSYBOX_CONFIG_TFTP=y
CONFIG_BUSYBOX_CONFIG_VCONFIG=y
CONFIG_COLLECT_KERNEL_DEBUG=y
CONFIG_DEBUG=y
# CONFIG_DROPBEAR_ED25519 is not set
CONFIG_GNUTLS_ALPN=y
CONFIG_GNUTLS_ANON=y
CONFIG_GNUTLS_DTLS_SRTP=y
CONFIG_GNUTLS_HEARTBEAT=y
CONFIG_GNUTLS_OCSP=y
CONFIG_GNUTLS_PSK=y
CONFIG_KERNEL_ARM_PMU=y
CONFIG_KERNEL_ARM_PMUV3=y
# CONFIG_KERNEL_BLK_DEV_THROTTLING is not set
CONFIG_KERNEL_BPF_EVENTS=y
# CONFIG_KERNEL_CFS_BANDWIDTH is not set
CONFIG_KERNEL_CGROUP_DEVICE=y
CONFIG_KERNEL_CGROUP_FREEZER=y
# CONFIG_KERNEL_DEBUG_INFO_REDUCED is not set
CONFIG_KERNEL_DEVMEM=y
CONFIG_KERNEL_FTRACE=y
# CONFIG_KERNEL_KEYS is not set
CONFIG_KERNEL_KPROBES=y
CONFIG_KERNEL_KPROBE_EVENTS=y
CONFIG_KERNEL_NET_CLS_CGROUP=y
CONFIG_KERNEL_PERF_EVENTS=y
CONFIG_KERNEL_PROFILING=y
CONFIG_LIBCURL_COOKIES=y
CONFIG_LIBCURL_FILE=y
CONFIG_LIBCURL_FTP=y
CONFIG_LIBCURL_HTTP=y
CONFIG_LIBCURL_HTTP2=y
CONFIG_LIBCURL_HTTP_AUTH=y
CONFIG_LIBCURL_MBEDTLS=y
CONFIG_LIBCURL_NO_SMB="!"
CONFIG_LIBCURL_PROXY=y
CONFIG_LIBCURL_UNIX_SOCKETS=y
CONFIG_LIBIIO_LOCAL_BACKEND=y
CONFIG_LIBIIO_NETWORK_BACKEND=y
CONFIG_LIBIIO_XML_BACKEND=y
CONFIG_LIBSODIUM_MINIMAL=y
CONFIG_OPENSSL_ENGINE=y
CONFIG_OPENSSL_WITH_ASM=y
CONFIG_OPENSSL_WITH_CHACHA_POLY1305=y
CONFIG_OPENSSL_WITH_CMS=y
CONFIG_OPENSSL_WITH_DEPRECATED=y
CONFIG_OPENSSL_WITH_ERROR_MESSAGES=y
CONFIG_OPENSSL_WITH_IDEA=y
CONFIG_OPENSSL_WITH_MDC2=y
CONFIG_OPENSSL_WITH_PSK=y
CONFIG_OPENSSL_WITH_SEED=y
CONFIG_OPENSSL_WITH_SRP=y
CONFIG_OPENSSL_WITH_TLS13=y
CONFIG_OPENSSL_WITH_WHIRLPOOL=y
CONFIG_PACKAGE_CFG80211_TESTMODE=y
CONFIG_PACKAGE_airoha-en8811h-firmware=y
CONFIG_PACKAGE_atenl=y
CONFIG_PACKAGE_attr=y
CONFIG_PACKAGE_avahi-dbus-daemon=y
CONFIG_PACKAGE_blkid=y
CONFIG_PACKAGE_block-mount=y
CONFIG_PACKAGE_blockd=y
CONFIG_PACKAGE_cgi-io=y
CONFIG_PACKAGE_coreutils=y
CONFIG_PACKAGE_coreutils-base64=y
CONFIG_PACKAGE_coreutils-timeout=y
CONFIG_PACKAGE_curl=y
CONFIG_PACKAGE_dawn=y
CONFIG_PACKAGE_dbus=y
CONFIG_PACKAGE_ddns-scripts=y
CONFIG_PACKAGE_ddns-scripts-services=y
CONFIG_PACKAGE_dnsmasq=m
CONFIG_PACKAGE_dnsmasq-full=y
CONFIG_PACKAGE_dnsmasq_full_auth=y
CONFIG_PACKAGE_dnsmasq_full_conntrack=y
CONFIG_PACKAGE_dnsmasq_full_dhcp=y
CONFIG_PACKAGE_dnsmasq_full_dhcpv6=y
CONFIG_PACKAGE_dnsmasq_full_dnssec=y
CONFIG_PACKAGE_dnsmasq_full_ipset=y
CONFIG_PACKAGE_dnsmasq_full_nftset=y
CONFIG_PACKAGE_dnsmasq_full_noid=y
CONFIG_PACKAGE_dnsmasq_full_tftp=y
CONFIG_PACKAGE_e2fsprogs=y
CONFIG_PACKAGE_ephy-utils=y
CONFIG_PACKAGE_ethswbox=y
CONFIG_PACKAGE_ethtool-full=y
CONFIG_PACKAGE_f2fsck=y
CONFIG_PACKAGE_fio=y
CONFIG_PACKAGE_flex=m
CONFIG_PACKAGE_gpioctl-sysfs=y
CONFIG_PACKAGE_gpiod-tools=y
CONFIG_PACKAGE_hostapd-utils=y
CONFIG_PACKAGE_i2c-tools=y
CONFIG_PACKAGE_iio-utils=y
CONFIG_PACKAGE_ip-bridge=y
CONFIG_PACKAGE_ip-full=y
CONFIG_PACKAGE_ip6tables-zz-legacy=y
CONFIG_PACKAGE_iperf3=y
CONFIG_PACKAGE_ipset=y
CONFIG_PACKAGE_iptables-mod-conntrack-extra=y
CONFIG_PACKAGE_iptables-mod-ipopt=y
CONFIG_PACKAGE_iptables-mod-tproxy=y
CONFIG_PACKAGE_iptables-zz-legacy=y
# CONFIG_PACKAGE_iw is not set
CONFIG_PACKAGE_iw-full=y
CONFIG_PACKAGE_iwinfo=y
CONFIG_PACKAGE_jq=y
CONFIG_PACKAGE_kmod-asn1-decoder=y
CONFIG_PACKAGE_kmod-ata-core=y
CONFIG_PACKAGE_kmod-br-netfilter=y
CONFIG_PACKAGE_kmod-cfg80211=y
CONFIG_PACKAGE_kmod-crypto-arc4=y
CONFIG_PACKAGE_kmod-crypto-cbc=y
CONFIG_PACKAGE_kmod-crypto-ccm=y
CONFIG_PACKAGE_kmod-crypto-cmac=y
CONFIG_PACKAGE_kmod-crypto-ctr=y
CONFIG_PACKAGE_kmod-crypto-cts=y
CONFIG_PACKAGE_kmod-crypto-ecb=y
CONFIG_PACKAGE_kmod-crypto-gcm=y
CONFIG_PACKAGE_kmod-crypto-geniv=y
CONFIG_PACKAGE_kmod-crypto-gf128=y
CONFIG_PACKAGE_kmod-crypto-ghash=y
CONFIG_PACKAGE_kmod-crypto-lib-chacha20=y
CONFIG_PACKAGE_kmod-crypto-lib-chacha20poly1305=y
CONFIG_PACKAGE_kmod-crypto-lib-curve25519=y
CONFIG_PACKAGE_kmod-crypto-lib-poly1305=y
CONFIG_PACKAGE_kmod-crypto-rng=y
CONFIG_PACKAGE_kmod-crypto-seqiv=y
CONFIG_PACKAGE_kmod-crypto-sha3=y
CONFIG_PACKAGE_kmod-crypto-user=y
CONFIG_PACKAGE_kmod-eeprom-at24=y
CONFIG_PACKAGE_kmod-fs-autofs4=y
CONFIG_PACKAGE_kmod-fs-exfat=y
CONFIG_PACKAGE_kmod-fs-exportfs=y
CONFIG_PACKAGE_kmod-fs-ext4=y
CONFIG_PACKAGE_kmod-fs-ksmbd=y
CONFIG_PACKAGE_kmod-fs-msdos=y
CONFIG_PACKAGE_kmod-fs-netfs=y
CONFIG_PACKAGE_kmod-fs-nfs-common=y
CONFIG_PACKAGE_kmod-fs-nfs-common-rpcsec=y
CONFIG_PACKAGE_kmod-fs-nfsd=y
CONFIG_PACKAGE_kmod-fs-ntfs3=y
CONFIG_PACKAGE_kmod-fs-smbfs-common=y
CONFIG_PACKAGE_kmod-fs-vfat=y
CONFIG_PACKAGE_kmod-gpio-pca953x=y
CONFIG_PACKAGE_kmod-gpio-pcf857x=y
CONFIG_PACKAGE_kmod-gre=y
CONFIG_PACKAGE_kmod-hwmon-core=y
CONFIG_PACKAGE_kmod-hwmon-ina2xx=y
CONFIG_PACKAGE_kmod-hwmon-pwmfan=y
CONFIG_PACKAGE_kmod-i2c-algo-bit=y
CONFIG_PACKAGE_kmod-i2c-core=y
CONFIG_PACKAGE_kmod-i2c-gpio=y
CONFIG_PACKAGE_kmod-i2c-mux=y
CONFIG_PACKAGE_kmod-i2c-mux-gpio=y
CONFIG_PACKAGE_kmod-i2c-mux-pca9541=y
CONFIG_PACKAGE_kmod-i2c-mux-pca954x=y
CONFIG_PACKAGE_kmod-inet-diag=y
CONFIG_PACKAGE_kmod-ip6tables=y
CONFIG_PACKAGE_kmod-ipt-conntrack=y
CONFIG_PACKAGE_kmod-ipt-conntrack-extra=y
CONFIG_PACKAGE_kmod-ipt-core=y
CONFIG_PACKAGE_kmod-ipt-extra=y
CONFIG_PACKAGE_kmod-ipt-ipopt=y
CONFIG_PACKAGE_kmod-ipt-ipset=y
CONFIG_PACKAGE_kmod-ipt-nat=y
CONFIG_PACKAGE_kmod-ipt-offload=y
CONFIG_PACKAGE_kmod-ipt-tproxy=y
CONFIG_PACKAGE_kmod-iptunnel=y
CONFIG_PACKAGE_kmod-l2tp=y
CONFIG_PACKAGE_kmod-lib-crc-itu-t=y
CONFIG_PACKAGE_kmod-lib-crc16=y
CONFIG_PACKAGE_kmod-libphy=y
CONFIG_PACKAGE_kmod-mac80211=y
CONFIG_PACKAGE_kmod-mii=y
CONFIG_PACKAGE_kmod-mppe=y
CONFIG_PACKAGE_kmod-mt76-connac=y
CONFIG_PACKAGE_kmod-mt76-core=y
CONFIG_PACKAGE_kmod-mt7996-233-firmware=y
CONFIG_PACKAGE_kmod-mt7996-firmware=y
CONFIG_PACKAGE_kmod-mt7996-firmware-common=y
CONFIG_PACKAGE_kmod-mt7996e=y
CONFIG_PACKAGE_kmod-nf-conncount=y
CONFIG_PACKAGE_kmod-nf-conntrack-netlink=y
CONFIG_PACKAGE_kmod-nf-ipt=y
CONFIG_PACKAGE_kmod-nf-ipt6=y
CONFIG_PACKAGE_kmod-nf-socket=y
CONFIG_PACKAGE_kmod-nf-tproxy=y
CONFIG_PACKAGE_kmod-nft-socket=y
CONFIG_PACKAGE_kmod-nft-tproxy=y
CONFIG_PACKAGE_kmod-nls-base=y
CONFIG_PACKAGE_kmod-nls-cp437=y
CONFIG_PACKAGE_kmod-nls-iso8859-1=y
CONFIG_PACKAGE_kmod-nls-ucs2-utils=y
CONFIG_PACKAGE_kmod-nls-utf8=y
CONFIG_PACKAGE_kmod-oid-registry=y
CONFIG_PACKAGE_kmod-phy-airoha-en8811h=y
CONFIG_PACKAGE_kmod-phy-aquantia=y
CONFIG_PACKAGE_kmod-phy-marvell=y
CONFIG_PACKAGE_kmod-phy-marvell-10g=y
CONFIG_PACKAGE_kmod-phylink=y
CONFIG_PACKAGE_kmod-pppol2tp=y
CONFIG_PACKAGE_kmod-pptp=y
CONFIG_PACKAGE_kmod-regmap-core=y
CONFIG_PACKAGE_kmod-regmap-i2c=y
CONFIG_PACKAGE_kmod-rtc-pcf8563=y
CONFIG_PACKAGE_kmod-scsi-core=y
CONFIG_PACKAGE_kmod-scsi-generic=y
CONFIG_PACKAGE_kmod-sfp=y
CONFIG_PACKAGE_kmod-spi-dev=y
CONFIG_PACKAGE_kmod-tun=y
CONFIG_PACKAGE_kmod-udptunnel4=y
CONFIG_PACKAGE_kmod-udptunnel6=y
CONFIG_PACKAGE_kmod-usb-common=y
CONFIG_PACKAGE_kmod-usb-core=y
CONFIG_PACKAGE_kmod-usb-net=y
CONFIG_PACKAGE_kmod-usb-net-qmi-wwan=y
CONFIG_PACKAGE_kmod-usb-storage=y
CONFIG_PACKAGE_kmod-usb-storage-extras=y
CONFIG_PACKAGE_kmod-usb-storage-uas=y
CONFIG_PACKAGE_kmod-usb-wdm=y
CONFIG_PACKAGE_kmod-usb-xhci-hcd=y
CONFIG_PACKAGE_kmod-usb-xhci-mtk=y
CONFIG_PACKAGE_kmod-usb3=y
CONFIG_PACKAGE_kmod-wireguard=y
CONFIG_PACKAGE_ksmbd-server=y
CONFIG_PACKAGE_lftp=y
CONFIG_PACKAGE_libaio=y
CONFIG_PACKAGE_libatomic=y
CONFIG_PACKAGE_libattr=y
CONFIG_PACKAGE_libavahi-client=y
CONFIG_PACKAGE_libavahi-dbus-support=y
CONFIG_PACKAGE_libbfd=y
CONFIG_PACKAGE_libblkid=y
CONFIG_PACKAGE_libbpf=y
CONFIG_PACKAGE_libbz2=y
CONFIG_PACKAGE_libcap=y
CONFIG_PACKAGE_libcap-ng=y
CONFIG_PACKAGE_libcomerr=y
CONFIG_PACKAGE_libctf=y
CONFIG_PACKAGE_libcurl=y
CONFIG_PACKAGE_libdaemon=y
CONFIG_PACKAGE_libdbus=y
CONFIG_PACKAGE_libdw=y
CONFIG_PACKAGE_libe2p=y
CONFIG_PACKAGE_libelf=y
CONFIG_PACKAGE_libev=y
CONFIG_PACKAGE_libevdev=y
CONFIG_PACKAGE_libexpat=y
CONFIG_PACKAGE_libext2fs=y
CONFIG_PACKAGE_libf2fs=y
CONFIG_PACKAGE_libfdisk=y
CONFIG_PACKAGE_libgcrypt=y
CONFIG_PACKAGE_libgmp=y
CONFIG_PACKAGE_libgnutls=y
CONFIG_PACKAGE_libgpg-error=y
CONFIG_PACKAGE_libgpiod=y
CONFIG_PACKAGE_libi2c=y
CONFIG_PACKAGE_libiio=y
CONFIG_PACKAGE_libip4tc=y
CONFIG_PACKAGE_libip6tc=y
CONFIG_PACKAGE_libiperf3=y
CONFIG_PACKAGE_libipset=y
CONFIG_PACKAGE_libiptext=y
CONFIG_PACKAGE_libiptext6=y
CONFIG_PACKAGE_libiwinfo=y
CONFIG_PACKAGE_libiwinfo-data=y
CONFIG_PACKAGE_libkmod=y
CONFIG_PACKAGE_liblua=y
CONFIG_PACKAGE_liblucihttp=y
CONFIG_PACKAGE_liblucihttp-lua=y
CONFIG_PACKAGE_liblucihttp-ucode=y
CONFIG_PACKAGE_libmount=y
CONFIG_PACKAGE_libncurses=y
CONFIG_PACKAGE_libnetfilter-conntrack=y
CONFIG_PACKAGE_libnettle=y
CONFIG_PACKAGE_libnfnetlink=y
CONFIG_PACKAGE_libnghttp2=y
CONFIG_PACKAGE_libnl-core=y
CONFIG_PACKAGE_libnl-genl=y
CONFIG_PACKAGE_libopcodes=y
CONFIG_PACKAGE_libopenssl=y
CONFIG_PACKAGE_libopenssl-conf=y
CONFIG_PACKAGE_libopenssl-legacy=y
CONFIG_PACKAGE_libpcap=y
CONFIG_PACKAGE_libpci=y
CONFIG_PACKAGE_libpcre2=y
CONFIG_PACKAGE_libpopt=y
CONFIG_PACKAGE_libpthread=y
CONFIG_PACKAGE_libreadline=y
CONFIG_PACKAGE_librt=y
CONFIG_PACKAGE_libsmartcols=y
CONFIG_PACKAGE_libsodium=y
CONFIG_PACKAGE_libss=y
CONFIG_PACKAGE_libstdcpp=y
CONFIG_PACKAGE_libtasn1=y
CONFIG_PACKAGE_libtirpc=y
CONFIG_PACKAGE_libtraceevent=y
CONFIG_PACKAGE_libubus-lua=y
CONFIG_PACKAGE_libuci-lua=y
CONFIG_PACKAGE_libudev-zero=y
CONFIG_PACKAGE_libudns=y
CONFIG_PACKAGE_libugpio=y
CONFIG_PACKAGE_liburing=y
CONFIG_PACKAGE_libusb-1.0=y
CONFIG_PACKAGE_libuuid=y
CONFIG_PACKAGE_libwolfssl=y
CONFIG_PACKAGE_libxml2=y
CONFIG_PACKAGE_libxtables=y
CONFIG_PACKAGE_lsblk=y
CONFIG_PACKAGE_lua=y
CONFIG_PACKAGE_luci=y
CONFIG_PACKAGE_luci-app-autoreboot=y
CONFIG_PACKAGE_luci-app-cpu-status=y
CONFIG_PACKAGE_luci-app-ddns=y
CONFIG_PACKAGE_luci-app-fakemesh=y
CONFIG_PACKAGE_luci-app-firewall=y
CONFIG_PACKAGE_luci-app-ksmbd=y
CONFIG_PACKAGE_luci-app-omcproxy=y
CONFIG_PACKAGE_luci-app-package-manager=y
CONFIG_PACKAGE_luci-app-samba4=y
CONFIG_PACKAGE_luci-app-temp-status=y
CONFIG_PACKAGE_luci-app-upnp=y
CONFIG_PACKAGE_luci-app-wifischedule=y
CONFIG_PACKAGE_luci-base=y
CONFIG_PACKAGE_luci-compat=y
CONFIG_PACKAGE_luci-lib-base=y
CONFIG_PACKAGE_luci-lib-ip=y
CONFIG_PACKAGE_luci-lib-ipkg=y
CONFIG_PACKAGE_luci-lib-jsonc=y
CONFIG_PACKAGE_luci-lib-nixio=y
CONFIG_PACKAGE_luci-lib-uqr=y
CONFIG_PACKAGE_luci-light=y
CONFIG_PACKAGE_luci-lua-runtime=y
CONFIG_PACKAGE_luci-mod-admin-full=y
CONFIG_PACKAGE_luci-mod-dashboard=y
CONFIG_PACKAGE_luci-mod-network=y
CONFIG_PACKAGE_luci-mod-status=y
CONFIG_PACKAGE_luci-mod-system=y
CONFIG_PACKAGE_luci-proto-ipv6=y
CONFIG_PACKAGE_luci-proto-ppp=y
CONFIG_PACKAGE_luci-proto-qmi=y
CONFIG_PACKAGE_luci-proto-relay=y
CONFIG_PACKAGE_luci-proto-wireguard=y
CONFIG_PACKAGE_luci-theme-bootstrap=y
CONFIG_PACKAGE_microsocks=y
CONFIG_PACKAGE_mii_mgr=y
CONFIG_PACKAGE_minicom=y
CONFIG_PACKAGE_miniupnpd-nftables=y
CONFIG_PACKAGE_mkf2fs=y
CONFIG_PACKAGE_mmc-utils=y
CONFIG_PACKAGE_mt76-test=y
CONFIG_PACKAGE_mt7988-wo-firmware=y
CONFIG_PACKAGE_mt798x-2p5g-phy-firmware-internal=y
CONFIG_PACKAGE_mtk_factory_rw=y
CONFIG_PACKAGE_mtkhnat_util=y
CONFIG_PACKAGE_musl-fts=y
CONFIG_PACKAGE_nand-utils=y
CONFIG_PACKAGE_netfilter-flowtable=y
CONFIG_PACKAGE_netsys_dbg_util=y
CONFIG_PACKAGE_nping=y
CONFIG_PACKAGE_objdump=y
CONFIG_PACKAGE_omcproxy=y
CONFIG_PACKAGE_opkg=y
CONFIG_PACKAGE_pciids=y
CONFIG_PACKAGE_pciutils=y
CONFIG_PACKAGE_perf=y
CONFIG_PACKAGE_ppp-mod-pppol2tp=y
CONFIG_PACKAGE_ppp-mod-pptp=y
CONFIG_PACKAGE_pv=y
CONFIG_PACKAGE_regs=y
CONFIG_PACKAGE_relayd=y
CONFIG_PACKAGE_resolveip=y
CONFIG_PACKAGE_rpcd=y
CONFIG_PACKAGE_rpcd-mod-file=y
CONFIG_PACKAGE_rpcd-mod-iwinfo=y
CONFIG_PACKAGE_rpcd-mod-luci=y
CONFIG_PACKAGE_rpcd-mod-rrdns=y
CONFIG_PACKAGE_rpcd-mod-ucode=y
CONFIG_PACKAGE_samba4-libs=y
CONFIG_PACKAGE_samba4-server=y
CONFIG_PACKAGE_sfdisk=y
CONFIG_PACKAGE_smp_util=y
CONFIG_PACKAGE_spidev-test=y
CONFIG_PACKAGE_switch=y
CONFIG_PACKAGE_tcpdump=y
CONFIG_PACKAGE_terminfo=y
# CONFIG_PACKAGE_trusted-firmware-a-mt7981-ram-ddr3 is not set
# CONFIG_PACKAGE_trusted-firmware-a-mt7981-ram-ddr4 is not set
# CONFIG_PACKAGE_trusted-firmware-a-mt7986-ram-ddr3 is not set
# CONFIG_PACKAGE_trusted-firmware-a-mt7986-ram-ddr4 is not set
# CONFIG_PACKAGE_trusted-firmware-a-mt7987-ram-comb is not set
# CONFIG_PACKAGE_trusted-firmware-a-mt7988-ram-ddr4 is not set
CONFIG_PACKAGE_ucode-mod-digest=y
CONFIG_PACKAGE_ucode-mod-html=y
CONFIG_PACKAGE_ucode-mod-lua=y
CONFIG_PACKAGE_ucode-mod-math=y
CONFIG_PACKAGE_uhttpd=y
CONFIG_PACKAGE_uhttpd-mod-ubus=y
CONFIG_PACKAGE_umdns=y
CONFIG_PACKAGE_uqmi=y
CONFIG_PACKAGE_usbids=y
CONFIG_PACKAGE_usbutils=y
CONFIG_PACKAGE_usteer=y
CONFIG_PACKAGE_wget-ssl=y
CONFIG_PACKAGE_wifi-scripts=y
CONFIG_PACKAGE_wifischedule=y
CONFIG_PACKAGE_wireguard-tools=y
CONFIG_PACKAGE_wireless-regdb=y
CONFIG_PACKAGE_wpa-cli=y
CONFIG_PACKAGE_wpad-basic-mbedtls=m
CONFIG_PACKAGE_wpad-openssl=y
CONFIG_PACKAGE_wsdd2=y
CONFIG_PACKAGE_wwan=y
CONFIG_PACKAGE_xl2tpd=y
CONFIG_PACKAGE_xray-core=y
CONFIG_PACKAGE_xtables-legacy=y
CONFIG_PACKAGE_yq=y
CONFIG_SAMBA4_SERVER_AVAHI=y
CONFIG_SAMBA4_SERVER_NETBIOS=y
CONFIG_SAMBA4_SERVER_VFS=y
CONFIG_SAMBA4_SERVER_WSDD2=y
CONFIG_USE_GC_SECTIONS=y
CONFIG_USE_LTO=y
CONFIG_WOLFSSL_HAS_NO_HW=y
CONFIG_WPA_MSG_MIN_PRIORITY=2
# CONFIG_PACKAGE_kmod-crypto-kpp is not set
# CONFIG_PCRE2_JIT_ENABLED is not set

Although the screenshot shows Docker, this release does not include Docker. Added support for the following XGS‑PON modules: WAS‑110‑H‑COM, SPP425H‑GAB4, and the Zaram ZXOS11NPI XGS‑PON module. As I said, I cannot fully test on hardware yet — building and debugging without the actual board is extremely hard and it may not even boot. When I receive the replacement board (promised by the vendor), I’ll test and report back. Please try it and tell me if the hours invested in porting to kernel 6.12.62 were worth it. Any feedback about successful boot, interfaces, or module support is very welcome.

Attached image: a screenshot of how the web UI should look — this one is from my other Banana Pi R4 (8 GB). I’ve left the Banana Pi logo in the UI as a small courtesy to the company (it appears on all my images).

One more note (status with the vendor): I’ll prepare a final email to the vendor tomorrow — if I don’t receive the requested test video by tomorrow and they haven’t shipped the replacement board by Tuesday, I will escalate the case to PayPal and publish all email correspondence on their forum. Nevertheless, in good faith I’m sharing this work on the official forum so others can test it if it helps.

Thanks and best regards, Francisco (Bruda on OpenWrt)

Great work, thank you for such a contribution. I have a question: is it possible to add support for a GPON ONU stick? On the R4, this one works, and I’d really like to use the same stick on the Pro version as well gpon stick

awesome, thanks for the effort!

very interested in trying this out, however, might have missed it but while i can see a binary blob shared on mediafire hosting - is there a git repo available?

Good morning abs1ck Sergey,

If possible, I can create a patch for your XPON ONU Stick With MAC SC HSGQ V08 with DDM XPON, but I need you to send me your EEPROM, and I’ll be happy to create it for you.

However, I first need to confirm if the image boots, as the issue wouldn’t be with the patch itself. I’d need to make a new compilation specifically for you. If the image boots, I will do this without any problems and add it permanently to my images.

Please send me your EEPROM using the command:

command i2cdump -y 3 0x50

But please, I need to know if the image boots, at least so I can start working on it.

Also, if my image with the new kernel does not boot, I can integrate it into the official 6.6.93 kernel. I already have an image posted in the same forum on the official link shared by the Banana Pi Sinovoip BPI Team Leader. Here is the link:

In fact, I currently own:

2 Banana Pi R4 1 Banana Pi R4-GB 8GB RAM 3 BE14000 boards

All my images for this community have been compiled and uploaded to OpenWrt. I’ve even included their logo. You can see these images at the link I provided for OpenWrt

Hello rbtree, currently my repositories are not available because they are private. This is due to the fact that the pre-order board I purchased with such excitement arrived defective. On top of that, I faced serious difficulties getting the official Banana Pi provider to commit to providing a replacement. In fact, I am still waiting for them to send the replacement and for the new board to finally be available in my country…

I await updates from both of you.

Thanks a lot. I have a feeling you’ll be able to check the boot process faster than I can — my package with the board stopped being tracked on December 26, even though it should have arrived by now, and it’s still not here :pensive:

Would be great if you can publish code and join the PR for R4 Pro basic support to fix missing parts.

The main bootime delay is waiting for mxl switch and the aeonsemi phys. Or do you mean figuring out how bootprocess works?

Nah, I can’t really test the image boot at all, because my package with the board got lost and isn’t being tracked, and my hands are already itching to do whatever I want with it :smile:

Good morning abs1ck Sergey, it’s not necessary to test the command on this image for this type of board.

It’s fine if you run it; if you have OpenWRT on another router, you can send the command and it will give you the EEPROM. Send it to me and I’ll patch it.

If someone could be so kind as to tell me if the image boots and works, that would be sufficient.

Regards

Do you only need the information from a single cell at 0x50, or everything after it as well?

Good afternoon, please send me all the information the command gives you.

Thank you.

incredible job compiling the mtk-sdk for the pro card

Hi Francisco

From this package:

https://www.mediafire.com/file/0dt4hf2k9b540ia/bpi-r4-pro-8x.zip/file

I uploaded the file to the SDCard:

bpi-r4-pro-8x\targets\mediatek\filogic\openwrt-mediatek-filogic-bananapi_bpi-r4-pro-8x-sdcard.img.gz

Console output:

NOTICE:  BL2: v2.13.0(release):OpenWrt v2025.07.11~78a0dfd9-1 (mt7988-sdmmc-comb)
NOTICE:  BL2: Built : 19:28:21, Dec 18 2025
NOTICE:  WDT: Cold boot
NOTICE:  WDT: disabled
NOTICE:  CPU: MT7988
NOTICE:  EMI: Using DDR unknown settings
NOTICE:  EMI: Detected DRAM size: 4096 MB
NOTICE:  EMI: complex R/W mem test passed
NOTICE:  LVTS: Enable thermal HW reset
NOTICE:  Located partition 'fip' at 0x680000, size 0x400000
NOTICE:  BL2: Booting BL31
NOTICE:  BL31: v2.13.0(release):OpenWrt v2025.07.11~78a0dfd9-1 (mt7988-sdmmc-comb)
NOTICE:  BL31: Built : 19:28:21, Dec 18 2025


U-Boot 2025.10-OpenWrt-r32352-7dfd8093d8 (Dec 18 2025 - 19:28:21 +0000)

CPU:   MediaTek MT7988
Model: Bananapi BPi-R4 Pro 8X
DRAM:  4 GiB
Core:  67 devices, 24 uclasses, devicetree: embed
spi-nand: spi_nand spi_nand@0: WINBOND W25N02KV SPI NAND was found.
spi-nand: spi_nand spi_nand@0: 256 MiB, block size: 128 KiB, page size: 2048, OOB size: 128
MMC:   mmc@11230000: 0
Loading Environment from MMC... Reading from MMC(0)... OK
In:    serial@11000000
Out:   serial@11000000
Err:   serial@11000000
reset button found
Loading Environment from MMC... Reading from MMC(0)... OK
Net:   MediaTek MT7988 built-in switch
eth0: ethernet@15110100

        ( ( ( OpenWrt ) ) )  [SD card]       U-Boot 2025.10-OpenWrt-r32352-7dfd8093d8 (Dec 18 2025 - 19:28:21 +0000)

      1. Run default boot command.
      2. Boot system via TFTP.
      3. Boot production system from SD card.
      4. Boot recovery system from SD card.
      5. Load production system via TFTP then write to SD card.
      6. Load recovery system via TFTP then write to SD card.
      7. Install bootloader, recovery and production to NAND.
      8. Reboot.
      9. Reset all settings to factory defaults.
      0. Exit


  Press UP/DOWN to move, ENTER to select, ESC to quit
LED 'green:status' not found (err=-19)
MMC read: dev # 0, block # 131072, count 256 ... 256 blocks read: OK
LED 'green:status' not found (err=-19)
LED 'blue:status' not found (err=-19)
MMC read: dev # 0, block # 24576, count 256 ... 256 blocks read: OK
LED 'blue:status' not found (err=-19)
LED 'blue:status' not found (err=-19)
MMC read: dev # 0, block # 24576, count 256 ... 256 blocks read: OK
LED 'blue:status' not found (err=-19)
LED 'blue:status' not found (err=-19)
Using ethernet@15110100 device
TFTP from server 192.168.1.254; our IP address is 192.168.1.1
Filename 'openwrt-mediatek-filogic-bananapi_bpi-r4-pro-8x-initramfs-recovery.itb'.
Load address: 0x50000000
Loading: *
ARP Retry count exceeded; starting again
## Loading kernel (any) from FIT Image at 50000000 ...
Bad FIT kernel image format! (err=-22)
ERROR -2: can't get kernel image!
Using ethernet@15110100 device
TFTP from server 192.168.1.254; our IP address is 192.168.1.1
Filename 'openwrt-mediatek-filogic-bananapi_bpi-r4-pro-8x-initramfs-recovery.itb'.
Load address: 0x50000000
Loading: *
ARP Retry count exceeded; starting again
## Loading kernel (any) from FIT Image at 50000000 ...
Bad FIT kernel image format! (err=-22)
ERROR -2: can't get kernel image!
Using ethernet@15110100 device
TFTP from server 192.168.1.254; our IP address is 192.168.1.1
Filename 'openwrt-mediatek-filogic-bananapi_bpi-r4-pro-8x-initramfs-recovery.itb'.
Load address: 0x50000000
Loading: *
ARP Retry count exceeded; starting again
## Loading kernel (any) from FIT Image at 50000000 ...
Bad FIT kernel image format! (err=-22)
ERROR -2: can't get kernel image!
Using ethernet@15110100 device
TFTP from server 192.168.1.254; our IP address is 192.168.1.1
Filename 'openwrt-mediatek-filogic-bananapi_bpi-r4-pro-8x-initramfs-recovery.itb'.
Load address: 0x50000000
Loading: *

thanks for the reply. i understand your frustration w/ the process.

for me, the main value of the work would be cleanly separated patches on top of mainline openwrt + mtk feed, as that would enable retargeting and custom configuration for kernel,

none of which is currently possible with single-commit codeblob repo provided by sinovoip (embedding/targeting some old kernel). i did a quick dissection of the codeblob but don’t have the ~week to separate it to patches on top of openwrt + mtk feed.

mtk feed itself otoh is missing R4 PRO support.

thus, for me personally the binary blob you’ve published is of no value.

Good afternoon, Piotr Najberek,

Thank you for the log; it’s helpful for me to continue working. Without the board, it’s extremely challenging, but at least now I have some additional information.

While I wait for the new board to be sent to me, as my current one was defective, I’ll continue working on it and hope to find a solution. At the very least, I am not just waiting idly for the replacement.

Thank you for confirming that the image is not working. I’ll review all the work I’ve done so far.

If I come up with anything new before I receive the board, I’ll send it to you first so you can test it and confirm whether it works. Thank you once again for the log.

Happy New Year!

@Xiaomi_ax3600 btw i just realIzed:

Hello rbtree, currently my repositories are not available because they are private

in case you’re not aware, as you are shipping binary packages including GPL code, while this is arguably a convenient method to attempt pressure the manufacturer, it’s still a violation of GPL to not provide the modified source.

Hi — thanks for the reminder and for calling this out.

I made the Banana Pi–related repositories private this month because of an ongoing RMA/replacement issue with the board the vendor sent me. I hid those specific repos only while I was waiting for the replacement board so I could test and verify the sources/builds on actual hardware. I do compile offline and I have other public repositories (unrelated to Banana Pi) that remain public.

To be clear: I have already made my other BananaPi repositories public. The only repo I still keep private is the kernel‑migration repository because I’m actively working on it offline and need the replacement board to complete and verify the build. As soon as the kernel migration works on the replacement board, that repository will be made public and I will publish the modified source and full build instructions for the binaries I shared.

Also, please note that the other private repositories I mentioned are not related to router or kernel builds — they are my personal application projects and have nothing to do with BananaPi or the router compilations.

Sorry for any confusion and thank you for the reminder — I’ll post the repo links here as soon as they are public. brudalevante · GitHub

Good morning, sorry, this work was done on this image for Banana Pi R4 kernel 6.12.57

https://forum.openwrt.org/t/banana-bpi-r4-all-related-to-mtk-sdk/221080/916

Regards

Just want to mention the current progress on upstream openwrt state (without mtk-sdk).

I’m a bit further as noted in discussion, please help testing and contributing.

Good afternoon @frank-w, I’m going to review the work done to see if I can contribute and what we can all do together.

Regards and thanks for the link.