Re: [PATCH] crypto: amlogic - Save a few bytes of memory

From: Christophe JAILLET
Date: Tue Nov 22 2022 - 17:36:49 EST


Le 22/11/2022 à 23:02, Martin Blumenstingl a écrit :
On Tue, Nov 22, 2022 at 10:57 PM Christophe JAILLET
<christophe.jaillet@xxxxxxxxxx> wrote:

There is no real point in allocating dedicated memory for the irqs array.
MAXFLOW is only 2, so it is easier to allocated the needed space
directly within the 'meson_dev' structure.

This saves some memory allocation and avoids an indirection when using the
irqs array.
..and it even fixes a missing devm_kcalloc error check

Personally I prefer this approach over a patch that was sent earlier today: [0]
Corentin, Christophe, what do you think?


Best regards,
Martin


[0] https://lore.kernel.org/linux-crypto/0df30bbf-3b7e-ed20-e316-41192bf3cc2b@xxxxxxxxxx/T/#m6a45b44206c282f106d379b01d19027823c5d79b


Unrelated, but I think that meson_irq_handler() needs a small ajustement to avoid printing a spurious message if readl() returns 0.

Maybe something like that?:


@@ -33,9 +33,10 @@ static irqreturn_t meson_irq_handler(int irq, void *data)
writel_relaxed(0xF, mc->base + ((0x4 + flow) << 2));
mc->chanlist[flow].status = 1;
complete(&mc->chanlist[flow].complete);
- return IRQ_HANDLED;
+ } else {
+ dev_err(mc->dev, "%s %d Got irq for flow %d but ctrl is empty\n", __func__, irq, flow);
}
- dev_err(mc->dev, "%s %d Got irq for flow %d but ctrl is empty\n", __func__, irq, flow);
+ return IRQ_HANDLED;
}
}


CJ