Re: [PATCH net] net: ethernet: ti: Fix mixed module-builtin object

From: Arnd Bergmann
Date: Tue Oct 17 2023 - 07:38:43 EST


On Fri, Oct 13, 2023, at 13:10, MD Danish Anwar wrote:
> On 13/10/23 16:08, Arnd Bergmann wrote:
>> On Fri, Oct 13, 2023, at 12:05, MD Danish Anwar wrote:
>>> With CONFIG_TI_K3_AM65_CPSW_NUSS=y and CONFIG_TI_ICSSG_PRUETH=m,
>>> k3-cppi-desc-pool.o is linked to a module and also to vmlinux even though
>>> the expected CFLAGS are different between builtins and modules.
>>>
>>> The build system is complaining about the following:
>>>
>>> k3-cppi-desc-pool.o is added to multiple modules: icssg-prueth
>>> ti-am65-cpsw-nuss
>>>
>>> Introduce the new module, k3-cppi-desc-pool, to provide the common
>>> functions to ti-am65-cpsw-nuss and icssg-prueth.
>>>
>>> Signed-off-by: MD Danish Anwar <danishanwar@xxxxxx>
>>
>> I submitted a different patch for this a while ago:
>> https://lore.kernel.org/lkml/20230612124024.520720-3-arnd@xxxxxxxxxx/
>>
>> I think I never sent a v2 of that, but I still have a
>> working version in my local tree. I've replaced my version
>> with yours for testing now, to see if you still need something
>> beyond that.
>>
>
> I see your patch addresses different modules. My patch introduces a new
> module for k3-cppi-desc-pool which is used by both am65-cpsw-nuss and
> icssg-prueth driver. Where as your patch addresses modules common across
> different cpsw drivers (davinci-emac, cpsw, cpsw-switchdev, netcp,
> netcp_ethss and am65-cpsw-nuss). So I think that both these patches are
> addressing differet warnings.

Right, I can resend my patch (or Alexander Lobakin can rebase his version)
after yours makes it in. Note that your patch introduces a warning about
a missing license and description for the new module, so you should
probably include this hunk:

--- a/drivers/net/ethernet/ti/k3-cppi-desc-pool.c
+++ b/drivers/net/ethernet/ti/k3-cppi-desc-pool.c
@@ -131,3 +131,6 @@ size_t k3_cppi_desc_pool_avail(struct k3_cppi_desc_pool *pool)
return gen_pool_avail(pool->gen_pool) / pool->desc_size;
}
EXPORT_SYMBOL_GPL(k3_cppi_desc_pool_avail);
+
+MODULE_LICENSE("GPL");
+MODULE_DESCRIPTION("TI K3 CPPI5 descriptors pool API");