[EXTERNAL] Re: [PATCH net 1/2] net: ti: icss-iep: Fix pwidth configuration for perout signal

Malladi, Meghana m-malladi at ti.com
Tue Feb 18 22:28:29 PST 2025


Hi Simon

On 2/16/2025 9:41 PM, Simon Horman wrote:
> On Fri, Feb 14, 2025 at 11:35:07AM +0530, Malladi, Meghana wrote:
>>
>>
>> On 2/13/2025 4:53 PM, Paolo Abeni wrote:
>>> On 2/11/25 11: 35 AM, Meghana Malladi wrote: > @@ -419,8 +426,9 @@
>>> static int icss_iep_perout_enable_hw(struct icss_iep *iep, >
>>> regmap_write(iep->map, ICSS_IEP_CMP1_REG0, lower_32_bits(cmp)); > if
>>> (iep->plat_data->flags &
>>> ZjQcmQRYFpfptBannerStart
>>> This message was sent from outside of Texas Instruments.
>>> Do not click links or open attachments unless you recognize the source
>>> of this email and know the content is safe.
>>> Report Suspicious
>>> <https://us-phishalarm-ewt.proofpoint.com/EWT/v1/G3vK! updqdzavl0dbisXOnfkDHxHqGlQUHEro3tgnljLa7x4DRPBIRKu8Nqm3bW1LeMtXFyqz6yM7_tLlrvUmslKj9m_IL0hUlNU$>
>>> ZjQcmQRYFpfptBannerEnd
>>>
>>> On 2/11/25 11:35 AM, Meghana Malladi wrote:
>>>> @@ -419,8 +426,9 @@ static int icss_iep_perout_enable_hw(struct icss_iep *iep,
>>>>   			regmap_write(iep->map, ICSS_IEP_CMP1_REG0, lower_32_bits(cmp));
>>>>   			if (iep->plat_data->flags & ICSS_IEP_64BIT_COUNTER_SUPPORT)
>>>>   				regmap_write(iep->map, ICSS_IEP_CMP1_REG1, upper_32_bits(cmp));
>>>> -			/* Configure SYNC, 1ms pulse width */
>>>> -			regmap_write(iep->map, ICSS_IEP_SYNC_PWIDTH_REG, 1000000);
>>>> +			/* Configure SYNC, based on req on width */
>>>> +			regmap_write(iep->map, ICSS_IEP_SYNC_PWIDTH_REG,
>>>> +				     (u32)(ns_width / iep->def_inc));
>>>
>>> This causes build errors on 32bits:
>>>
>>> ERROR: modpost: "__udivdi3" [drivers/net/ethernet/ti/icssg/icss_iep.ko]
>>> undefined!
>>> make[3]: *** [../scripts/Makefile.modpost:147: Module.symvers] Error 1
>>> make[2]: *** [/home/nipa/net/wt-0/Makefile:1944: modpost] Error 2
>>> make[1]: *** [/home/nipa/net/wt-0/Makefile:251: __sub-make] Error 2
>>> make: *** [Makefile:251: __sub-make] Error 2
>>> ERROR: modpost: "__udivdi3" [drivers/net/ethernet/ti/icssg/icss_iep.ko]
>>>
>>> You should use div_u64()
>>>
>>
>> I see, thanks.
>> Can you tell me how can I reproduce this on my end for 32 bits.
>> Will fix this in v2.
> 
> Hi Meghana,
> 
> FWIIW, I was able to reproduce this problem running the following
> on an x86_64 system:
> 
> ARCH=i386 make tinyconfig
> 
> echo CONFIG_COMPILE_TEST=y >> .config
> echo CONFIG_PCI=y >> .config
> echo CONFIG_SOC_TI=y >> .config
> echo CONFIG_TI_PRUSS=y >> .config
> echo CONFIG_NET=y >> .config
> echo CONFIG_NETDEVICES=y >> .config
> 
> yes "" | ARCH=i386 make oldconfig
> 
> ARCH=i386 make -j$(nproc)

Thanks for sharing this, I was able to reproduce and fix this locally.




More information about the linux-arm-kernel mailing list