openwrt-6.x/target/linux
INAGAKI Hiroshi 97af506edf mvebu: add support for Check Point V-81
Check Point V-80 (Quantum Spark 1590 Appliance) is an Appliance, based
on Armada 8040 (88F8040).

Specification:

- SoC             : Marvell Armada 8040 (88F8040)
- RAM             : DDR4 2 GiB (4x 512 MiB chip)
- Flash           : eMMC 4 GiB
- Ethernet        : 10x 10/100/1000 Mbps
  - LAN 1-8       : Marvell 88E6393X
  - WAN           : Marvell 88E1512
  - DMZ           : Marvell 88E1512 (RJ-45/SFP combo)
- LEDs/Keys (GPIO): 11x/1x
- UART            : "CONSOLE" port (USB 1.1 Type-C)
  - chip          : Silicon Labs CP2102N
  - port          : ttyS0
  - settings      : 115200bps 8n1
- HW Monitoring   : 2x nuvoTon NCT7802Y
- USB             : USB 3.0 Type-A
- Power           : 12 VDC, 3.3 A
  - plug          : DC Plug 2.5/5.5 mm (inner/outer)

Flash instruction (common):

1. Boot V-81 normally
2. Login to the vendor CLI (default: admin/admin) and login to the Linux
   CLI by `expert` command
3. Update U-Boot environment variables by the following commands

   fw_setenv bootcmd_ow_usb 'usb start; load usb 0:1 ${loadaddr} boot.scr && source ${loadaddr}'
   fw_setenv bootcmd_ow_sd 'load mmc 0:1 ${loadaddr} boot.scr && source ${loadaddr}'
   fw_setenv bootcmd_ow_emmc 'run set_mmc_internal; mmc read ${loadaddr} ${prim_header_mmc_blk} 4 && source ${loadaddr}'
   fw_setenv bootcmd 'run bootcmd_ow_usb; run bootcmd_ow_sd; run bootcmd_ow_emmc; run bootcmd_part${activePartition};'

   Attention: don't forget single quatations of values to prevent
              expansion of variables

4. Turn off the device

Flash instruction (USB-boot/SD-boot):

1. Extract and burn (squashfs|ext4)-sdcard.img.gz to USB storage or
   MicroSD card
2. Connect that storage to V-81
3. Turn on V-81 and it will be booted with OpenWrt in that USB storage

Flash instruction (eMMC-boot):

1. Copy initramfs image, dtb and bootsctipt to the USB storage with
   renaming

   initramfs.bin -------> Image
   dtb -----------------> armada-8040-v-81.dtb
   bootscript (.scr) ---> boot.scr

2. Connect that storage to the USB 3.0 port on V-81
3. Turn on V-81 and it will be booted with OpenWrt initramfs image in
   that USB storage
4. Upload (squashfs|ext4)-sysupgrade.gz to V-81
5. Perform sysupgrade with the uploaded image
6. Wait ~100 seconds to complete flashing

Reverting to stock firmware:

1. Turn on V-81 and interrupt booting by Ctrl + C
2. Select "4. Restore to Factory Defaults (local)"
3. Wait ~180 seconds to complete restoring and rebooting

Notes:

- The partition table in the internal eMMC has single partition, but
  "blkdevparts=" parameter will be passed from the bootloader and that
  definition will be used instead.

- The port-side LED pairs of RJ-45/SFP ports on V-81 are switched by a
  GPIO pin of pin7 on &cp0_gpio2. (High(1): RJ-45, Low(0): SFP)
  This needs to be switched manually.

- The MicroSD card slot is too unstable and the following messages are
  printed without "marvell,xenon-phy-slow-mode;" property.

  [   97.060851] mmc0: error -84 whilst initialising SD card
  [   97.137049] mmc0: error -84 whilst initialising SD card
  [   97.214315] mmc0: error -84 whilst initialising SD card
  ...

- There are no detailed information about maximum power consumption
  limit of the SFP port or optional DSL-SFP modules sold officially.
  But the power requirement of almost DSL-SFP modules are 3.3V/700mA, so
  set the maximum value of the SFP port to 2000 mW (Power Level III).

- Do not insert a MicroSD card before turning of the device when OpenWrt
  installation. The stock firmware deletes all files in the first
  partition automatically, to use it as a storage for logs.

MAC addresses:

