Commit 2b9366b6 authored by Naveen Krishna Chatradhi's avatar Naveen Krishna Chatradhi Committed by Wim Van Sebroeck

watchdog: s3c2410_wdt: Add support for Watchdog device on Exynos7

Exynos7 SoC has a Watchdog for Atlas (A57) cores
This patch adds support for the Atlas watchdog.
Signed-off-by: default avatarNaveen Krishna Chatradhi <ch.naveen@samsung.com>
Reviewed-by: default avatarGuenter Roeck <linux@roeck-us.net>
Signed-off-by: default avatarWim Van Sebroeck <wim@iguana.be>
parent 7c92c3d5
...@@ -9,6 +9,7 @@ Required properties: ...@@ -9,6 +9,7 @@ Required properties:
(a) "samsung,s3c2410-wdt" for Exynos4 and previous SoCs (a) "samsung,s3c2410-wdt" for Exynos4 and previous SoCs
(b) "samsung,exynos5250-wdt" for Exynos5250 (b) "samsung,exynos5250-wdt" for Exynos5250
(c) "samsung,exynos5420-wdt" for Exynos5420 (c) "samsung,exynos5420-wdt" for Exynos5420
(c) "samsung,exynos7-wdt" for Exynos7
- reg : base physical address of the controller and length of memory mapped - reg : base physical address of the controller and length of memory mapped
region. region.
......
...@@ -155,6 +155,15 @@ static const struct s3c2410_wdt_variant drv_data_exynos5420 = { ...@@ -155,6 +155,15 @@ static const struct s3c2410_wdt_variant drv_data_exynos5420 = {
.quirks = QUIRK_HAS_PMU_CONFIG | QUIRK_HAS_RST_STAT, .quirks = QUIRK_HAS_PMU_CONFIG | QUIRK_HAS_RST_STAT,
}; };
static const struct s3c2410_wdt_variant drv_data_exynos7 = {
.disable_reg = EXYNOS5_WDT_DISABLE_REG_OFFSET,
.mask_reset_reg = EXYNOS5_WDT_MASK_RESET_REG_OFFSET,
.mask_bit = 0,
.rst_stat_reg = EXYNOS5_RST_STAT_REG_OFFSET,
.rst_stat_bit = 23, /* A57 WDTRESET */
.quirks = QUIRK_HAS_PMU_CONFIG | QUIRK_HAS_RST_STAT,
};
static const struct of_device_id s3c2410_wdt_match[] = { static const struct of_device_id s3c2410_wdt_match[] = {
{ .compatible = "samsung,s3c2410-wdt", { .compatible = "samsung,s3c2410-wdt",
.data = &drv_data_s3c2410 }, .data = &drv_data_s3c2410 },
...@@ -162,6 +171,8 @@ static const struct of_device_id s3c2410_wdt_match[] = { ...@@ -162,6 +171,8 @@ static const struct of_device_id s3c2410_wdt_match[] = {
.data = &drv_data_exynos5250 }, .data = &drv_data_exynos5250 },
{ .compatible = "samsung,exynos5420-wdt", { .compatible = "samsung,exynos5420-wdt",
.data = &drv_data_exynos5420 }, .data = &drv_data_exynos5420 },
{ .compatible = "samsung,exynos7-wdt",
.data = &drv_data_exynos7 },
{}, {},
}; };
MODULE_DEVICE_TABLE(of, s3c2410_wdt_match); MODULE_DEVICE_TABLE(of, s3c2410_wdt_match);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment