IEI PUZZLE M902 mvpp2 patch

Because i bought M902
Use openwrt official version
the 10G and 2.5G ports do not work
At 21.02, all ports are completely unusable

(For the snapshot version, only the 10G port can be used, 2.5G can’t be used)

IEI staff gave me this kernel patch
It can be used, but my ability is not enough.
To see if anyone wants to research

(In addition, it was confirmed that the LED light control method M902 uses an independent UART MCU, not a conventional GPIO or GPIO expander)

The license terms for these source codes are GPL

Shouldn't it be a problem to make it public like this?

The original state is a patch file
But the action inside is to produce these files

so I........

At least Kconfig and Makefile addtion of that driver is missing. Can you check if it was part of the patch?

Because these files are to be put in
/(openwrt source)/target/linux/mvebu/files/

I have put the original patch file now (in github)

(Because of the need to increase readability, I directly put the generated source file up)

Why was this even merged with non-functional networking?

I don't have an idea
I just put the things that IEI staff gave me

In my current use, it is no problem
(Otherwise, the 2.5G and 10G ports will not work on 21.02)

I don’t directly Pull requests because I’m afraid it will affect the support of the original SOC

(You have to know how much the things IEI give is different from the existing openwrt things and how to put them in)

Because they are too rough
Directly overwrite the relevant kernel source code

Well, I hope that they are not serious with the "patch" it's quite literally copying the Marvell SDK patched kernel instead of the OpenWrt one.

@hauke Were you aware of the networking issues in their PR/patch set?

As it was a developer of IEI world who submitted the patches (and has been going through many rounds of review) I had them confirm that both snapshot and 21.02-snapshot image "works" on the device.
Seems like I should have been more explicit that by "working" I mean more than just serial console...

I've been a little bit dumbfounded for this machine during this period

Keep adjusting DTS but the eth port is not working
I use their solution for the time being

(Then just wait)

(As for the control of LED lights and cooling fans, they use proprietary MCUs, unless someone can write those control instructions as system services)

Will there be other brands using a similar configuration in the future?

So there are other devices DTS can refer to or something
(However, on the snapshot version, the 10G port can work, only the 2.5G port has a problem)

I have received sample hardware and will start working on that today. Expect a strom of backports (from 5.14/5.15 to 5.10 first of all) to hit the tree in the next couple of days :wink:


Now all ports of both Puzzle M901 and Puzzle M902 should be fully working in 1000M/2500M mode (and 5000M and 10000M on the three 10GE ports of Puzzle M902). 10M and 100M still don't work (anyone cares?)


According to the definition of IEI
(form and

LED lights should be configured like this............
(in DTS)

			led@0 {
				reg = <0>;
				label = "white:openvpn";

			led@1 {
				reg = <1>;
				label = "green:wan";

As for the 10M and 100M issues
Since I am using it in an environment with a switch
So I........