[PATCH V3 01/14] watchdog/mpcore_wdt: Mark it as BROKEN

Viresh Kumar viresh.kumar at linaro.org
Tue Jun 18 11:20:25 EDT 2013


This driver was broken since ever.

- Interrupt request doesn't use the right API: The TWD watchdog uses a per-cpu
  interrupt (usually interrupt #30), and the GIC configuration should flag it as
  such. With this setup, request_irq() should fail, and the right API is
  request_percpu_irq(), together with enable_percpu_irq()/disable_percpu_irq().

- Nothing ensures the userspace ioctl() will end-up kicking the watchdog on the
  right CPU.

Was last discussed here:

http://lists.infradead.org/pipermail/linux-arm-kernel/2012-April/095960.html

Lets mark it broken until somebody with this hardware gets up and fixes it.

Suggested-by: Marc Zyngier <marc.zyngier at arm.com>
Signed-off-by: Viresh Kumar <viresh.kumar at linaro.org>
---
 drivers/watchdog/Kconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig
index 9d03af1..c7dabe9 100644
--- a/drivers/watchdog/Kconfig
+++ b/drivers/watchdog/Kconfig
@@ -223,7 +223,7 @@ config DW_WATCHDOG
 
 config MPCORE_WATCHDOG
 	tristate "MPcore watchdog"
-	depends on HAVE_ARM_TWD
+	depends on HAVE_ARM_TWD && BROKEN
 	help
 	  Watchdog timer embedded into the MPcore system.
 
-- 
1.7.12.rc2.18.g61b472e




More information about the linux-arm-kernel mailing list