RTL960x on linux 4.14, xPON router

Hello, new here. I have a device based on RTL960x cpu. Most recent firmware is from 2020 linux 4.14. 2ge ports, 1 telephone, 2.4g+5g and a PON port.

I cannot post the bootlog in text format right now, I was using an stm32 with hardware serial but arduino ide is dumb and wouldnt let me copy.
Im new to this forum, I have attached the firmware tar to this post and hopefully the bootlog + cpuinfo by next day. Hoping to create a build for this SoC alongside the Zyxel post

forgot to mention, its a 128mb flash, 256mb ram device

# cat /proc/cpuinfo
system type             : Formosa
machine                 : rtk,9607c
processor               : 0
cpu model               : MIPS interAptiv (multi) V2.0
BogoMIPS                : 597.60
wait instruction        : yes
microsecond timers      : yes
tlb_entries             : 64
extra interrupt vector  : yes
hardware watchpoint     : no
isa                     : mips1 mips32r2
ASEs implemented        : mips16 dsp mt
shadow register sets    : 1
kscratch registers      : 0
package                 : 0
core                    : 0
VPE                     : 0

processor               : 1
cpu model               : MIPS interAptiv (multi) V2.0
BogoMIPS                : 600.47
wait instruction        : yes
microsecond timers      : yes
tlb_entries             : 64
extra interrupt vector  : yes
hardware watchpoint     : no
isa                     : mips1 mips32r2
ASEs implemented        : mips16 dsp mt
shadow register sets    : 1
kscratch registers      : 0
package                 : 0
core                    : 0
VPE                     : 1

processor               : 2
cpu model               : MIPS interAptiv (multi) V2.0
BogoMIPS                : 600.47
wait instruction        : yes
microsecond timers      : yes
tlb_entries             : 64
extra interrupt vector  : yes
hardware watchpoint     : no
isa                     : mips1 mips32r2
ASEs implemented        : mips16 dsp mt
shadow register sets    : 1
kscratch registers      : 0
package                 : 0
core                    : 1
VPE                     : 0

processor               : 3
cpu model               : MIPS interAptiv (multi) V2.0
BogoMIPS                : 600.47
wait instruction        : yes
microsecond timers      : yes
tlb_entries             : 64
extra interrupt vector  : yes
hardware watchpoint     : no
isa                     : mips1 mips32r2
ASEs implemented        : mips16 dsp mt
shadow register sets    : 1
kscratch registers      : 0
package                 : 0
core                    : 1
VPE                     : 1

#

CPU info

