Messages in this thread | | | Date | Thu, 18 Apr 2024 15:37:58 +0200 | Subject | Re: [PATCH] MIPS: SGI-IP30: Use bitmap API when iterating over bitmap | From | Philippe Mathieu-Daudé <> |
| |
On 17/4/24 19:27, Yury Norov wrote: > On Wed, Apr 17, 2024 at 09:18:29AM +0200, Philippe Mathieu-Daudé wrote: >> Do not open-code bitmap_set(). Besides, <linux/bitmap.h> API >> allows architecture specific optimizations, so prefer it. >> >> Use the HEART_NUM_IRQS definition to express the end of the >> HEART bitmap. >> >> Inspired-by: Yury Norov <yury.norov@gmail.com> >> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> >> --- >> arch/mips/sgi-ip30/ip30-irq.c | 4 +--- >> 1 file changed, 1 insertion(+), 3 deletions(-) >> >> diff --git a/arch/mips/sgi-ip30/ip30-irq.c b/arch/mips/sgi-ip30/ip30-irq.c >> index 423c32cb66ed..bdafff076191 100644 >> --- a/arch/mips/sgi-ip30/ip30-irq.c >> +++ b/arch/mips/sgi-ip30/ip30-irq.c >> @@ -264,7 +264,6 @@ void __init arch_init_irq(void) >> struct irq_domain *domain; >> struct fwnode_handle *fn; >> unsigned long *mask; >> - int i; >> >> mips_cpu_irq_init(); >> >> @@ -300,8 +299,7 @@ void __init arch_init_irq(void) >> set_bit(HEART_L3_INT_TIMER, heart_irq_map); >> >> /* Reserve the error interrupts (#51 to #63). */ >> - for (i = HEART_L4_INT_XWID_ERR_9; i <= HEART_L4_INT_HEART_EXCP; i++) >> - set_bit(i, heart_irq_map); >> + bitmap_set(heart_irq_map, HEART_L4_INT_XWID_ERR_9, HEART_NUM_IRQS); > > This function has a signature > bitmap_set(map, start, length)
Doh, I thought it was (map, from_inc, to_exc), my bad.
> So this should be a: > bitmap_set(heart_irq_map, HEART_L4_INT_XWID_ERR_9, > HEART_NUM_IRQS - HEART_L4_INT_XWID_ERR_9 + 1) > > Also on the above group of set_bit(). It should be 2 bitmap_set() > calls to me. HEART_L0_INT [0, 2] is the first one, and HEART_L2_INT > to HEART_L4_INT [46, 63] is the other. Isn't?
Please disregard this patch, sorry for the noise.
Regards,
Phil.
| |