Re: [PATCH v2 3/7] irqdomain: Add parent field to struct irqchip_fwid
From: Lorenzo Pieralisi <lpieralisi@kernel.org>
Date: 2026-01-13 11:05:03
Also in:
linux-acpi, linux-pci, lkml
On Wed, Jan 07, 2026 at 10:04:52AM +0000, Jonathan Cameron wrote: [...]
quoted
quoted
quoted
+static inline +struct fwnode_handle *irq_domain_alloc_named_fwnode_parent(const char *name, + struct fwnode_handle *parent)The name of this makes me think it's allocating the named fwnode parent, rather that the named fwnode + setting it's parent. There aren't all that many calls to irq_domain_named_fwnode(), maybe to avoid challenge of a new name, just add the parameter to all of them? (25ish) Mind you the current pattern for similar cases is a helper, so maybe not.Similar cases ? Have you got anything specific I can look into ?I meant all the different irq_domain_alloc_xxxxx variants that call __irq_domain_alloc_fwnode() with a subset of parameters set to NULL. That seems to say there is a precedence for making the presence of the parameter part of the name rather than requiring callers to set the ones they don't want to NULL. So it argues for a helper like this one just for consistency.quoted
quoted
Or go with something similar to named and have irq_domain_alloc_named_parented_fwnode()?
Right, given that Thomas is fine with it, I will go with this suggestion then albeit it is getting a bit cumbersome (_named_id_parented_fwnode..), it should be fine and I can rework the code to add a parent field to the existing interface later if we feel it is nicer. Thanks, Lorenzo
quoted
Or I can add a set_parent() helper (though that's a bit of churn IMO) ? If Thomas has a preference I will follow that, all of the above is doable for me.Agreed. Let's see what Thomas prefers (i.e. make the decision his problem ;) Jonathanquoted
quoted
I'm not that bothered though if you think the current naming is the best we can do.I think you have a point - as per my comment above. Thanks, Lorenzoquoted
Jonathanquoted
+{ + return __irq_domain_alloc_fwnode(IRQCHIP_FWNODE_NAMED, 0, name, NULL, parent); }