Re: [PATCH v9 5/5] clocksource/timer-econet-en751221: Support EN751627 without percpu IRQ
From: Caleb James DeLisle
Date: Thu Oct 15 2026 - 04:34:45 EST
On 15/10/2026 09:21, Daniel Lezcano wrote:
On 10/14/26 22:36, Caleb James DeLisle wrote:
Hello Daniel,
Thank you for the review.
On 14/10/2026 20:43, Daniel Lezcano wrote:
Hi Caleb,
with the help of a LLM, I got the following two issues with the changes
On 9/18/26 17:36, Caleb James DeLisle wrote:
EN751627 is based on the 1004Kc which uses a different interrupt number
for each CPU timer. Support both this and the EN751221 which uses a
single percpu interrupt.
Signed-off-by: Caleb James DeLisle <cjd@xxxxxxxx>
---
[ ... ]
The binding requires four interrupts and two register blocks for EN751627, but the driver sizes its resource arrays from NR_CPUS and rejects DTs exceeding those sizes. Consequently, a UP kernel (NR_CPUS=1) or an SMP kernel configured for two CPUs rejects a valid EN751627 DT before registering any timer.
This is a fair point, and I suppose a reasonable thing to do here is instead set num_blocks = ARRAY_SIZE(econet_timer.membase) so we just don't use the other blocks. I can send an updated patchset with that.
IMO, econet_timer.irqs[] and econet_timer.membase[] should just be big enough to store all nodes without using NR_CPUS.
Given you have num_irqs and num_blocks, why not just kzalloc them ?
That works for me, I'll re-send it like that then.
Thanks,
Caleb