Want to install OpenWrt on Sophos SD-RED 20

hello people

I have a Sophos SD-RED 20 in front of me, it did not connect to the Sophos UTM and you got a new one through support, the old one can be disposed of. I thought that I would like to breathe life back into the piece of hardware and it's too bad to shit this away, so I'm looking for solutions to use this still further and have come across OpenWRT among others.

Via Micro USB COM port I could already read a few things and need your help for further flashing, since I'm not too knowledgeable here.

I could already research that this was already possible with a Sophos Red 15w: LINK

Here's some info I gleaned:
=> version
U-Boot 2018.09 (Apr 23 2020 - 05:30:45 +0000), Build: jenkins-Red_Unified_Firmware_v3-86

aarch64-openwrt-linux-musl-gcc (OpenWrt GCC 7.4.0 1-1082-74a78d4e8-4aa01e8) 7.4.0
GNU ld (GNU Binutils) 2.31.1

=> printenv

arch=arm
baudrate=115200
board=sophos_red20
board_name=sophos_red20
board_rev=2
boot_image1=echo starting Image1...;run boot_load_nand_image1; run boot_ram; echo Booting Image1 Failed try Image2; run boot_image2
boot_image1_once=env set bootcmd "run boot_image2"; env save; run boot_image1
boot_image2=echo starting Image2...;run boot_load_nand_image2; run boot_ram; echo Booting Image2 Failed try Image1; run boot_image1
boot_image2_once=env set bootcmd "run boot_image1"; env save; run boot_image2
boot_load_from=undefined
boot_load_nand_image1=sf probe; sf nand_read ${kernel_addr_r} ${nand_uimage1_addr} ${nand_uimage1_size}; sf nand_read ${fdt_addr_r} ${nand_fdt1_addr} ${nand_fdt1_size}; env set boot_load_from image1
boot_load_nand_image2=sf probe; sf nand_read ${kernel_addr_r} ${nand_uimage2_addr} ${nand_uimage2_size}; sf nand_read ${fdt_addr_r} ${nand_fdt2_addr} ${nand_fdt2_size}; env set boot_load_from image2
boot_load_tftp=mcu led 3 1 1; tftp ${kernel_addr_r} red/red-unified-firmware-layerscape-armv8_64b-red20-initramfs-kernel.bin; tftp ${fdt_addr_r} red/image-sophos-red20.dtb; env set boot_load_from tftp; mcu led 3 0
boot_ram=echo Stop PFE...; pfe stop; echo starting openwrt ...; mcu led 1 1 1; env set bootargs ${bootargs_base} ${bootargs_additional} boot_load_from=${boot_load_from} mcu_resetpb_time=${mcu_resetpb_time}; bootm ${kernel_addr_r} - ${fdt_addr_r}; mcu led 0 1 1
boot_tftp=echo starting TFTP...;run boot_load_tftp; run boot_ram
boot_usb=echo Start USB; usb start; usb storage; usb dev 0; fatload usb 0:1 ${fdt_addr_r} boot_${board_name}.bin; source ${fdt_addr_r}
bootargs=console=ttyS0,115200 root=/dev/ram0 earlycon=uart8250,mmio,0x21c0500
bootargs_additional=redd
bootargs_base=console=ttyS0,115200 root=/dev/ram0 earlycon=uart8250,mmio,0x21c0500
bootargs_kdb=nokaslr kgdboc=ttyS0,115200 kgdbcon
bootargs_kdb_stop=${bootargs_kdb} kgdbwait
bootcmd=run boot_image2
bootdelay=3
bootfile=red/tftp_boot_red20.bin
console=ttyS0,115200
cpu=armv8
eth1addr=11:11:11:11:11:11
ethact=pfe_eth0
ethaddr=11:11:11:11:11:11
fdt_addr_r=0x80000000
fdtcontroladdr=11111111111
format_ubi=echo Formatting UBIFS; sf probe; sf nand_erase ${nand_data_addr} ${nand_data_size}; echo Done.
ipaddr=111.111.111.111
kernel_addr_r=0x81000000
mcu_resetpb_action1_time=65535
mcu_resetpb_action2_time=65535
mcu_resetpb_debounce_time=100
mcu_resetpb_debug=0
mcu_resetpb_factory_time=10
mcu_resetpb_time=0
mtdids=nand0=nand0
mtdparts=mtdparts=nand0:0x100000@0x0(self),0x100000@0x100000(free1),0x100000@0x200000(fdt1),0x2800000@0x300000(uimage1),0x400000@0x2b00000(free2),0x100000@0x2f00000(fdt2),0x2800000@0x3000000(uimage2),0x400000@0x5800000(free3),0x2000000@0x5c00000(ubi),0x400000@0x7c00000(free4),
nand_data_addr=0x5c00000
nand_data_size=0x2000000
nand_fdt1_addr=0x200000
nand_fdt1_size=0x100000
nand_fdt2_addr=0x2f00000
nand_fdt2_size=0x4353
nand_uimage1_addr=0x300000
nand_uimage1_size=0x2800000
nand_uimage2_addr=0x3000000
nand_uimage2_size=0xdc030f
resetpb_factory=echo Factroy reset; run format_ubi; run boot_usb
serialnumber=XYZ
serverip=192.168.0.11
soc=fsl-layerscape
stderr=serial
stdin=serial
stdout=serial
vendor=freescale
vlan_test=0

Environment size: 3159/65532 bytes

Currently I don't know which OpenWRT image could fit here, according to the CPU it seems to be "armv8".
According to this something of something could work here or?
https://downloads.openwrt.org/snapshots/targets/rockchip/armv8/
According to the instructions above I need a .bin file which I can't find there.

I hope among you are some cracks who could help me here :slight_smile:

Sorry, it doesn't work that way. With very, very few exceptions you can't just use an image for a similar device. Even if devices share the same CPU architecture, that is really just the lowest common denominator. The actual devices vary wildly internally and images for devices have to be highly customized to the respective device.

1 Like

Hi,

see this article for somebody building openwrt for an eval board with the same SOC as your device. Other hardware Sophos might have put on there you will have identifiy yourself...

Maybe have fun while voiding your warranty and post some inside images...

Joachim