From a25463c14d9b803c8308a222d5f8ac1c55098b3c Mon Sep 17 00:00:00 2001 From: Bartosz Golaszewski Date: Thu, 30 Apr 2026 14:57:19 +0200 Subject: [PATCH] ARM: pxa: spitz: attach software nodes to their target GPIO controllers Software nodes describing the GPIO controllers for the spitz platform are currently "dangling" - they're not actually attached to the relevant controllers and don't allow real fwnode lookup. Attach them either by directly assigning them to the struct device or by using the i2c board info struct. Reviewed-by: Linus Walleij Link: https://patch.msgid.link/20260430-pxa-gpio-swnodes-v3-2-5142e95f0eca@oss.qualcomm.com Signed-off-by: Bartosz Golaszewski --- arch/arm/mach-pxa/spitz.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/arch/arm/mach-pxa/spitz.c b/arch/arm/mach-pxa/spitz.c index 3284b9f62be9..5091b601c4e1 100644 --- a/arch/arm/mach-pxa/spitz.c +++ b/arch/arm/mach-pxa/spitz.c @@ -204,11 +204,15 @@ static struct platform_device spitz_scoop_2_device = { static void __init spitz_scoop_init(void) { + spitz_scoop_1_device.dev.fwnode = software_node_fwnode(&spitz_scoop_1_gpiochip_node); platform_device_register(&spitz_scoop_1_device); /* Akita doesn't have the second SCOOP chip */ - if (!machine_is_akita()) + if (!machine_is_akita()) { + spitz_scoop_2_device.dev.fwnode = software_node_fwnode( + &spitz_scoop_2_gpiochip_node); platform_device_register(&spitz_scoop_2_device); + } } /* Power control is shared with between one of the CF slots and SD */ @@ -988,6 +992,7 @@ static struct i2c_board_info spitz_i2c_devs[] = { .type = "max7310", .addr = 0x18, .platform_data = &akita_pca953x_pdata, + .swnode = &akita_max7310_gpiochip_node, }, };