Adding OpenWrt support for Checkpoint Appliance

Most of the work is done and I'm just doing some fine tuning for V-80 and V-81.

compiled images:

source:

Changes

  • add support for V-81
    • SFP port works
      • port-side LED pairs of "DMZ" ports (RJ-45/SFP) needs to be switched manually (&cp0_gpio2, pin7, High: RJ45 <---> Low: SFP)
  • drop usb.img.gz image
    • use sdcard.img.gz for USB storage instead
    • don't connect SD card and USB storage that has the OpenWrt image of the same revision at the same time (they have the same PARTUUID and conflicts while booting and sysupgrade)
  • add "WiFi" and other LEDs that have no holes on the case
    • populated on the PCB, but...
  • move setting up of bootargs to bootscript
    • to reduce bootcmd
  • and other cleanups, improvements...

bootcmd

  • add:

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

    • bootcmd: 'run bootcmd_ow_usb; run bootcmd_ow_sd; run bootcmd_ow_emmc; run bootcmd_part${activePartition};'
      • note: set cp_quiet and run set_bootargs_vx were moved to bootscript
      • step: USB ---> SD ---> eMMC (OpenWrt) ---> eMMC (stock)

Great Work !
Let me test and report back when you are ready .

Do you have the flashing instructions ?

I'm retracting my offer, the device is now scrapped.





added.

Working Great !

Just two issues:

  1. How do I add support for wi-fi Sierra EM7430 (https://radenku.com/setting-modem-sierra-em7430-cat-6-openwrt/)
  2. I am booting of USB flash drive. THe Storage partition is very small for Pluging etc..

    How can I expand the partition from 100MB to like 8 GB. I was just going to do it with Fdisk by deleting SDA2 partition and recreating a larger one but want ot check that is ok.

The supports I made are for the wired models of V-80/V-81 and they don't have packages for wlan and modem by default. You may need to add uqmi or modemmanager or something, but I don't know details about that.

The default size of rootfs partition is 104MiB.

I don't know details about changing size of partition, I found this but I didn't test:

BTW, sysupgrade replaces partitions to the default layout (rootfs: 104MiB) if the partition layout was changed.

Thanks for the effort in getting OpenWrt running on these devices. Picked up a cheap V80 on ebay and followed the instructions. Everything went fine and it is now running from an usb memory stick.

1 Like

I have tried to run OpenWRT on v80, from MMC but I can't make it work. The CPU is resetting. I can't reach the stage to sysupdate the unit

I tried also USB booting and it works just fine.



BootROM - 2.03
Starting CP-0 IOROM 1.07
Booting from eMMC 0 (0x2B)
Found valid image at boot postion 0x000
lNOTICE:  Starting binary extension
NOTICE:  SVC: DEV ID: 7040, FREQ Mode: 0x1a
NOTICE:  SVC: AVS work point changed from 0x22 to 0x20
mv_ddr: mv_ddr-release-19.06.3-g??? (Oct 11 2020 - 07:26:41 PM)
mv_ddr: completed successfully
NOTICE:  Cold boot
NOTICE:  Booting Trusted Firmware
NOTICE:  BL1: v1.5(debug): (Marvell-release-19.06.3)
NOTICE:  BL1: Built : 19:26:53, Oct 11 2020
NOTICE:  BL1: Booting BL2
NOTICE:  BL2: v1.5(debug): (Marvell-release-19.06.3)
NOTICE:  BL2: Built : 19:26:59, Oct 11 2020
BL2: Initiating SCP_BL2 transfer to SCP
NOTICE:  SCP_BL2 contains 5 concatenated images
NOTICE:  Skipping MSS CP3 related image
NOTICE:  Skipping MSS CP2 related image
NOTICE:  Skipping MSS CP1 related image
NOTICE:  Load image to CP0 MSS AP0
NOTICE:  Loading MSS image from addr. 0x40286cc Size 0x1cd8 to MSS at 0xf2280000
NOTICE:  Done
NOTICE:  Load image to AP0 MSS
NOTICE:  Loading MSS image from addr. 0x402a3a4 Size 0x5420 to MSS at 0xf0580000
NOTICE:  Done
NOTICE:  BL1: Booting BL31
lNOTICE:  BL31: v1.5(debug): (Marvell-release-19.06.3)
NOTICE:  BL31: Built : 19:27:09, Oct 11 2020


U-Boot 2018.03-release-19.06.3 (Oct 11 2020 - 19:25:51 +0300)

Model: Marvell Armada 7040 Sunspear V0 Software 0.0.6
SoC: Armada7040-A2; AP806-A1; CP110-A2
Clock:  CPU     1400 [MHz]
        DDR     800  [MHz]
        FABRIC  800  [MHz]
        MSS     200  [MHz]
LLC Enabled (Exclusive Mode)
DRAM:  2 GiB

 === V0 board_init (Check Point version: 992000129) ===
Comphy chip #0:
Comphy-0: SGMII1        1.25 Gbps
Comphy-1: USB3_HOST0
Comphy-2: SGMII0        1.25 Gbps
Comphy-3: UNCONNECTED
Comphy-4: UNCONNECTED
Comphy-5: PEX2
UTMI PHY 0 initialized to USB Host0
PCIE-0: Link down
MMC:   sdhci@6e0000: 0, sdhci@780000: 1
Loading Environment from MMC... OK
Model: Marvell Armada 7040 Sunspear V0 Software 0.0.6
Net:   eth0: mvpp2-0, eth1: mvpp2-1 [PRIME]
config_88E1512_init++
m88e151x_config_leds(mvpp2-1)
cp_set_board_vars started
switch to partitions #0, OK
mmc1(part 0) is current device

MMC read: dev # 1, block # 4096, count 512 ... 512 blocks read: OK
blob magic: a5a51234
blob crc: 4c268dce
Verifying CRC for settings area... Done
cp_set_board_vars: dsl_annex is env_set to nothing
Saving Environment to MMC... Writing to MMC(1)... OK

************ Hit 'Ctrl + C' for boot menu ************
                                                                                                                                                                                                         0 1
USB0:   Register 2000120 NbrPorts 2
Starting the controller
USB XHCI 1.00
scanning bus 0 for devices... 2 USB Device(s) found
       scanning usb for storage devices... 1 Storage Device(s) found

Trying to load file "u-boot*v0.bin" from USB flash drive using FAT FS
"Synchronous Abort" handler, esr 0x96000004
MPIDR:     80000000
FAR:       dbdad9d821212121
SPSR:      200003c9
Rel. offs: 7fee2000
elr: 0000000000073418 lr : 000000000005d838 (reloc)
elr: 000000007ff55418 lr : 000000007ff3f838
x0 : dbdad9d821212121 x1 : dbdad9d821212121
x2 : deadbeef0c0ffee0 x3 : 0000000000000003
x4 : 000000007f66dfa9 x5 : 0000000000000046
x6 : 2344234323422341 x7 : 000000007f66dead
x8 : 0000000000000004 x9 : 0000000000000008
x10: 00000000003e0000 x11: 0000000000010000
x12: 0000000000000080 x13: 0000000000000111
x14: 000000007f5cd944 x15: 0000000000000002
x16: 0000000000000000 x17: 0000000000000000
x18: 000000007f5d1dd0 x19: 000000007f66de80
x20: 000000007ff659be x21: 000000007ff659cb
x22: 000000007ff65a33 x23: 0000000000000001
x24: 000000000000005c x25: 000000000000000d
x26: 000000007f66dfa0 x27: 000000000000000d
x28: 0000000000000000 x29: 000000007f5cd940

Resetting CPU ...

resetting ..

.

@musashino I saw you publish mvebu: add support for Check Point V-80 and V-81 #16904
mvebu: add support for Check Point V-80 and V-81 by musashino205 · Pull Request #16904 · openwrt/openwrt

But I don't see V81 or V80 targer in openwrt snapshot or release

Is there alternate way to build last snapshot from source?

What are they?

The PR I opened is not merged yet and V-80 and V-81 are not officially supported in releases or snapshot.

1 Like

Sorry not R81 and R80 but V81 and V80

Maybe it can help the DTB table is available in OS in expert
/pfrm2.0/kdump

The dtb can be decompile with
dtc -I dtb -O dts -o a.dts kdump_V1.dtb