Hello Mathias,

many thanks for your review!

+#include "rt3883.dtsi"
+
+#include <dt-bindings/input/input.h>

You can drop this include. You don't have any input devices (buttons)
in your dts.

OK, I will change that for my next attempt.

+
+/ {
+       compatible = "WMDR-143N", "ralink,rt3883-soc";

should be: compatible = "loewe,wmdr-143n", "ralink,rt3883-soc";

OK.

+&gpio1 {
+       status = "okay";
+};

The gpio1 node can be dropped. None of the SoC pins are used as GPIOs
for this board.

OK.

+&pinctrl {
+       state_default: pinctrl0 {
+               gpio {
+                       ralink,group = "i2c", "jtag", "uartf";
+                       ralink,function = "gpio";
+               };
+       };
+};

Same as above. None if the pins in these groups are used as GPIO.

But if I remove this part, the kernel hangs during boot reproducibly:

(...)
[ 0.134508] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.154048] futex hash table entries: 256 (order: -1, 3072 bytes)
[    0.166222] pinctrl core: initialized pinctrl subsystem
[    0.177541] NET: Registered protocol family 16

and gone. It doesn't matter if I leave all three groups or only one of them, but as soon as I remove them all, it hangs. So I'd prefer to keep this...

+&ethernet {
+       mtd-mac-address = <&factory 0x4>;
+
+       port@0 {
+               phy-handle = <&phy0>;
+               phy-mode = "mii";
+       };
+       mdio-bus {
+               status = "okay";
+
+               phy0: ethernet-phy@0 {
+                       reg = <0>;
+                       phy-mode = "mii";
+               };
+       };
+};
+
+&wmac {
+       status = "okay";
+       ralink,mtd-eeprom = <&factory 0>;
+       mtd-mac-address = <&factory 0x4>;
+       mtd-mac-address-increment = <1>;

Have you validated against the original firmware that wireless and
ethernet have different mac addresses? Is it the wireless mac address
that is incremented? I'm somehow in doubt here, since there is no
ethernet by default for this board.

With the original firmware, both interfaces do indeed have different mac
addresses. The wireless interface uses the one from the "Factory"
partition (e.g. F8:35:DD:C9:1B:19), not incremented (sorry).

The ethernet interface has a completely different address (e.g. 00:0C:43:28:80:0F). I have no idea where it comes from, I can't find it in any of the configuration partitions wether in binary or in ASCII. It gets set by a kernel module (raeth.ko). In the hexdump of this binary module, I can find a part of this address (00 0c 43 28 80 00) hardcoded.

So I thought, just incrementing the given address for the second interface would do for the beginning. Do you have a suggestion for a better solution?

+define Device/wmdr-143n
+  DTS := WMDR-143N
+  BLOCKSIZE := 64k
+  IMAGES += factory.bin

It seams to me a factory image isn't required for this board. The
sysupgrade.bin should work fine for the initial installation.

I had some trouble during testing because of the metadata at the end of
the sysupgrade.bin image, but I will try again. Probably you are right :-)


Oliver

_______________________________________________
Lede-dev mailing list
Lede-dev@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/lede-dev

Reply via email to