Netgear D7800 memory not all available


I've been running OpenWrt for a few months now on my Netgear D7800, its been running well apart from a couple of caveats which I wanted to discuss here to see if there are any workarounds / fixes.

  1. The system memory available under OpenWrt is half of what is actually available to the device under the stock firmware.

Stock firmware debug menu ( showing memory available (472MB):

Freshly flashed OpenWrt, v19.07.6 showing less memory (215MB):

  1. The device has very little storage space left for installing packages after the OpenWrt install, around 15MB, which sounds decent but isn't enough for some of the things I want to install, meaning I have to setup extroot, which is a bit of a pain when it comes time to upgrade the firmware.

I'm wondering is there a fix for either of these, perhaps by doing a custom build, particularly the memory, which seems like a bug to me?

According to the d7800 only comes with 256 MB, while it's quite possible that this figure is either incorrect or that later hardware revisions might have been equipped with more RAM, this would explain the divergence (the RAM size is hardcoded in DTS).

Must be incorrect, the spec sheet says 512MB and the device debug menu above confirms it's wrong for my device.

How would I go about modifying the DTS to use all of it? Can I do this with the image builder or do I need to build an image from source? For simplicity I'd prefer if I could use the image builder :slight_smile:

Was discussed not long ago : Netgear D7800 only 215.8MB RAM instead of 512MB


Hi @rossini, thanks for the link, do you know of any solution for this though?

Is it possible to use the memory definition from the R7800 instead?

As in replacing this:

       memory@0 {
		reg = <0x42000000 0xe000000>;
		device_type = "memory";

With this:

       memory@0 {
		reg = <0x42000000 0x1e000000>;
		device_type = "memory";

Sorry: can't say for sure. But maybe you can look into the old versions of the dts.
There was a version with 512MB so you can check.

Trying to compile a build with the above DTS change now, see how I go.

But maybe you can look into the old versions of the dts.

I did have a quick look on Github at the qcom-ipq8064-d7800.dts history but I couldn't see any point where the memory@0 definition changed, I guess the repo has changed quite a bit since the change and I'm just looking in the wrong place.

Looks like it worked the device boots and /proc/meminfo shows MemTotal: 480452 kB.

1 Like

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.