mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-28 11:18:45 +07:00
0b445549ea
In soft (no-reboot) mode, the driver self-pings watchdog upon expiration of an interrupt. However the interrupt itself was not cleared thus on first hit, the system enters infinite interrupt handling loop. On Odroid U3 (Exynos4412), when booted with s3c2410_wdt.soft_noboot=1 argument the console is flooded: # killall -9 watchdog [ 60.523760] s3c2410-wdt 10060000.watchdog: watchdog timer expired (irq) [ 60.536744] s3c2410-wdt 10060000.watchdog: watchdog timer expired (irq) Fix this by writing something to the WTCLRINT register to clear the interrupt. The register WTCLRINT however appeared in S3C6410 so a new watchdog quirk and flavor are needed. Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org> Reviewed-by: Guenter Roeck <linux@roeck-us.net> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
36 lines
1.1 KiB
Plaintext
36 lines
1.1 KiB
Plaintext
* Samsung's Watchdog Timer Controller
|
|
|
|
The Samsung's Watchdog controller is used for resuming system operation
|
|
after a preset amount of time during which the WDT reset event has not
|
|
occurred.
|
|
|
|
Required properties:
|
|
- compatible : should be one among the following
|
|
- "samsung,s3c2410-wdt" for S3C2410
|
|
- "samsung,s3c6410-wdt" for S3C6410, S5PV210 and Exynos4
|
|
- "samsung,exynos5250-wdt" for Exynos5250
|
|
- "samsung,exynos5420-wdt" for Exynos5420
|
|
- "samsung,exynos7-wdt" for Exynos7
|
|
|
|
- reg : base physical address of the controller and length of memory mapped
|
|
region.
|
|
- interrupts : interrupt number to the cpu.
|
|
- samsung,syscon-phandle : reference to syscon node (This property required only
|
|
in case of compatible being "samsung,exynos5250-wdt" or "samsung,exynos5420-wdt".
|
|
In case of Exynos5250 and 5420 this property points to syscon node holding the PMU
|
|
base address)
|
|
|
|
Optional properties:
|
|
- timeout-sec : contains the watchdog timeout in seconds.
|
|
|
|
Example:
|
|
|
|
watchdog@101D0000 {
|
|
compatible = "samsung,exynos5250-wdt";
|
|
reg = <0x101D0000 0x100>;
|
|
interrupts = <0 42 0>;
|
|
clocks = <&clock 336>;
|
|
clock-names = "watchdog";
|
|
samsung,syscon-phandle = <&pmu_syscon>;
|
|
};
|