On 6/8/20 7:05 PM, Patrick DELAUNAY wrote: > Dear Marek, Hi,
>> From: Marek Vasut <ma...@denx.de> >> Sent: lundi 8 juin 2020 11:45 >> >> On 6/8/20 11:29 AM, Patrick DELAUNAY wrote: >> [...] >>>>> we don't select the STM32 glue for the correct compatible, I think I >>>>> will push >>>>> >>>>> static const struct udevice_id eqos_ids[] = { >>>>> { >>>>> .compatible = "nvidia,tegra186-eqos", >>>>> .data = (ulong)&eqos_tegra186_config >>>>> }, >>>>> { >>>>> - .compatible = "snps,dwmac-4.20a", >>>>> + .compatible = "st,stm32mp1-dwmac", >>>>> .data = (ulong)&eqos_stm32_config >>>>> }, >>>>> { >>>>> .compatible = "fsl,imx-eqos", >>>>> .data = (ulong)&eqos_imx_config >>>>> }, >>>>> >>>>> { } >>>>> }; >>>>> >>>>> Then you can manage your own glue for rockchip ETH for your compatible. >>>> >>>> You might even want to drop the tegra support on ARM32 , thus save >>>> space by dropping useless code. >>> >>> For information I push 2 patches after this remark: >>> >>> [1] net: dwc_eth_qos: update the compatible supported for STM32 >>> >>> http://patchwork.ozlabs.org/project/uboot/patch/20200514130023.15030-1 >>> -patrick.delau...@st.com/ >>> >>> [2] net: dwc_eth_qos: add Kconfig option to select supported configuration >>> http://patchwork.ozlabs.org/project/uboot/list/?series=181931 >> >> That's for -next, right ? > > Yes both are for -next. > > It is driver improvement (=code size reduction and cleanup compatible) and no > bugfix. I am still not entirely sure whether the ifdeffery is the way to go. I wonder whether we can't rather somehow use the linker-lists to generate a list of compatible strings at runtime (like we do for commands) and then reduce that list to only the compatible strings present in the DT (that's a bit tricky).