Em sáb., 6 de mai. de 2023 06:12, Arınç ÜNAL <arinc.u...@arinc9.com> escreveu: > > Hi.
Hi Arinç, > I see a lot of development on the network drivers like DSA, PHY, etc. > Are there any plans to put all these drivers on the realtek target on > mainline Linux? To fully support these SoCs on mainline Linux? > > Arınç > I'm a minor contributor to the DSA driver for the realtek target, but I have my 2 cents to share. I believe we can start to enlist what would be needed to get the drivers upstream. We can start the discussion from there: - The DSA driver uses a lot of magic numbers that would not be accepted by the upstream kernel. They must be converted into macros, enum, inline functions and friends. - There are shared functions with internal conditions (if modelA then ...). Mixed with magic numbers, it is much easier to miss a peculiarity about a subtarget and introduce bugs. A nice way to avoid that is to convert them into indirect calls to subtarget functions (*_ops). - The driver uses hardcoded addresses and direct memory writes. I don't know if there is anything incompatible but upstream drivers normally use regmap. It will also clean up a lot of things and introduce nice functions. - The DSA driver uses a generic tag that is converted afterwards by each (ethernet?) driver into its CPU tag. The DSA taggers were designed to decouple CPU tag from ethernet driver logic and upstream maintainters might ask to implement each CPU tagger as a proper DSA tag. Although it might not make sense to have an ethernet driver without a tag in this target, it would get closer to how outer drivers work and make it easier to understand the driver. Regards, Luiz _______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel