On Tue, 2020-01-21 at 00:55 +0100, Mauro Condarelli wrote: > Hi Weijie, > I attach my, apparently working, port to VoCore2 SoM. > > These patchsets are on top of Your 21 patch rewrite of MT7628 board, > > While the first patchset is relatively straightforward, but does not include > MMC handling, to enable it I had to backport from Linux Kernel several > pieces, essentially clock and interrupt handling.
You are using a superseded patch series (v1) I submitted several months ago. These patches have already been replaced by v3 and merged into the mainline. * "mtmips-clk-gate" from v1 is replaced by "mediatek,mt7628-clk" and the function of "mediatek,mt7628-clk" is a superset of "mtmips-clk-gate". * The node "intc" has no use at all. U-Boot for mips use no interrupts. * mmc property "hclk" is the gating clock of the SD controller module. Using <&clk48m> in the v1 patches was a bad idea. I changed it to <&clkctrl CLK_SDXC> in v3 to make sure its clock will be always enabled. * Please move pinctrl properties to your board's dts file. * pinctrl name "state_uhs" is not used by mtk-sd in U-Boot. MT7628 does not support UHS. You should remove it. * vmmc-supply and vqmmc-supply are not used by mtk-sd in U-Boot because UHS support is not added to the driver. Besides you have assigned wrong values to them. You should remove it. > > Those drivers appear written by You. > I am unsure if this is really needed or if there is some other (perhaps > cleaner) > way to enable MMC. > > As said this seems to work for me, but I would like to contribute this > board upstream, in the best possible way. > > Please let me know how I should proceed. I don't have a board with the "sd_iot_mode" pinmux for SDXC, so I can't tell you why you can't use it with my v3 patches. But I have tested v3 patches on boards using "sd_router_mode" pinmux and they do work well. > > Best Regards and Thanks in Advance > >