LAN: 00:1C:7F:xx:xx:FA (mmcblk1boot0, ethaddr  (text))
WAN: 00:1C:7F:xx:xx:F9 (mmcblk1boot0, eth2addr (text))
DMZ: 00:1C:7F:xx:xx:FB (mmcblk1boot0, eth1addr (text))

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16904
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-06-22 22:17:20 +02:00
..
airoha
apm821xx apm821xx: replace kmod-usb3 with kmod-usb-xhci-pci-renesas 2025-05-17 20:14:27 +02:00
armsr kernel: bump 6.6 to 6.6.93 2025-06-06 10:01:31 +02:00
at91 treewide: strip trailing whitespace 2025-05-20 00:47:37 +02:00
ath79 ath79: enable USB by default on hAP ac 2025-06-19 20:42:02 +02:00
bcm27xx kernel: bump 6.12 to 6.12.34 2025-06-21 13:50:11 +02:00
bcm47xx treewide: strip trailing whitespace 2025-05-20 00:47:37 +02:00
bcm53xx kernel: bump 6.6 to 6.6.90 2025-05-13 21:43:34 +02:00
bcm4908
bmips bmips: update BCM531x5 RGMII delays patch 2025-06-18 11:12:00 +02:00
d1 kernel: remove duplicate PREEMPT settings 2025-06-08 15:59:55 +02:00
gemini gemini: Move back to using statically compiled PHYs 2025-06-03 23:05:15 +02:00
generic kernel: Fix IPv6 UDP fragmentation regression 2025-06-22 13:32:51 +02:00
imx kernel: Refresh kernel configs 2025-06-22 11:28:09 +02:00
ipq40xx ipq40xx: config-6.6: add new option 2025-06-06 10:01:31 +02:00
ipq806x ipq806x: fix Extreme Networks AP3935 LAN/WAN ports 2025-06-11 18:42:54 +02:00
ixp4xx ixp4xx: Switch to kernel v6.12 2025-06-03 01:45:40 +02:00
kirkwood treewide: dts: trim "#size-cells" from "gpio-export" node 2025-05-18 19:35:00 +02:00
lantiq treewide: strip trailing whitespace 2025-05-20 00:47:37 +02:00
layerscape
loongarch64
malta malta: 6.12: enable kernel for testing 2025-05-29 22:46:47 +02:00
mediatek mediatek: Ruijie RG-X60 Pro: Fix LAN port status light 2025-06-22 19:58:29 +02:00
mpc85xx mpc85xx: fix function name 2025-06-11 18:39:55 +02:00
mvebu mvebu: add support for Check Point V-81 2025-06-22 22:17:20 +02:00
mxs mxs: drop 6.6 support 2025-05-24 16:15:53 +02:00
octeon kernel: reorder kernel symbol configs 2025-05-29 23:05:02 +02:00
omap
pistachio kernel: remove duplicate PREEMPT settings 2025-06-08 15:59:55 +02:00
qoriq
qualcommax qualcommax: enable CONFIG_THERMAL and CONFIG_THERMAL_HWMON 2025-06-22 09:51:01 +02:00
qualcommbe qualcommbe: enable CONFIG_THERMAL and CONFIG_THERMAL_HWMON 2025-06-22 09:51:01 +02:00
ramips ramips: mt7621: add support for JDCloud RE-SP-01B 2025-06-19 20:33:57 +02:00
realtek realtek: remove patches, files and config for 6.6 2025-06-22 16:38:11 +02:00
rockchip rockchip: add kernel 6.12 as testing kernel 2025-06-14 17:22:52 +02:00
sifiveu kernel: remove duplicate PREEMPT settings 2025-06-08 15:59:55 +02:00
siflower kernel: bump 6.6 to 6.6.94 2025-06-21 13:54:17 +02:00
starfive kernel: bump 6.12 to 6.12.34 2025-06-21 13:50:11 +02:00
stm32 stm32: modules: add missing dependency for stm32-dfsdm-adc 2025-06-21 14:28:42 +02:00
sunxi generic: 6.12: backport accepted BCM5325 patches 2025-06-18 11:11:54 +02:00
tegra
uml kernel: bump 6.12 to 6.12.33 2025-06-12 12:42:15 +02:00
x86 x86: config-6.12: enable RAPL interface 2025-06-22 20:10:12 +02:00
zynq
Makefile