[PATCH 10/10] pinctrl: starfive: Switch to dynamic chip name output

Marc Zyngier
2022-02-09T16:49:53Z

Instead of overloading the name field, use the relevant callback to
output the device name.

Signed-off-by: Marc Zyngier <maz@kernel.org>
---
drivers/pinctrl/pinctrl-starfive.c | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/drivers/pinctrl/pinctrl-starfive.c b/drivers/pinctrl/pinctrl-starfive.c
index 5be9866c2b3c..f29d9ccf858b 100644
--- a/drivers/pinctrl/pinctrl-starfive.c
+++ b/drivers/pinctrl/pinctrl-starfive.c
@@ -15,6 +15,7 @@
#include <linux/of.h>
#include <linux/platform_device.h>
#include <linux/reset.h>
+#include <linux/seq_file.h>
#include <linux/spinlock.h>

#include <linux/pinctrl/pinctrl.h>
@@ -1163,12 +1164,20 @@ static int starfive_irq_set_type(struct irq_data *d, unsigned int trigger)
return 0;
}

+static void starfive_irq_print_chip(struct irq_data *d, struct seq_file *p)
+{
+ struct starfive_pinctrl *sfp = starfive_from_irq_data(d);
+
+ seq_printf(p, sfp->gc.label);
+}
+
static struct irq_chip starfive_irq_chip = {
.irq_ack = starfive_irq_ack,
.irq_mask = starfive_irq_mask,
.irq_mask_ack = starfive_irq_mask_ack,
.irq_unmask = starfive_irq_unmask,
.irq_set_type = starfive_irq_set_type,
+ .irq_print_chip = starfive_irq_print_chip,
.flags = IRQCHIP_SET_TYPE_MASKED,
};

@@ -1307,8 +1316,6 @@ static int starfive_probe(struct platform_device *pdev)
sfp->gc.base = -1;
sfp->gc.ngpio = NR_GPIOS;

- starfive_irq_chip.name = sfp->gc.label;
-
sfp->gc.irq.chip = &starfive_irq_chip;
sfp->gc.irq.parent_handler = starfive_gpio_irq_handler;
sfp->gc.irq.num_parents = 1;
--
2.30.2