immortalwrt/target/linux
Tianling Shen 95e80a87ec
mediatek: add support for Bananapi BPi-R3 Mini support
Hardware specification:
  SoC: MediaTek MT7986A 4x A53
  Flash: 128MB SPI-NAND, 8GB eMMC
  RAM: 2GB DDR4
  Ethernet: 2x 2.5GbE
  WiFi: MediaTek MT7976C 2x2 2.4G + 3x3 5G
  Interface: M.2 B-Key, M.2 M-Key, USB 2.0
  LED: Power, Status, WLAN2G, WLAN5G, LTE, SSD
  Button: Reset, Boot switch
  Power: 12V Type-C PD

eMMC Flash instructions:
1. SSH to BPi-R3 Mini, and upload all necessary firmware.
2. Write new GPT table:
   dd if=immortalwrt-mediatek-filogic-bananapi_bpi-r3-mini-emmc-gpt.bin of=/dev/mmcblk0 bs=512 seek=0 count=34 conv=fsync
3. Erase and write new BL2:
   echo 0 > /sys/block/mmcblk0boot0/force_ro
   dd if=/dev/zero of=/dev/mmcblk0boot0 bs=512 count=8192 conv=fsync
   dd if=immortalwrt-mediatek-filogic-bananapi_bpi-r3-mini-emmc-preloader.bin of=/dev/mmcblk0boot0 bs=512 conv=fsync
4. Erase and write new FIP:
   dd if=/dev/zero of=/dev/mmcblk0 bs=512 seek=13312 count=8192 conv=fsync
   dd if=immortalwrt-mediatek-filogic-bananapi_bpi-r3-mini-emmc-bl31-uboot.fip of=/dev/mmcblk0 bs=512 seek=13312 conv=fsync
5. Set static IP on your PC:
   IP 192.168.1.254, GW 192.168.1.1
