[PATCH] gpiolib: of: Only compile in MT2701 quirk when it is needed.
From: Daniel Palmer
Date: Sat Dec 13 2025 - 22:40:59 EST
The compiler cannot workout if this is actually needed or not
so machines that will never need this code also get it.
For example:
m68k-linux-gnu-nm vmlinux | grep mt27
00135742 t of_find_mt2701_gpio
Add some ugly ifdef'ery to get rid of it.
Signed-off-by: Daniel Palmer <daniel@xxxxxxxxx>
---
drivers/gpio/gpiolib-of.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/drivers/gpio/gpiolib-of.c b/drivers/gpio/gpiolib-of.c
index 8657379e9165..ef1ac68b94b7 100644
--- a/drivers/gpio/gpiolib-of.c
+++ b/drivers/gpio/gpiolib-of.c
@@ -634,6 +634,7 @@ static struct gpio_desc *of_find_gpio_rename(struct device_node *np,
return ERR_PTR(-ENOENT);
}
+#if IS_ENABLED(CONFIG_SND_SOC_MT2701_CS42448)
static struct gpio_desc *of_find_mt2701_gpio(struct device_node *np,
const char *con_id,
unsigned int idx,
@@ -665,6 +666,7 @@ static struct gpio_desc *of_find_mt2701_gpio(struct device_node *np,
return desc;
}
+#endif
/*
* Trigger sources are special, they allow us to use any GPIO as a LED trigger
@@ -699,7 +701,9 @@ typedef struct gpio_desc *(*of_find_gpio_quirk)(struct device_node *np,
enum of_gpio_flags *of_flags);
static const of_find_gpio_quirk of_find_gpio_quirks[] = {
of_find_gpio_rename,
+#if IS_ENABLED(CONFIG_SND_SOC_MT2701_CS42448)
of_find_mt2701_gpio,
+#endif
of_find_trigger_gpio,
NULL
};
--
2.51.0