Netgear R7800 exploration (IPQ8065, QCA9984)

Openwrt only touches "kernel" and "ubi". Other partitions are static.

dd, cat and mtd aren't that good in the NAND flash, and in general it makes no sense to backup kernel by itself.

You should backup

  • the flashed fimrware (just keep the firmware file that you flashed, so that you can reflash it)
  • list of installed programs (so that you can reinstall them)
  • config settings and related files. (you can use the sysupgrade backup functionality to generate tar.gz)

Note that all installed add-on packages, files & settings are stored in the overlay filesystem while the filashed firmware is in /rom.

  • So, backuping packages & settings can be done by generating a tar.gz archive of everything in /overlay/upper.
  • Then reflash the firmware and restore that archive to /overlay/upper, and you recover everything.
2 Likes

Thank you, the hint about "/overlay/upper" is great.
I'm already keeping track of all installed extra packages (in a shell script with opkg commands) and their config paths (in /etc/sysupgrade.conf), but i was looking a better "overall" solution for disaster recovery, and the backup of "/overlay/upper" seems what i was looking for.

About the "opkg backup" thing... opkg command has no "backup" parameter, what were you referring to? I use sysupgrade -b to backup config files.

Sorry, I remembered wrongly, which tool does the backup / restore of the settings :frowning:

1 Like

Sorry if that question does not fit here, but I'm thinking of extending my Wifi (main AP is R7800) with an additional repeater (have a WNDR3700 and a Archer C7 with 802.11r). I've read somewhere that WDS is only supported with same brand WiFi NICs (like Qualcom for me).

As the new AP should be mounted to the ceiling I was a bit reluctant to put a R7800 up there (more so my wife I guess) and came across the UniFi AP AC PRO which I was thinking uses the same WIFI NIC, but screw me (or the naming scheme of Qualcom; QCA988x != QCA9984)

First question would be: Would it make sense to use a similar WIFI chip or would any ath9/ath10k device work well with WDS?

I looked around further and found:

  • CF-E385AC (COMFAST)
  • ECW5410 (Edge-corE)
  • FRITZ!Repeater 3000 (AVM) - which I maybe also don't want on my ceiling...

Any experiences with the first two routers (I've never heard of that brands), or any other good AP that works well with R7800? Maybe a dualband 5GHz for doing Client and STA on different channels?

It is always best to hardwire additional APs. I’d open a new thread to allow you to focus on your problem. :sunglasses:

2 Likes

Gonna xpost this over here bc its probably more general to ath10k-ct than hnyman's builds. Once or twice a day I've been having my 5Ghz radio stall out-effectively a crash as no signal is picked up on my scanner-and it doesnt come back up until I restart the wireless bit entirely. Relevant kernel log in the link. Let me know what might be helpful for debug.

It if looks CT specific I’d share it with the developer:

I notice ndb pushed preliminary support for kernel 5.9.... Well this is my reaction

3 Likes

Damn, I was waiting for that.
Time to get IPQ40xx on it and start IPQ807x again.

https://git.openwrt.org/?p=openwrt/staging/nbd.git;a=commit;h=97992f99bcb5c8a7bad54317d76e0eaa946ef3f4 (if you don't want to search)


Also other commits are needed (in ndb repo) from what I can see in the commits description

Anyone running HAproxy on the R7800? Does it perform well?

And it looks like 5.10 is gonna be LTS kernel.
So I would not waste time on 5.9 support as OpenWrt is LTS only kernels.

1 Like

Anyone noticing random restarts?
I'm running git-20.280.41447-12e50de / OpenWrt SNAPSHOT r14646-c3319322b2

This is last message in the kernel log after the restart

  • Nov 07 13:42:06 [101621.844373] qcom_rpm 108000.rpm: RPM triggered fatal error

I used this in my rc.local file for a while but it seems to be removed?

$ swconfig dev switch0 set mib_poll_interval 0
Unknown attribute "mib_poll_interval"

What did I miss? :wink:

Somewhat related, ( more to the IPQ8065/IPQ8064 than R7800 specifically )

Does anyone know how to resize the NAND filesystem on IPQ8065 based devices ( or generate the NAND volume table so I can use pack.py to recreate the nand singleimage ) ?

I have a 256MB nand flash, but rootfs is limited to 64MB - would like to get this to 192 or 200 ish MB by combining unused partitions form the factory image)

From the TOH it looks like it has been done for the R7800 :
when comparing the factory layout with the openWRT layout.

  • I'm trying to port another IPQ8065 based board ( WPQ865 ) and the factory layout also has lots of partitions that end up being unused by Openwrt ( each partition has a backup, but in the initial flashing script they are not flashed ).

  • it looks like this tool is used to create the "factory NAND singleimage" for these devices ( IPQ8064 and IPQ8065 ) but it requires a "partition.mbn" file ( ubi volume table / QCA multi partition boot format ? ) - in the wpq865 It looks the MBIB partition which holds the volume table for a " Qualcomm multi partition" )
    I have not have not unpacked the R7800's nand-image yet to see if it has a similar partition in there - not called MBIB - will get to that eventually )

also... like resizing the partitions of the R78-00 in posts further up..
using the factory map in uboot, but defining rootfs to be larger in the DTS ( for linux ) works until one does a sysupgrade ( or a large package/ lots of data ) and then upon reboot uboot complains that it cannot find the volume table ( I suspect its because the"Bootconfig" partition has been overwritten, but MBIB - unchanged- still points to it ) .
why did they put bootconfig after the rootfs... Grrrr
The factory partition map I'm trying to change :

