Netgear D7800 build

Hi,

where did you get the info that it has 512MB RAM? EDIT: Found it in Spec-Sheet from Netgear.
Everywhere i was looking it says only 256MB.

Do you make a pull request to get the changes to everyone?

Hi,
From my D7800 router :slight_smile:

Console :slight_smile:

U-Boot 2012.07 [local,local] (Jul 01 2015 - 13:18:15)

U-boot 2012.07 dni1 V1.1 for DNI HW ID: 29764958 NOR flash 0MB NAND flash 128MB RAM 512MB 1st Radio 4x4 2nd Radio 4x4 + xDSL
smem ram ptable found: ver: 0 len: 5
DRAM: 491 MiB
.....

Booting Linux on physical CPU 0
Linux version 3.4.103 (figo.yan@dni-l-sw02) (gcc version 4.6.3 20120201 (prerelease) (Linaro GCC 4.6-2012.02) ) #1 SMP Tue Jul 26 14:05:47 EDT 2016
CPU: ARMv7 Processor [512f04d0] revision 0 (ARMv7), cr=10c5387d
CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
....
Memory: 49MB 436MB = 485MB total
Memory: 482508k/488652k available, 14132k reserved, 0K highmem

....
Regards,

:+1:

are you able to send a patch to the devs?

In file target/linux/ipq806x/files/arch/arm/boot/dts/qcom-ipq8064-d7800.dts
change :

    memory@0 {

'-' reg = <0x42000000 0xe000000>;
'+' reg = <0x42000000 0x1e000000>;
device_type = "memory";

I'm almost sure we have to set proper CFLAGS or other flags in Makefile for drv_mei_cpe and other dsl packages ... regarding "-mfloat-abi=hard and soft cannot be used together" ...
We need a real developer to look into dsl packages compile problems ...

Regards,

just connected to serial console and this is what i get:

U-Boot 2012.07-21984-gd7d026f [local,local] (Apr 15 2015 - 10:49:55)

U-boot 2012.07 dni1 V0.9 for DNI HW ID: 29764958 NOR flash 0MB NAND flash 128MB RAM 256MB 1st Radio 4x4 2nd Radio 4x4 + xDSL
smem ram ptable found: ver: 0 len: 5
DRAM: 235 MiB

If i change the dts-file my d7800 doesn't start.

In this case there are two hardware versions ... :frowning:

D7800 may have the same thing
https://github.com/lede-project/source/commit/3ac5eb914169a7169f5522799fbb0f90f1234c1c

Sometimes r7500v2 and R7800 do not start when kernel tries to use this space

@dissent1 yeah maybe. Or maybe my device has only 256MB RAM. (Now as i think about it: i remember that my D7800 is a BETA-Test Unit. Maybe they switched then to more RAM in production) I had never a problem with starting the kernel.
Only as i tried the 512MB Patch and this was very funny because the router then don't react on anything. Only power off.
Reset button is also dead.

One question , on netgear fw have 6 PCI devices

 00:00.0 PCI bridge: Airgo Networks Inc Device 0101 (prog-if 00 [Normal decode])
 01:00.0 Network controller: Atheros Communications Inc. Device 0040
 02:00.0 PCI bridge: Airgo Networks Inc Device 0101 (prog-if 00 [Normal decode])
 03:00.0 Network controller: Atheros Communications Inc. Device 0040
 04:00.0 PCI bridge: Airgo Networks Inc Device 0101 (prog-if 00 [Normal decode])
 05:00.0 Network controller: Device 1bef:0020 (rev 01)

on LEDE only 4

0000:00:00.0 PCI bridge: Qualcomm Device 0101
0000:01:00.0 Network controller: Qualcomm Atheros QCA9980/9990 802.11ac Wireless Network Adapter
0001:00:00.0 PCI bridge: Qualcomm Device 0101
0001:01:00.0 Network controller: Qualcomm Atheros QCA9980/9990 802.11ac Wireless Network Adapter

Which element is responsible for detecting pci devices ? Why cant find Device 1bef:0020 on LEDE ?
Regards,

You need to enable 3rd pci slot in device tree

Try this
https://github.com/dissent1/r7800/commit/f5c3233f679dc79f82b542075d6f943f83edfd1e

UPDATE: updated the commit

2 Likes

THX :slight_smile:

[ 110.624588] vrx320: loading PPE driver and firmware (ATM)
[ 110.624648] base->us_fastpath_des_base=0x5f600000
[ 110.629101] base->us_fastpath_des_num=0x20
[ 110.633663] base->us_cpupath_des_base=0x5f601000
[ 110.637655] base->us_cpupath_des_num=0x20
[ 110.642554] base->ds_des_base=0x5f602000
[ 110.646336] base->ds_des_num=0x20
[ 110.650438] base->ds_oam_des_base=0x5f603000
[ 110.653541] base->ds_oam_des_num=0x20
[ 110.658056] port = 0
[ 110.661557] irq = 172
[ 110.664044] membase = 0xdf980000
[ 110.667168] phy_membase = 0x32000000
[ 110.670929] peer_num = 0
[ 110.688972] 1 device(s) are detected!

root@LEDE:/lib/modules/4.4.49# lspci
0000:00:00.0 PCI bridge: Qualcomm Device 0101
0000:01:00.0 Network controller: Qualcomm Atheros QCA9980/9990 802.11ac Wireless Network Adapter
0001:00:00.0 PCI bridge: Qualcomm Device 0101
0001:01:00.0 Network controller: Qualcomm Atheros QCA9980/9990 802.11ac Wireless Network Adapter
0002:00:00.0 PCI bridge: Qualcomm Device 0101
0002:01:00.0 Network controller: Lantiq Device 0020 (rev 01)

root@LEDE:/lib/modules/4.4.49# modprobe lantiq_vrx320_e1.ko
[ 301.366218] VRX318: loading PPE driver and firmware (PTM)
[ 301.366278] base->us_fastpath_des_base=0x5f600000
[ 301.370746] base->us_fastpath_des_num=0x20
[ 301.375296] base->us_cpupath_des_base=0x5f601000
[ 301.379384] base->us_cpupath_des_num=0x20
[ 301.384062] base->ds_des_base=0x5f602000
[ 301.387969] base->ds_des_num=0x40
[ 301.392067] base->ds_oam_des_base=0x0
[ 301.395172] base->ds_oam_des_num=0x0
[ 301.398941] port = 0
[ 301.402461] irq = 172
[ 301.404981] membase = 0xdf980000
[ 301.408106] phy_membase = 0x32000000
[ 301.411841] peer_num = 0
[ 301.432070] total 1 device(s) are detected!
[301.432105] 1 device is initialized to run in single line mode!

1 Like

I suppose it's not enough, you may try to ask @mkresin for help to get other needed stuff to enable adsl modem here

@damiano here's complete commit for D7800, I'll make a pull request later when I'll do the same with other boards

1 Like

well, i think this one will break lede for my d7800 --> ram

According to Netgear it has 512 mb of RAM


Seems that preproduction units indeed have 256mb, but I suppose it's wrong to cripple production units in favor of preproduction ones.

Seems an easy fix to me to keep a different file for your own unit, or even nicer: add a little patch of your own that sets the right value for your unit?

yeah. seems i'm out of luck here. no problem.
Will the patch get in the 17.01 release?

another question: how is this solved with stock firmware? as this is functioning normal for me.

It likely recognizes the board as a slightly different model somehow.
might be a value in navram (do they still use that), or some other value somewhere?

It's passed by boot loader afaik. Check gpl, it contains uboot with model specifications and extended functions like passing variables into DT or platform data (depending on the version).