Netgear X10 (R9000)

Hi all, FYI.
I now reworked a bit switch setup. And made the Ethernet driver a loadable kernel module.
The master switch is now switch0, and the slave one is switch1. This was the other way around before. You have to be careful when upgrading to the new version, because your network config will use the old configuration that assumed that master is switch1. Just correct it in /etc/config/network and reboot.

Making the Ethernet driver a loadable kernel module will allow us to unload/reload it at runtime. And the name switch0 is more suitable for the master :slight_smile:

Furthermore, i pushed a new branch netgear-r9000-old-switch-setup to GitHub. It records the last state before this change. Further development work will continue only on netgear-r9000 branch.

The new switch config:

root@OpenWrt-dev:/# swconfig list
Found: switch0 - mdio-al-eth-0         <---- master
Found: switch1 - mdio-al-gpio-0       <---- slave

Hi all, FYI.

I completely reworked the switch configuration.
I use ETH2 CPU port (was unused until now) for WAN and ETH1 CPU port for LAN.
Furthermore, i set up trunking between the master and slave switch, for LAN traffic (VLAN1).
WAN is isolated from LAN via VLAN2 - only P3 and P5 of the master switch are assigned to WAN.

You need to re-generate /etc/config/network after upgrade.
This works for me (assuming you are using the default setup):

rm -f /etc/config/network
rm -f /etc/board.json
reboot

Please update, test and report issues to me. Thank you.

NB: Tested by me on R9000 and XR700.

Master:

# swconfig dev switch0 show
VLAN 1:
        vid: 1
        ports: 0t 1 2 4 6
VLAN 2:
        vid: 2
        ports: 3 5t

Slave:

# swconfig dev switch1 show
VLAN 1:
        vid: 1
        ports: 0 1 2 3 4 5 6t

Don't trust LuCI's interface for switch configuration :rofl: Use uci instead.

New switch configuration:

2 Likes

Works great after rebuilding my switch configuration. Thanks!

I guess the only major thing left for R9000 is SFP support.
Unfortunately I think R9000 and XR700 are the only Alpine devices with Openwrt...

1 Like

i also want to fix the remaining crypto driver issues and support aes-gcm and other aead modes.

Looking forward to your update. If you want me to do some test, please let me know. Thanks.

1 Like

Sorry for the delay, weekend was spent on chopping wood.

I am making and compiling the new version now and will test it later on today.
I wish there was an easier way to make the .config ... manually adding all the packages I want takes too long.

This is what i usually do to avoid this.

After you are done configuring all packages:

make menuconfig
./scripts/diffconfig.sh > ~/config-alpine-r9000

And then when you rebuild everything from zero, do this:

cp ~/config-alpine-r9000 .config
make defconfig
make menuconfig

Thank you. Ill give it a go.

How about the change to modify uboot, will it be needed?

If you mean the removal of a read-only line for u-boot-env, then yes, you need to modify the DTSI file as i described above, before building the image. I already have an uboot env file for you ready, i'll upload it here if it's fine with you and when you are ready.

I got it built excluding one package which I was unable to add because of conflicts.

I am flashing now (with sysupgrade :wink: )

Initially not looking too hot.


I forced it since it is the correct image. It is not automatically rebooting or distributing DHCP Broadcast. I am hesitant to restart the router but it has been a solid 10 minutes.

1 Like

Did you use r9000 device type or xr700 for building the image ?

openwrt-alpine-generic-netgear_r9000-squashfs-sysupgrade.bin
It was r9000 and the wording is a bit strange, it says

netgear,xr700 not supported by this image

Seems like the flasher thinks that the device is a xr700.

It's understandable, they are very similar visually :wink:

there was a bug i fixed a couple of days ago that caused this issue.
but should be ok now with latest netgear-r9000 branch.

It boots ?

I can try to power cycle it if you like :slight_smile: but I dont have the serial cable yet so I cant see if it boots except if I get a DCHP broadcast.

Config says target r9000.

it should have rebooted after sysupgrade automatically.
i would just flash factory then, sorry for this bug :frowning:

It is not your fault and don't say sorry :smiley:
This device has been useless since I bought it. The effort you are doing is the only hope in the world I have for this device to become useful.

I have all the files for nmrp worst case.
Ill power cycle and see what's what.

Edit: Hang on!
I have life... seems like the switch config is messed up.

1 Like

yes, you probably still have the old one. i recently changed switch setup, you need to re-configure it. please see a couple of posts ago where i describe it.

sysupgrade backs it up and then restores it, unfortunately, in this case :slight_smile:

I moved the LAN cable to Port1 and DHCP popped in. Upgrade seems to have worked fine.
Ran factory reset on it now, seems fine.

What would you suggest we test for the DHCP WAN stuff?

do you want to test your use case with new switch setup first, to see whether it still occurs or just go straight to changing u-boot env on flash ? i would recommend using uci instead of Luci to setup your switch config. See above why.

I am setting up one VLAN now with

vi /etc/config/network

Not sure if its the best method but I'm not too familiar with uci yet, I have only used it to change some network settings.
However editing /etc/config/network directly is also a bit of an unknown for me so I'm reading the OpenWRT Wiki in parallel with editing the file. Hopefully things will sort out.

Once I have at least one of the LAN ports setup as a separate VLAN then we can do the uboot changes.