Valid environment: 1
_updev=tftp ${tftp_base} ${ubi_device_img_name} && spi_nand erase ${fl_ubidevice} ${fl_ubidevice_sz} && spi_nand write  ${fileaddr} ${fl_ubidevice} ${filesize} && run set_commit0
_updev_bk=ubi read ${tftp_base} ubi_Config && setenv tftp_tmp ${tftp_base} &&  setenv tftp_base ${tftp_base_bk} && run _updev && setenv tftp_base ${tftp_tmp} && setenv tftp_tmp  && run ubipart && ubi write ${tftp_base} ubi_Config ${ubi_len_read}
baudrate=115200
boot_by_commit=if itest.s ${sw_commit} == 0;then run set_act0;run ub0;else run set_act1;run ub1;fi
boot_by_tryactive=if itest.s ${sw_tryactive} == 0;then setenv sw_tryactive 2;setenv sw_active 0;saveenv;run en_wdt;run ub0;else setenv sw_tryactive 2;setenv sw_active 1;saveenv;run en_wdt;run ub1;fi
bootargs_base=console=ttyS0,115200
bootcmd=if itest.s ${sw_tryactive} == 2; then run boot_by_commit;else run boot_by_tryactive;fi
bootdelay=1
bootloader_crc=8624975d
cfg_name=ubi_Config
check_framework=set current_vol ubi_framework1 && run check_vol && set current_vol ubi_framework2 && run check_vol
check_vol=if run chk_volume; then ; else if run ubipart; then if run chk_volume; then ; else echo ${current_vol} no exist; false; fi; fi; fi
chk_volume=ubi check ${current_vol}
create_k0=set current_vol ubi_k0 && run check_vol ; if run chk_volume; then ; else  ubi create ubi_k0 ${fl_kernel1_sz} dynamic; fi;
create_k1=set current_vol ubi_k1 && run check_vol ; if run chk_volume; then ; else ubi create ubi_k1 ${fl_kernel2_sz} dynamic; fi;
create_r0=set current_vol ubi_r0 && run check_vol ; if run chk_volume; then ; else ubi create ubi_r0 ${fl_rootfs1_sz} dynamic; fi;
create_r1=set current_vol ubi_r1 && run check_vol ; if run chk_volume; then ; else ubi create ubi_r1 ${fl_rootfs2_sz} dynamic; fi;
create_ubi_config=set current_vol ${cfg_name} && run check_vol ;if run chk_volume  ; then ; else ; ubi create ${cfg_name} ${fl_cfgfs_sz} dynamic; fi;
create_ubi_device=run create_ubi_config && run create_k0 && run create_r0 && run create_k1 && run create_r1
en_wdt=mw b8003268 e7c00000
erase_apps=setenv current_vol ubi_apps && run check_vol && ubi clean ubi_apps
erase_cfg_st=spi_nand erase ${fl_cfg_st} ${fl_cfg_st_sz}
erase_cfgfs=set current_vol ${cfg_name} && run check_vol && ubi clean ${cfg_name}
erase_env=spi_nand erase ${fl_env} ${fl_env_sz} && spi_nand erase ${fl_env2} ${fl_env_sz}
erase_framework1=setenv current_vol ubi_framework1 && run check_vol && ubi clean ubi_framework1
erase_framework2=setenv current_vol ubi_framework2 && run check_vol && ubi clean ubi_framework2
ethact=LUNA GMAC
ethaddr=00:E0:4C:86:70:01
fl_boot_sz=c0000
fl_cfg_st=100000
fl_cfg_st_sz=20000
fl_cfgfs_sz=aa0000
fl_env=c0000
fl_env2=e0000
fl_env_sz=20000
fl_kernel1_sz=4e0000
fl_kernel2_sz=4e0000
fl_kernel_sz=600000
fl_rootfs1_sz=1400000
fl_rootfs2_sz=1400000
fl_ubidevice=120000
fl_ubidevice_sz=7c60000
freeAddr=83000000
fx1000_init=mw bb000084 00000048
ipaddr=192.168.1.3
more_args=ubi.mtd=${ubi_mtd} root=${root_mtd} rootfs=squashfs
mtdids=nand0=spinand
mtdparts=mtdparts=spinand:768K(boot),128K(env),128K(env2),128K(static_conf),127360K(ubi_device)
mtdparts0=mtdparts=spinand:768K(boot),128K(env),128K(env2),128K(static_conf),127360K(ubi_device),4K@0ro,4K@0ro,4K@0ro,4K@0ro,4K@0ro,4K@0ro,4K@0ro,0G@0G(linux),0G@0G(rootfs)
mtdparts1=mtdparts=spinand:768K(boot),128K(env),128K(env2),128K(static_conf),127360K(ubi_device),4K@0ro,4K@0ro,4K@0ro,4K@0ro,4K@0ro,4K@0ro,4K@0ro,0G@0G(linux),0G@0G(rootfs)
mupgrade_en=1
netmask=255.255.255.0
process0=run ubipart && ubi read ${freeAddr} ubi_k0
process1=run ubipart && ubi read ${freeAddr} ubi_k1
root_mtd=31:7
serverip=192.168.1.7
set_act0=if itest.s ${sw_active} != 0;then setenv sw_active 0;saveenv;fi
set_act1=if itest.s ${sw_active} != 1;then setenv sw_active 1;saveenv;fi
set_commit0=if itest.s ${sw_commit} != 0;then setenv sw_commit 0;saveenv; else true; fi
setbootargs=setenv bootargs ${bootargs_base} ${more_args} ${mtdparts}
setmoreargs=set more_args ubi.mtd=${ubi_mtd} root=${root_mtd} rootfs=squashfs
sgmii_init=mw bb000084 00000044
stderr=serial
stdin=serial
stdout=serial
sw_active=0
sw_tryactive=2
sw_valid0=1
sw_valid1=1
sw_version0=V01.00.01_152
sw_version1=V01.00.01_140
tftp_base=83c60000
ub0=set root_mtd 31:7 && run process0 setmoreargs setbootargs; bootm ${freeAddr}
ub1=set root_mtd 31:9 && run process1 setmoreargs setbootargs; bootm ${freeAddr}
ubi_device_img_name=ubi_device_img.ubi
ubi_mtd=4
ubi_mtd_name=ubi_device
ubipart=ubi part nand0,${ubi_mtd}
upb=tftp ${tftp_base} encode_uboot.img && crc32 ${fileaddr} ${filesize} && spi_nand erase 0x0 ${fl_boot_sz} && spi_nand write.raw ${fileaddr} 0x0 ${filesize}
updev=setenv current_vol ubi_Config && if run check_vol; then run _updev_bk;  else run _updev; fi
upe=tftp ${tftp_base} uboot-env-98d-eng.bin && spi_nand erase ${fl_env} ${fl_env_sz} && spi_nand write ${fileaddr} ${fl_env} ${fl_env_sz} && spi_nand erase ${fl_env2} ${fl_env_sz} && spi_nand write ${fileaddr} ${fl_env2} ${fl_env_sz}
upframework=run check_framework && tftp ${tftp_base} framework.img && ubi write ${tftp_base} ubi_framework1 ${filesize} && ubi write ${tftp_base} ubi_framework2 ${filesize}
upk=set current_vol ubi_k0 && run check_vol && tftp ${tftp_base} uImage && ubi write ${tftp_base} ubi_k0 ${filesize}
upk1=set current_vol ubi_k1 && run check_vol && tftp ${tftp_base} uImage && ubi write ${tftp_base} ubi_k1 ${filesize}
upr=set current_vol ubi_r0 && run check_vol  && tftp ${tftp_base} rootfs && ubi write ${tftp_base} ubi_r0 ${filesize}
upr1=set current_vol ubi_r1 && run check_vol  && tftp ${tftp_base} rootfs && ubi write ${tftp_base} ubi_r1 ${filesize}
upt=tftp 80000000 img.tar && upimgtar ${fileaddr} ${filesize}
upv=tftp 80000000 vm.img;upvmimg ${fileaddr}
yk=loady 80000000 && cp.b 80000000 81000000 ${filesize} && cmp.b 80000000 81000000 ${filesize} && spi_nand erase ${fl_kernel1} ${fl_kernel1_sz} && spi_nand write 80000000 ${fl_kernel1} ${filesize}
yr=loady 80000000 && cp.b 80000000 81000000 ${filesize} && cmp.b 80000000 81000000 ${filesize} && spi_nand erase ${fl_rootfs1} ${fl_rootfs1_sz} && spi_nand write 80000000 ${fl_rootfs1} ${filesize}
yu=loady 80000000 && cp.b 80000000 81000000 ${filesize} && cmp.b 80000000 81000000 ${filesize} && spi_nand erase 0 ${fl_boot_sz} && spi_nand write.raw 80000000 0 ${filesize}
sw_commit=0


environment variable dump

# cat /proc/nandinfo
nand_size      : 134217728
chip_size      : 128
block_size     : 131072
chunk_size     : 2048
oob_size       : 64
oob_avail      : 20
PagePerBlock   : 64
#

That SoC is unsupported, and adding support involves way more effort than you seem to think (no offense). The only supported Realtek SoCs are managed switch products - RTL838x, RTL930x etc.