6. Serve ImmortalWrt initramfs image using TFTP server.
7. Cut off the power and re-engage, wait for TFTP recovery to complete.
8. After ImmortalWrt has booted, perform sysupgrade.
9. Additionally, if you want to have eMMC recovery boot feature:
     (Don't worry! You will always have TFTP recovery boot feature.)
   dd if=immortalwrt-mediatek-filogic-bananapi_bpi-r3-mini-initramfs-recovery.itb of=/dev/mmcblk0p4 bs=512 conv=fsync

NAND Flash instructions:
1. SSH to BPi-R3 Mini, and upload all necessary firmware.
2. Erase and write new BL2:
   opkg install kmod-mtd-rw
   mtd erase BL2
   mtd write immortalwrt-mediatek-filogic-bananapi_bpi-r3-mini-snand-preloader.bin BL2
3. Erase and write new FIP:
   mtd erase FIP
   mtd write immortalwrt-mediatek-filogic-bananapi_bpi-r3-mini-snand-bl31-uboot.fip FIP
4. Set static IP on your PC:
   IP 192.168.1.254, GW 192.168.1.1
5. Serve ImmortalWrt initramfs image using TFTP server.
6. Cut off the power and re-engage, wait for TFTP recovery to complete.
7. After ImmortalWrt has booted, erase UBI volumes:
   umount /mnt/ubi0*
   ubidetach -p /dev/mtd4
   ubiformat -y /dev/mtd4
   ubiattach -p /dev/mtd4
8. Create new ubootenv volumes:
   ubimkvol /dev/ubi0 -n 0 -N ubootenv -s 128KiB
   ubimkvol /dev/ubi0 -n 1 -N ubootenv2 -s 128KiB
9. Additionally, if you want to have NAND recovery boot feature:
     (Don't worry! You will always have TFTP recovery boot feature.)
   ubimkvol /dev/ubi0 -n 2 -N recovery -s 20MiB
   ubiupdatevol /dev/ubi0_2 immortalwrt-mediatek-filogic-bananapi_bpi-r3-mini-initramfs-recovery.itb
10. Perform sysupgrade.

Thank you Banana Pi for providing this board.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
(cherry picked from commit 14e2410bbf)
2023-10-28 15:23:36 +08:00
..
airoha kernel: bump 5.15 to 5.15.125 2023-08-10 21:07:50 +02:00
apm821xx Merge Official sOURCE 2023-10-23 20:17:09 +08:00
archs38 Merge Official Source 2023-05-12 19:20:08 +08:00
armsr Merge Official sOURCE 2023-10-23 20:17:09 +08:00
at91 treewide: remove files for building 5.10 kernel 2023-05-12 13:02:43 +02:00
ath25 Merge Official Source 2023-09-27 10:14:47 +08:00
ath79 Merge Official Source 2023-10-15 11:08:58 +08:00
bcm27xx Merge Official Source 2023-09-27 10:14:47 +08:00
bcm47xx Merge Official Source 2023-10-11 09:20:52 +08:00
bcm53xx Merge Official Source 2023-10-28 12:33:00 +08:00
bcm63xx Merge Official Source 2023-08-13 10:38:44 +08:00
bcm4908 kernel: bump 5.15 to 5.15.133 2023-10-08 16:52:48 +02:00
bmips Merge Official Source 2023-08-13 10:38:44 +08:00
gemini treewide: remove files for building 5.10 kernel 2023-05-12 13:02:43 +02:00
generic generic: net: phy: realtek: add interrupt support for RTL8221B 2023-10-15 11:10:06 +08:00
imx kernel: backport NVMEM patches queued for the v6.5 2023-07-10 12:54:53 +02:00
ipq40xx Merge Official sOURCE 2023-10-23 20:17:09 +08:00
ipq806x Merge Official Source 2023-09-27 10:14:47 +08:00
ipq807x qualcommax: improve detect ethernet ports 2023-08-23 09:50:13 +08:00
kirkwood Merge Official Source 2023-05-21 20:13:18 +08:00
lantiq Merge Official Source 2023-10-28 12:33:00 +08:00
layerscape generic: sync MediaTek Ethernet driver with upstream 2023-09-04 23:00:34 +01:00
malta Merge Official Source 2023-05-12 19:20:08 +08:00
mediatek mediatek: add support for Bananapi BPi-R3 Mini support 2023-10-28 15:23:36 +08:00
mpc85xx Merge Official Source 2023-09-28 11:01:47 +08:00
mvebu Merge Official Source 2023-09-25 22:46:45 +08:00
mxs mxs: rework image generation 2023-07-06 17:04:13 +02:00
octeon kernel: bump 5.15 to 5.15.125 2023-08-10 21:07:50 +02:00
octeontx kernel: bump 5.15 to 5.15.123 2023-07-31 01:39:50 +02:00
omap Merge Official Source 2023-05-12 19:20:08 +08:00
oxnas Merge Official Source 2023-10-11 09:20:52 +08:00
pistachio kernel: bump 5.15 to 5.15.132 2023-09-25 23:04:37 +02:00
qoriq kernel: fix handling of CONFIG_DYNAMIC_DEBUG 2023-05-03 10:26:17 -07:00
ramips Merge Official Source 2023-10-28 12:33:00 +08:00
realtek realtek: add support for HPE 1920-8g-poe+ (65W) 2023-10-14 20:15:05 +02:00
rockchip rockchip: configure wlan led for nanopi r5c 2023-10-13 17:05:28 +08:00
sifiveu Merge Official Source 2023-06-17 18:28:30 +08:00
sunxi sunxi: add missing Kconfig symbol 2023-09-24 10:31:01 +08:00
tegra Merge Official Source 2023-05-12 19:20:08 +08:00
uml Merge Official Source 2023-09-27 10:14:47 +08:00
x86 Merge Official Source 2023-09-19 10:07:18 +08:00
zynq generic: enable CONFIG_ARM_CRYPTO for 32bit arm targets 2023-05-10 19:01:45 +02:00
Makefile