Hi all, After merging the driver-core tree, today's linux-next build (sparc64 defconfig) failed like this: drivers/of/property.o: In function `parse_interrupts': property.c:(.text+0x14e0): undefined reference to `of_irq_parse_one' Caused by commit f265f06af194 ("of: property: Fix fw_devlink handling of interrupts/interrupts-extended") CONFIG_OF_IRQ depends on !SPARC so of_irq_parse_one() needs a stub. I have added the following patch for today. From: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> Date: Wed, 10 Feb 2021 21:27:56 +1100 Subject: [PATCH] of: irq: make a stub for of_irq_parse_one() Signed-off-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> --- include/linux/of_irq.h | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/include/linux/of_irq.h b/include/linux/of_irq.h index e8b78139f78c..f898d838d201 100644 --- a/include/linux/of_irq.h +++ b/include/linux/of_irq.h @@ -33,8 +33,6 @@ static inline int of_irq_parse_oldworld(struct device_node *device, int index, #endif /* CONFIG_PPC32 && CONFIG_PPC_PMAC */ extern int of_irq_parse_raw(const __be32 *addr, struct of_phandle_args *out_irq); -extern int of_irq_parse_one(struct device_node *device, int index, - struct of_phandle_args *out_irq); extern unsigned int irq_create_of_mapping(struct of_phandle_args *irq_data); extern int of_irq_to_resource(struct device_node *dev, int index, struct resource *r); @@ -42,6 +40,8 @@ extern int of_irq_to_resource(struct device_node *dev, int index, extern void of_irq_init(const struct of_device_id *matches); #ifdef CONFIG_OF_IRQ +extern int of_irq_parse_one(struct device_node *device, int index, + struct of_phandle_args *out_irq); extern int of_irq_count(struct device_node *dev); extern int of_irq_get(struct device_node *dev, int index); extern int of_irq_get_byname(struct device_node *dev, const char *name); @@ -57,6 +57,11 @@ extern struct irq_domain *of_msi_map_get_device_domain(struct device *dev, extern void of_msi_configure(struct device *dev, struct device_node *np); u32 of_msi_map_id(struct device *dev, struct device_node *msi_np, u32 id_in); #else +static inline int of_irq_parse_one(struct device_node *device, int index, + struct of_phandle_args *out_irq) +{ + return 0; +} static inline int of_irq_count(struct device_node *dev) { return 0; -- 2.30.0 -- Cheers, Stephen Rothwell
Attachment:
pgp_cK5rwNQq0.pgp
Description: OpenPGP digital signature