From: Bartosz Golaszewski <brgl@bgdev.pl>
To: Thomas Gleixner <tglx@linutronix.de>,
Marc Zyngier <marc.zyngier@arm.com>,
Jonathan Cameron <Jonathan.Cameron@huawei.com>,
Lars-Peter Clausen <lars@metafoo.de>
Cc: linux-kernel@vger.kernel.org, Bartosz Golaszewski <brgl@bgdev.pl>
Subject: [PATCH 3/3] irq/irq_sim: implement irq_sim_irq2offset()
Date: Thu, 5 Oct 2017 14:44:46 +0200 [thread overview]
Message-ID: <20171005124446.26265-4-brgl@bgdev.pl> (raw)
In-Reply-To: <20171005124446.26265-1-brgl@bgdev.pl>
Add a routine allowing to retrieve the offset corresponding with an
allocated interrupt number from an irq_sim object.
Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
---
include/linux/irq_sim.h | 1 +
kernel/irq/irq_sim.c | 15 +++++++++++++++
2 files changed, 16 insertions(+)
diff --git a/include/linux/irq_sim.h b/include/linux/irq_sim.h
index 246f593face8..e9768ca81e3e 100644
--- a/include/linux/irq_sim.h
+++ b/include/linux/irq_sim.h
@@ -41,5 +41,6 @@ void irq_sim_fini(struct irq_sim *sim);
void irq_sim_fire(struct irq_sim *sim, unsigned int offset);
int irq_sim_irqnum(struct irq_sim *sim, unsigned int offset);
int irq_sim_baseirq(struct irq_sim *sim);
+unsigned int irq_sim_irq2offset(struct irq_sim *sim, int irq);
#endif /* _LINUX_IRQ_SIM_H */
diff --git a/kernel/irq/irq_sim.c b/kernel/irq/irq_sim.c
index 1be10d0e295f..9a9a1bc8853c 100644
--- a/kernel/irq/irq_sim.c
+++ b/kernel/irq/irq_sim.c
@@ -174,3 +174,18 @@ int irq_sim_baseirq(struct irq_sim *sim)
return irq_sim_irqnum(sim, 0);
}
EXPORT_SYMBOL_GPL(irq_sim_baseirq);
+
+/**
+ * irq_sim_irq2offset - Get the offset of an allocated interrupt.
+ *
+ * @sim: The interrupt simulator object.
+ * irq: Allocated interrupt number.
+ *
+ * Perform a reverse lookup for the interrupt number and return its offset in
+ * the array allocated by sim_irq.
+ */
+unsigned int irq_sim_irq2offset(struct irq_sim *sim, int irq)
+{
+ return irq - sim->irq_base;
+}
+EXPORT_SYMBOL_GPL(irq_sim_irq2offset);
--
2.13.2
next prev parent reply other threads:[~2017-10-05 12:45 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-10-05 12:44 [PATCH 0/3] irq-sim updates for 4.15 Bartosz Golaszewski
2017-10-05 12:44 ` [PATCH 1/3] irq/irq_sim: explicitly pull in slab.h Bartosz Golaszewski
2017-10-05 12:44 ` [PATCH 2/3] irq/irq_sim: implement irq_sim_baseirq() Bartosz Golaszewski
2017-10-05 12:44 ` Bartosz Golaszewski [this message]
2017-10-18 8:58 ` [PATCH 3/3] irq/irq_sim: implement irq_sim_irq2offset() Marc Zyngier
2017-10-18 9:51 ` Bartosz Golaszewski
2017-10-18 10:13 ` Marc Zyngier
2017-10-18 12:49 ` Bartosz Golaszewski
2017-10-18 15:47 ` Marc Zyngier
2017-10-18 8:34 ` [PATCH 0/3] irq-sim updates for 4.15 Bartosz Golaszewski
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20171005124446.26265-4-brgl@bgdev.pl \
--to=brgl@bgdev.pl \
--cc=Jonathan.Cameron@huawei.com \
--cc=lars@metafoo.de \
--cc=linux-kernel@vger.kernel.org \
--cc=marc.zyngier@arm.com \
--cc=tglx@linutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.