Matti! On Tue, Jun 04 2024 at 10:55, Matti Vaittinen wrote: > struct irq_domain *__irq_domain_add(struct fwnode_handle *fwnode, unsigned int size, > irq_hw_number_t hwirq_max, int direct_max, > const struct irq_domain_ops *ops, > - void *host_data); > + void *host_data, const char *name_suffix); > struct irq_domain *irq_domain_create_simple(struct fwnode_handle *fwnode, > unsigned int size, > unsigned int first_irq, > @@ -350,7 +350,8 @@ static inline struct irq_domain *irq_domain_add_linear(struct device_node *of_no > const struct irq_domain_ops *ops, > void *host_data) > { > - return __irq_domain_add(of_node_to_fwnode(of_node), size, size, 0, ops, host_data); > + return __irq_domain_add(of_node_to_fwnode(of_node), size, size, 0, ops, > + host_data, NULL); .... Looking at the resulting amount of churn to add that argument, I'm not really enthused. There is some other unrelated change required in this area: https://lore.kernel.org/all/8734pr5yq1.ffs@tglx My suggestion to convert all of this mess into a template based mechanism would nicely solve your problem too. Can you please have a look and eventually team up with Herve (CC'ed) to sort this out? I'm happy to help and give guidance. Thanks, tglx