linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3] c6x: replace setup_irq() by request_irq()
@ 2020-03-04  0:41 afzal mohammed
  2020-03-13 12:20 ` afzal mohammed
  0 siblings, 1 reply; 2+ messages in thread
From: afzal mohammed @ 2020-03-04  0:41 UTC (permalink / raw)
  To: linux-c6x-dev, linux-kernel
  Cc: afzal mohammed, Mark Salter, Aurelien Jacquiot

request_irq() is preferred over setup_irq(). Invocations of setup_irq()
occur after memory allocators are ready.

Per tglx[1], setup_irq() existed in olden days when allocators were not
ready by the time early interrupts were initialized.

Hence replace setup_irq() by request_irq().

[1] https://lkml.kernel.org/r/alpine.DEB.2.20.1710191609480.1971@nanos

Signed-off-by: afzal mohammed <afzal.mohd.ma@gmail.com>
---
Hi Mark Salter,

i believe you are the maintainer of c6x, if you are okay w/ this change,
please consider taking it thr' your tree, else please let me know.

Regards
afzal

Link to v2 & v1,
[v2] https://lkml.kernel.org/r/cover.1582471508.git.afzal.mohd.ma@gmail.com
[v1] https://lkml.kernel.org/r/cover.1581478323.git.afzal.mohd.ma@gmail.com

v3:
 * Split out from tree wide series, as Thomas suggested to get it thr'
	respective maintainers
 * Modify pr_err displayed in case of error
 * Re-arrange code & choose pr_err args as required to improve readability
 * Remove irrelevant parts from commit message & improve
 
v2:
 * Replace pr_err("request_irq() on %s failed" by
           pr_err("%s: request_irq() failed"
 * Commit message massage

 arch/c6x/platforms/timer64.c | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

diff --git a/arch/c6x/platforms/timer64.c b/arch/c6x/platforms/timer64.c
index d98d94303498..661f4c7c6ef6 100644
--- a/arch/c6x/platforms/timer64.c
+++ b/arch/c6x/platforms/timer64.c
@@ -165,13 +165,6 @@ static irqreturn_t timer_interrupt(int irq, void *dev_id)
 	return IRQ_HANDLED;
 }
 
-static struct irqaction timer_iact = {
-	.name		= "timer",
-	.flags		= IRQF_TIMER,
-	.handler	= timer_interrupt,
-	.dev_id		= &t64_clockevent_device,
-};
-
 void __init timer64_init(void)
 {
 	struct clock_event_device *cd = &t64_clockevent_device;
@@ -238,7 +231,9 @@ void __init timer64_init(void)
 	cd->cpumask		= cpumask_of(smp_processor_id());
 
 	clockevents_register_device(cd);
-	setup_irq(cd->irq, &timer_iact);
+	if (request_irq(cd->irq, timer_interrupt, IRQF_TIMER, "timer",
+			&t64_clockevent_device))
+		pr_err("Failed to request irq %d (timer)\n", cd->irq);
 
 out:
 	of_node_put(np);
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH v3] c6x: replace setup_irq() by request_irq()
  2020-03-04  0:41 [PATCH v3] c6x: replace setup_irq() by request_irq() afzal mohammed
@ 2020-03-13 12:20 ` afzal mohammed
  0 siblings, 0 replies; 2+ messages in thread
From: afzal mohammed @ 2020-03-13 12:20 UTC (permalink / raw)
  To: linux-c6x-dev, linux-kernel; +Cc: Mark Salter, Aurelien Jacquiot

Hi Mark Salter,

On Wed, Mar 04, 2020 at 06:11:43AM +0530, afzal mohammed wrote:

> Hi Mark Salter,
> 
> i believe you are the maintainer of c6x, if you are okay w/ this change,
> please consider taking it thr' your tree, else please let me know.

i am seeing the last signoff by you in arch/c6x around 2 years back, so
seems nowadays you are not sending pull request for c6x.

If you are planning to send this patch upstream, let me know or if you
are preferring to ack this so that this can be routed via tglx, please
do so (you had acked v1, since there were minor changes, i removed it
on newer versions).

Regards
afzal

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2020-03-13 12:20 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-03-04  0:41 [PATCH v3] c6x: replace setup_irq() by request_irq() afzal mohammed
2020-03-13 12:20 ` afzal mohammed

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).