Re: gemini: sl3516: Mainlining of NS 2502

From: Corentin Labbe
Date: Tue Apr 06 2021 - 08:05:28 EST


Le Tue, Apr 06, 2021 at 10:15:51AM +0200, Linus Walleij a écrit :
> On Mon, Apr 5, 2021 at 8:39 PM Corentin Labbe <clabbe.montjoie@xxxxxxxxx> wrote:
>
> > I own an Edimax NS 2502, which is a NAS based on StormLinix 3516.
> > I successfully upgraded it with a recent Linux.
>
> Pretty cool!
>
> > mdio0: ethernet-phy {
> > compatible = "virtual,mdio-gpio";
> > gpios = <&gpio0 22 GPIO_ACTIVE_HIGH>, /* MDC */
> > <&gpio0 21 GPIO_ACTIVE_HIGH>; /* MDIO */
> > #address-cells = <1>;
> > #size-cells = <0>;
> > phy0: ethernet-phy@1 {
> > reg = <1>;
> > device_type = "ethernet-phy";
> > };
> > };
>
> This looks like the most typical way to attach an MDIO phy.
>
> I always try to identify the exact component used on the board. Do you have
> a high res board photo?
>

Hello

You could find photos at http://kernel.montjoie.ovh/gemini/
There are also photos of another SL3516 SoC based device (a SSI 1328 NAS), but I fail to setup a serial on it, so I keep it for later.

> Realtek RTL82111 is the most common configuration.
>
> Compare to the D-Linux DNS-313 DTS:
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/arm/boot/dts/gemini-dlink-dns-313.dts
>
> Try just copying the whole pinctrl-gmii section!
>
>
> > syscon: syscon@40000000 {
> > pinctrl {
> > /*
> > * gpio0agrp cover line 0-4
> > * gpio0bgrp cover line 5
> > */
> > gpio0_default_pins: pinctrl-gpio0 {
> > mux {
> > function = "gpio0";
> > groups = "gpio0agrp",
> > "gpio0bgrp";
> > };
> > };
>
> Change groups to
>
> groups = "gpio0agrp", "gpio0bgrp", "gpio0hgrp";
>
> So you mux in group h which is where the GPIO 21, 22 go out
> to the MDIO on 3516 IIUC. The right mux out is pretty important,
> if you have vendor source code, please share so I can check how
> they set it up.
>

No change, probably due to all pinctrl-gemini 40000000.syscon:pinctrl: could not map pin config for "R8 GMAC0 RXDV"
Please see http://kernel.montjoie.ovh/gemini/bootlog6.txt , I have added some pr_info in gmac.
I have put in the directory, the final dtb which I use.

The vendor source could be found at https://www.edimax.com/edimax/mw/cufiles/files/download/OpenSourceCode/transfer/Wireless/NAS/NAS-GPL-source.zip

> > BUT neither ethernet nor USB works.
>
> For USB try this patch:
> https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-nomadik.git/commit/?h=gemini-usb&id=cbaf6cdf770b90de5f10bfa5112c679f1dffe948
>

One of the USB port is now working.

> Pls report progress! I hope we can mainline this device.
>

I hope too.
Note that I have also started to work on the gemini crypto driver.

Thanks for your help