[    1.809563] 0x000000000000-0x000000040000 : "SBL1"
[    1.816453] 0x000000040000-0x000000180000 : "MIBIB"
[    1.822464] 0x000000180000-0x0000002c0000 : "SBL2"
[    1.827359] 0x0000002c0000-0x000000540000 : "SBL3"
[    1.838215] 0x000000540000-0x000000660000 : "DDRCONFIG"
[    1.840971] 0x000000660000-0x000000780000 : "SSD"
[    1.845271] 0x000000780000-0x000000a00000 : "TZ"
[    1.852291] 0x000000a00000-0x000000c80000 : "RPM"
[    1.857307] 0x000000c80000-0x000001180000 : "APPSBL"
[    1.866309] 0x000001180000-0x000001200000 : "APPSBLENV"
[    1.868060] 0x000001200000-0x000001340000 : "ART"
[    1.873293] 0x000001340000-0x000005340000 : "rootfs"

[    1.984231] 0x000005340000-0x0000053a0000 : "BOOTCONFIG"
[    1.990421] 0x0000053a0000-0x0000054e0000 : "SBL2_1"
[    1.997498] 0x0000054e0000-0x000005760000 : "SBL3_1"
[    2.004468] 0x000005760000-0x000005880000 : "DDRCONFIG_1"
[    2.007275] 0x000005880000-0x0000059a0000 : "SSD_1"
[    2.012366] 0x0000059a0000-0x000005c20000 : "TZ_1"
[    2.019361] 0x000005c20000-0x000005ea0000 : "RPM_1"
[    2.024470] 0x000005ea0000-0x000005f00000 : "BOOTCONFIG1"
[    2.026078] 0x000005f00000-0x000006400000 : "APPSBL_1"
[    2.038588] 0x000006400000-0x00000a400000 : "ubi_1"
[    2.143197] 0x00000a400000-0x000010000000 : "unused"

change it to :

 0	40000	SBL1
40000	180000	MIBIB
180000	2c0000	SBL2
2c0000	540000	SBL3
540000	660000	DDRCONFIG
660000	780000	SSD
780000	0a00000	TZ
0a00000	c80000	RPM
c80000	1180000	APPSBL
1180000	1200000	APPSBLENV
1200000	1340000	ART
1340000	D340000	rootfs
D340000	D3A0000	BOOTCONFIG
D3A0000	D400000	BOOTCONFIG1
D400000	EC00000	factory
EC00000 10000000	unused
  • Factory is a backup of the "squashfs-nand-factory.bin" image generated by the build tool so we can recover from uboot serial console )

also.. got no assistance from QCA, so we're stuck on reverse engineering...

Hello,
I´m new on this forum and I had bought a Netgear R7800 with running the original Netgear FW from Voxel. Did anybody know how I can test what NAND Flash is built-in? So that I have no reboot problem with openwrt.

Thanks to all
Alex

Voxel? original ????
To my knowledge, Voxel is not original.

If you have R7800, you should be able to use the TFTP flashing routine in any case to install the OpenWrt "factory" image.

Here is the commit:

And here is the dicussion related to that, where you can see the testing work that I did to prove the return possiblity to the original OEM partition structure:
(messages 1118-1158 of this thread)

1 Like

Hi! I bought a R7800, and as I tried to set up OpenWrt I hit weird problems.

When I installed the fresh 19.07.5 I couldn't log in, I received the error below:

gismo:~> ssh root@192.168.1.1
ssh_dispatch_run_fatal: Connection to 192.168.1.1 port 22: error in libcrypto

After several retries the login succeeded. But ssh more often failed than succeeded, so I thought to try out 19.07.4 and see how it behaves there. Now the error very rarely came up - in fact only once in over 20 tries.

But now sometimes a package install or upgrade fails, and after 1 or more retries it succeeds. Below is an example:

root@OpenWrt:~# opkg install coreutils
Installing coreutils (8.30-2) to root...
Downloading http://downloads.openwrt.org/releases/19.07.4/packages/arm_cortex-a15_neon-vfpv4/packages/coreutils_8.30-2_arm_cortex-a15_neon-vfpv4.ipk
Segmentation fault
Collected errors:
 * opkg_install_pkg: Failed to verify the signature of /var/opkg-lists/openwrt_packages.
 * opkg_install_cmd: Cannot install package coreutils.
root@OpenWrt:~# opkg install coreutils
Installing coreutils (8.30-2) to root...
Downloading http://downloads.openwrt.org/releases/19.07.4/packages/arm_cortex-a15_neon-vfpv4/packages/coreutils_8.30-2_arm_cortex-a15_neon-vfpv4.ipk
Collected errors:
 * opkg_install_pkg: Failed to verify the signature of /var/opkg-lists/openwrt_packages.
 * opkg_install_cmd: Cannot install package coreutils.
root@OpenWrt:~# opkg install coreutils
Installing coreutils (8.30-2) to root...
Downloading http://downloads.openwrt.org/releases/19.07.4/packages/arm_cortex-a15_neon-vfpv4/packages/coreutils_8.30-2_arm_cortex-a15_neon-vfpv4.ipk
Configuring coreutils.
root@OpenWrt:~#

Could it be there's somewhere a fault in hardware?
Is there anything I can do about these weird problems?

Thanks
Aleš

A follow-up: I limited the max cpufreq to 1.4 GHz and now I cannot reproduce any problems anymore:

echo 1400000 >/sys/devices/system/cpu/cpufreq/policy0/scaling_max_freq
echo 1400000 >/sys/devices/system/cpu/cpufreq/policy1/scaling_max_freq

Should I re-seat the heatsink or something? :slightly_smiling_face: