Compex wpj428 OpenWrt update

Hello, I have compex wpj428 board and it is supported by openwrt. Following this commit: https://git.openwrt.org/?p=openwrt/openwrt.git;a=commit;h=2796ab85ed5097d91623e60abf22325bd9086407 I want to update runnig SW to openwrt but in step

The bootloader has to be updated before OpenWrt is installed to fix a
reboot problem. The nor-ipq40xx-single.img from
https://downloads.compex.com.sg/?dir=uploads/QSDK/QCA-Reference/WPJ428/b170123-IPQ40xx-Reference-Firmware
has to be downloaded and the transfered in u-boot via TFTP

I cannot find anywhere mentioned nor-ipq40xx-single.img. Does anybody have some link where to get that? Thanks.

The reboot problem of the WPJ428 is "very likely" related to the "mx25l25635f" nor-chip.

The problem is that the mx25l25635f gets identified as mx25l25635e which does not support stateless 4-byte addressing. So the kernel switches to the stateful addressing mode which will confuse the bootloader upon reboot since it does not expect it to be in that mode.

There are multiple solutions for solving this now. But none of them has been implemented for the wpj428 as of yet from what I know. That said, this problem is fixed upstream and there's a PR on github that tries to backport the changes to the upcoming OpenWrt 4.19 kernel code.

So please, support the PR if you want to help it get fixed.

@chunkeey ok so if I get that correctly issue is only with reset of board? If I do power off/on board boots fine then right? I can backport patch to wpj428 and try if it's resolved and report back. Thanks.

I was able to workaround reboot issue by using latest compex OEM update. While after update I see when flash and boot it works fine then after power off/on I get kernel hang:

[    0.773398] libphy: ipq40xx_mdio: probed
[    0.781376] Unable to handle kernel NULL pointer dereference at virtual address 000000a4
[    0.781625] pgd = c0204000
[    0.789709] [000000a4] *pgd=00000000
[    0.792211] Internal error: Oops: 5 [#1] SMP ARM
[    0.795938] Modules linked in:
[    0.800541] CPU: 1 PID: 1 Comm: swapper/0 Not tainted 4.14.95 #0
[    0.803405] Hardware name: Generic DT based system
[    0.809569] task: cf830000 task.stack: cf82e000
[    0.814174] PC is at ar40xx_probe+0x318/0x738
[    0.818595] LR is at ar40xx_probe+0x2fc/0x738
[    0.823109] pc : [<c05b4cc0>]    lr : [<c05b4ca4>]    psr: 60000013
[    0.827451] sp : cf82fdf8  ip : cfdb9324  fp : 00000000
[    0.833527] r10: cf93cc00  r9 : c032b380  r8 : 00000000
[    0.838735] r7 : c0a593f4  r6 : cf93cc10  r5 : cfde7e40  r4 : cfbe8010
[    0.843946] r3 : cfbe81e4  r2 : 00000000  r1 : 00000000  r0 : cfbe8010
[    0.850546] Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment none
[    0.857054] Control: 10c5387d  Table: 8020406a  DAC: 00000051
[    0.864257] Process swapper/0 (pid: 1, stack limit = 0xcf82e210)
[    0.869988] Stack: (0xcf82fdf8 to 0xcf830000)
[    0.876063] fde0:                                                       00000000 00001caa
[    0.880328] fe00: cf929a80 cfbe81e4 cf929a80 00000004 00098000 000987ff cfde81ec 00000200
[    0.888485] fe20: 00000000 00000000 00000000 00000000 0c000000 0c07ffff cfde7e98 00000200
[    0.896646] fe40: 00000000 00000000 00000000 00000000 c0a19d14 cf93cc10 c0a19d14 c0a5876c
[    0.904806] fe60: 00000000 00000000 c0a19d14 00000000 00000000 c0556670 c0a58768 cf93cc10
[    0.912967] fe80: c0a5876c c05550b0 cf93cc10 c0a19d14 cf93cc44 00000000 00000007 00000059
[    0.921126] fea0: c0936f40 c055529c 00000000 c0a19d14 c0555210 c0553844 cf817558 cf930db4
[    0.929285] fec0: c0a19d14 cf91cc80 c0a16e08 c05547c0 c080e938 c0916790 c0a19d14 c0a19d14
[    0.937445] fee0: 00000000 c09167a0 ffffe000 c05559e0 c0a03c08 00000000 c09167a0 c03019dc
[    0.945603] ff00: cf82ff24 00000000 00000000 c084d600 cfffce40 c084d670 0000005a c084d670
[    0.953764] ff20: cfffce52 c03311e0 c084cf7c c0804924 00000006 00000006 c07ddda8 00000000
[    0.961924] ff40: c07e6bb4 c07dde1c cfffce52 c9571f83 00000000 c0a24000 c0a24000 c092c834
[    0.970082] ff60: c092c83c 00000007 00000059 c0936f40 00000000 c0900dd8 00000006 00000006
[    0.978242] ff80: 00000000 c09005ac 00000000 c071ebfc 00000000 00000000 00000000 00000000
[    0.986401] ffa0: 00000000 c071ec04 00000000 c0307828 00000000 00000000 00000000 00000000
[    0.994561] ffc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[    1.002720] ffe0: 00000000 00000000 00000000 00000000 00000013 00000000 00000000 00000000
[    1.010897] [<c05b4cc0>] (ar40xx_probe) from [<c0556670>] (platform_drv_probe+0x34/0x70)
[    1.019046] [<c0556670>] (platform_drv_probe) from [<c05550b0>] (really_probe+0x114/0x274)
[    1.027203] [<c05550b0>] (really_probe) from [<c055529c>] (__driver_attach+0x8c/0xb0)
[    1.035274] [<c055529c>] (__driver_attach) from [<c0553844>] (bus_for_each_dev+0x4c/0xa0)
[    1.043174] [<c0553844>] (bus_for_each_dev) from [<c05547c0>] (bus_add_driver+0xe8/0x200)
[    1.051333] [<c05547c0>] (bus_add_driver) from [<c05559e0>] (driver_register+0xa8/0xe4)
[    1.059496] [<c05559e0>] (driver_register) from [<c03019dc>] (do_one_initcall+0xc0/0x184)
[    1.067308] [<c03019dc>] (do_one_initcall) from [<c0900dd8>] (kernel_init_freeable+0x13c/0x1d0)
[    1.075642] [<c0900dd8>] (kernel_init_freeable) from [<c071ec04>] (kernel_init+0x8/0x114)
[    1.084150] [<c071ec04>] (kernel_init) from [<c0307828>] (ret_from_fork+0x14/0x2c)
[    1.092478] Code: e58431f4 e3a01000 e1a00004 e58d300c (e59230a4) 
[    1.100077] ---[ end trace 62513d3ac2a5dacc ]---
[    1.106096] Kernel panic - not syncing: Fatal exception
[    1.110793] CPU2: stopping
[    1.115733] CPU: 2 PID: 0 Comm: swapper/2 Tainted: G      D         4.14.95 #0
[    1.118510] Hardware name: Generic DT based system
[    1.125730] [<c030e774>] (unwind_backtrace) from [<c030ac9c>] (show_stack+0x10/0x14)
[    1.130506] [<c030ac9c>] (show_stack) from [<c070bb68>] (dump_stack+0x88/0x9c)
[    1.138400] [<c070bb68>] (dump_stack) from [<c030da80>] (handle_IPI+0xe4/0x18c)
[    1.145430] [<c030da80>] (handle_IPI) from [<c030143c>] (gic_handle_irq+0x8c/0x90)
[    1.152634] [<c030143c>] (gic_handle_irq) from [<c030b80c>] (__irq_svc+0x6c/0x90)
[    1.160267] Exception stack(0xcf85df80 to 0xcf85dfc8)
[    1.167820] df80: 00000001 00000000 00000000 c0313c60 ffffe000 c0a03c74 c0a03c28 00000000
[    1.172861] dfa0: 00000000 410fc075 00000000 00000000 cf85dfc8 cf85dfd0 c0308108 c030810c
[    1.181015] dfc0: 60000013 ffffffff
[    1.189175] [<c030b80c>] (__irq_svc) from [<c030810c>] (arch_cpu_idle+0x34/0x38)
[    1.192481] [<c030810c>] (arch_cpu_idle) from [<c0349718>] (do_idle+0xdc/0x1a0)
[    1.200117] [<c0349718>] (do_idle) from [<c0349a38>] (cpu_startup_entry+0x18/0x1c)
[    1.207147] [<c0349a38>] (cpu_startup_entry) from [<8030170c>] (0x8030170c)
[    1.214782] CPU3: stopping

Is this existing issue or something new? Thanks.

How did you flash it, TFTP or from Compex LUCI Interface ?
I'm getting: "The uploaded image file does not contain a supported format. Make sure that you choose the generic image format for your platform. " When I try to upload my fresh: openwrt-ipq40xx-generic-compex_wpj428-squashfs-sysupgrade.bin

Hi,

back then I used tftp then when first flashed used luci interface to flash FW.