Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ARM: 7003/1: vexpress: Add clock definition for the SP805.

It seems that an entry for the SP805 watchdog in the table of clocks was
missing. This results in the sp805_wdt driver rejecting the device with
the following errors:

sp805-wdt mb:wdt: Clock not found
sp805-wdt mb:wdt: Probe Failed!!!
sp805-wdt: probe of mb:wdt failed with error -2

While not obviously stated in the hardware docs, the onboard SP810's
"REFCLK" is connected to a 32.768KHz crystal, and this drives the
watchdog. Add a struct clk and corresponding lookup entry for it.

Signed-off-by: Nick Bowler <nbowler@elliptictech.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>

authored by

Nick Bowler and committed by
Russell King
0ebb962e 0d6cfa3a

+7
+7
arch/arm/mach-vexpress/v2m.c
··· 318 318 .rate = 1000000, 319 319 }; 320 320 321 + static struct clk v2m_ref_clk = { 322 + .rate = 32768, 323 + }; 324 + 321 325 static struct clk dummy_apb_pclk; 322 326 323 327 static struct clk_lookup v2m_lookups[] = { ··· 352 348 }, { /* CLCD */ 353 349 .dev_id = "mb:clcd", 354 350 .clk = &osc1_clk, 351 + }, { /* SP805 WDT */ 352 + .dev_id = "mb:wdt", 353 + .clk = &v2m_ref_clk, 355 354 }, { /* SP804 timers */ 356 355 .dev_id = "sp804", 357 356 .con_id = "v2m-timer0",