Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 47bfd058 authored by Venkat Subbiah's avatar Venkat Subbiah Committed by Wim Van Sebroeck
Browse files

watchdog: Octeon: Mark octeon_wdt interrupt as IRQF_NO_THREAD



This is to exclude it from force threading to allow RT patch set to work.

The watchdog timers are per-CPU and the addresses of register that reset
the timer are calculated based on the current CPU.  Therefore we cannot
allow it to run on a thread on a different CPU.  Also we only do a
single register write, which is much faster than scheduling a handler
thread.

And while on this line remove IRQF_DISABLED as this flag is a NOP.

Signed-off-by: default avatarVenkat <Subbiah&lt;venkat.subbiah@cavium.com>
Acked-by: default avatarDavid <Daney&lt;david.daney@cavium.com>
Signed-off-by: default avatarWim Van Sebroeck <wim@iguana.be>
parent cef153a8
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -402,7 +402,7 @@ static void octeon_wdt_setup_interrupt(int cpu)
	irq = OCTEON_IRQ_WDOG0 + core;

	if (request_irq(irq, octeon_wdt_poke_irq,
			IRQF_DISABLED, "octeon_wdt", octeon_wdt_poke_irq))
			IRQF_NO_THREAD, "octeon_wdt", octeon_wdt_poke_irq))
		panic("octeon_wdt: Couldn't obtain irq %d", irq);

	cpumask_set_cpu(cpu, &irq_enabled_cpus);