Mikrotik RB951g-2HnD

If LEDE has just 1 initramfs.elf file, there is a great chance it is without the patch. That means, it can be used on RB951U and other devices with a 100 M switch or an old 1000 M switch, but not on new versions of RB951G or RB962.

Anybody knowing how to extract the sysupgrade-exe from the NAND-large-sysupgrade.bin?

Again,RB951G is supported

And RB962 is also supported.

It has 3 commits from 2017. None of them mentions the patch.
The rest is from early 2014 and older and as far as I know before MIkrotik changed switch-chip and the patch got need'ed.

Which exact version you have?
And which switch is inside AR8337 or?

I know less than what is written here:
https://wiki.openwrt.org/toh/mikrotik/rb951g_2hnd

and that I can use the device with patch 419857 and not without it.

Well,that is built in switch.
I am 99% sure that that patch that was needed in OpenWRT is not needed at all in LEDE since v3 of AR9344 is fully supported

From the openwrt wiki page:

"The RB951G-2hnd differs from its sister board RB951Ui-2HnD in that it has 5 * GigE instead of 5 * FE ports. The 5 GigE ports are provided via an AR8327 GigE switch chip that is also used in larger routers such as the RB2011-UiAS-2HnD-IN. The 5 FE ports on the RB951Ui-2HnD are inside the AR9344 SOC, they are unused/not-conneced on the RB951G-2hnd."

If this is correct, RB951G ver3 is not using the AR9344 ports.

Well,LEDE has AR8327 switch configured for RB951G

So it will work

Well, my device is not "using" the tftp-boot image.
And I am stuck there.

1 Like

From my experience, even LEDE snapshot need the patch, I also tried LEDE stable release also need the patch in order to work on RB951G V.3.

Can you give some advice on, how I add the patch and compile LEDE with it ?

Before make type this command;

  1. put your "file.patch" at the main directory of your build eg: openwrt folder
  2. patch -p0 <"filenameofyourpatch.patch"

then make....

This looks familiar to, what I dit 3 years ago on the "old" OpenWRT.
Are you using this patch
http://patchwork.ozlabs.org/patch/419857/

or have you found a new patch, that is written for LEDE building?

Yes I am using that patch.
But I change this... ath79_eth0_pll_data.pll_1000 = 0x3e000000 to 0x6f000000

I have succeede compiling a snapshot
openwrt SNAPSHOT r7526-02d53e6
with the patch.

Now my RB951G can tftp-boot it with vmlinux-initramfs.elf

But I cannot find the way to install the firmware.
sysupgrade -T /tmp/openwrt-ar71xx-mikrotik-nand-large-squashfs-sysupgrade.bin
gives message "Image metadata not found"

Would like to revive this thread. Also have an RB951g-2HnD where initramfs.elf from 18.06 did not run. Where "did not run" means that i can that a device connected to a LAN port can get an address by DHCP, but the interface immediately flaps and nothing reliably works. Which is the same error we had back in barrier breaker times and which was resolved by he path.

I also applied the patch with 0x6f000000 to 18.06.01 compiled from git. If i remember correctly, the 0x6f000000 was necessary to make the patch also work on a 2011UiAS-2HnD (but not quite sure anymore).

Like mortenchristensen, sysupgrade gives me the following output:

# sysupgrade -v openwrt-ar71xx-mikrotik-nand-large-squashfs-sysupgrade.bin 
Image metadata not found
Cannot save config while running from ramdisk.
Commencing upgrade. Closing all shell sessions.

Luckily, sysupgrade actually does upgrade flash, seemingly correct, so not sure how to best report/fix this sysupgrade problem.

But: how do we finally get the patch committed to OpenWrt ? We had been going around the patch for a long time barrier breaker times, but somehow nobody took the lead of committing it ??

Btw: i do have a second RB951g-2HnD where 18.06 ran fine without patch (upgraded from barrier breaker to 18.06 in january). Looking now, that second box says "Atheros AR9344 rev 2", while the one that does require the patch says "Atheros AR9344 rev 3". If someone knows how to do an "if" condition against the AR9344 revision, it should be save to apply the patch so it would only run on >= revision 3 SoC.

I didn't try 18.06.02 yet, but i did not see any difference in the source file where the patch is applied, so best guess is that nothing else randomly fixed this problem.

Btw. booted my patched OpenWrt build also on the AR9344 rev 2 box (that does not need it), and it seems not to break it. Aka: might be appropriate to do the fix without distinguishing rev2 / rev3.

Also check 18.06.2 on the rev3 box, problem is not fixed there.

Do you have a working / usable RB951g-2HnD with OpenWrt 18.06 ?

1 Like

Yes. The SoC rev 2 RB951g-2HnD worked out of the box with downloaded 18.06, no recompile needed.

The SoC rev 3 RB951g-2HnD required me to compile an image with the patch.
Should be pretty much what you did, except that in my case the error message you got from sysupgrade did not have any negative impact, but instead on my box it did actually do flash fine.

Hi!

Please change https://openwrt.org/toh/mikrotik/rb951g_2hnd:

"If after installing on a rev 2 device the switch seems to drop packets, you may be able to work around this by holding the reset button during power-on. This delays booting giving the switch more time to initialize. This issue is not noticed during a PXE boot, only after an install to flash."

to:

"If after installing on a rev 2 device the switch seems to drop packets, you may be able to work around this by holding the reset button during power-on. This delays booting giving the switch more time to initialize. This issue is not noticed during a PXE boot, only after an install to flash. To fix it: change routeboot options before use openwrt to force-backup-booter=yes"