summaryrefslogtreecommitdiff
path: root/drivers/watchdog
AgeCommit message (Collapse)Author
2017-05-31dm: watchdog: add BCM6345 watchdog driverÁlvaro Fernández Rojas
This driver is a simplified version of linux/drivers/watchdog/bcm63xx_wdt.c Signed-off-by: Álvaro Fernández Rojas <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2017-05-15watchdog: Migrate OMAP_WATCHDOG to KconfigTom Rini
Move this entry to Kconfig. As it is a hardware watchdog, select HW_WATCHDOG. While we could default to enabling this for all platforms, it is currently only enabled by default on AM33XX, so keep that logic today. Cc: Roger Meier <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2017-05-09bcm2835_wdt: support for the BCM2835/2836 watchdogPaolo Pisati
Signed-off-by: Paolo Pisati <[email protected]>
2017-05-09dm: Update Simple Watchdog uclassMaxim Sloyko
- Remove "probe" function from sandbox wdt driver - Fix include order Fixes: 0753bc2d30d7 ("dm: Simple Watchdog uclass") Signed-off-by: Maxim Sloyko <[email protected]> [trini: Create as the delta between v1 (applied) and v2 (should have applied)]. Signed-off-by: Tom Rini <[email protected]>
2017-05-08aspeed: Watchdog Timer Driver[email protected]
This driver supports ast2500 and ast2400 SoCs. Only ast2500 supports reset_mask and thus the option of resettting individual peripherals using WDT. Signed-off-by: Maxim Sloyko <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2017-05-08dm: Simple Watchdog uclass[email protected]
This is a simple uclass for Watchdog Timers. It has four operations: start, restart, reset, stop. Drivers must implement start, restart and stop operations, while implementing reset is optional: It's default implementation expires watchdog timer in one clock tick. Signed-off-by: Maxim Sloyko <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2017-04-18drivers: remove Blackfin specific driversMasahiro Yamada
These drivers have no user since commit ea3310e8aafa ("Blackfin: Remove"). Signed-off-by: Masahiro Yamada <[email protected]> Reviewed-by: Simon Glass <[email protected]> Acked-by: Michal Simek <[email protected]> Acked-by: Jaehoon Chung <[email protected]>
2017-04-08ti: wdt: omap: Disable watchdog timer before performing initializationLukasz Majewski
The OMAP WDT IP block requires to be stopped before any write to its registers is performed. This problem has been thoroughly described in Linux kernel: "watchdog: omap: assert the counter being stopped before reprogramming: SHA1: 530c11d432727c697629ad5f9d00ee8e2864d453 Signed-off-by: Lukasz Majewski <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2017-03-17wdog: Add the watchdog driver for MX7ULP.Ye Li
This driver implements the HW WATCHDOG functions. Which needs to set CONFIG_HW_WATCHDOG to use them. This is disabled by default for mx7ulp. Use watchdog for reset cpu. Implement this in the driver. Need to define CONFIG_ULP_WATCHDOG to build it. Signed-off-by: Peng Fan <[email protected]> Signed-off-by: Ye Li <[email protected]> Cc: Stefano Babic <[email protected]>
2016-10-04imx_watchdog: Do not assert WDOG_B on watchdog initRoss Parker
Currently the driver asserts WDOG_B by clearing WCR_WDA bit when enabling the watchdog. Do not clear WCR_WDA. Signed-off-by: Ross Parker <[email protected]> Cc: Stefano Babic <[email protected]>
2016-07-19imx_watchdog: add weak attribute to reset_cpu functionStefan Agner
This allows to overwrite reset_cpu function in case a board level reset is preferred (e.g. through PMIC). Signed-off-by: Stefan Agner <[email protected]>
2016-01-07imx_watchdog: always set minimal timeout in reset_cpuAndrey Skvortsov
The problem is that timeout bits in WCR register were leaved unchanged. So previously set timeout value was applied and therefore 'reset' command takes any value up to two minutes, depending on previous watchdog settings, instead of minimal 0.5 seconds. Signed-off-by: Andrey Skvortsov <[email protected]>
2015-10-12ls102xa: Fix reset hangFabio Estevam
Since commit 623d96e89aca6("imx: wdog: correct wcr register settings") issuing a 'reset' command causes the system to hang. Unlike i.MX and Vybrid, the watchdog controller on LS102x is big-endian. This means that the watchdog on LS1021 has been working by accident as it does not use the big-endian accessors in drivers/watchdog/imx_watchdog.c. Commit 623d96e89aca6("imx: wdog: correct wcr register settings") only revelead the endianness problem on LS102x. In order to fix the reset hang, introduce a reset_cpu() implementation that is specific for ls102x, which accesses the watchdog WCR register in big-endian format. All that is required to reset LS102x is to clear the SRS bit. This approach is a temporary workaround to avoid a regression for LS102x in the 2015.10 release. The proper fix is to make the watchdog driver endian-aware, so that it can work for i.MX, Vybrid and LS102x. Reported-by: Sinan Akman <[email protected]> Tested-by: Sinan Akman <[email protected]> Reviewed-by: Wolfgang Denk <[email protected]> Signed-off-by: Fabio Estevam <[email protected]>
2015-10-12imx_watchdog: Add a header file for watchdog registersFabio Estevam
Create fsl_wdog.h to store the watchdog registers and bit fields. This can be useful when accesses to the watchdog block are made from other parts, such as arch/arm/ cpu code. Signed-off-by: Fabio Estevam <[email protected]>
2015-09-20imx: wdog: correct wcr register settingsPeng Fan
We should not simple use "writew(WCR_WDE, &wdog->wcr)" to set wcr, since this will override bits set before reset_cpu. Use clrsetbits_le16 instead of writew to fix this issue. Signed-off-by: Peng Fan <[email protected]> Cc: Stefano Babic <[email protected]> Cc: Fabio Estevam <[email protected]> Cc: Sebastian Siewior <[email protected]> Tested-by: Fabio Estevam <[email protected]>
2015-09-13imx: imx7d: add imx-common cpu support for imx7dAdrian Alonso
Add imx-common cpu support for imx7d SoC - Update reset_cause for imx7d - Enable watchdog driver built for imx7d Signed-off-by: Adrian Alonso <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2015-03-25watchdog/imx_watchdog: do not set WCR_WDWSebastian Siewior
with WCR_WDW set, the watchdog won't trigger if we bootet linux and idle around while the watchdog is not triggered. It seems the timer makes progress very slowly if at all. I managed to remain 20minutes alive while the timeout was set to 60secs. It reboots within 60secs if I start a busyloop in userland (something like "while (1) { }"). While I don't see a reason why the WDT should not be running while the CPU is in idle, I'm dropping this bit. Signed-off-by: Sebastian Andrzej Siewior <[email protected]> Acked-by: Stefano Babic <[email protected]>
2015-02-24ARM: remove tnetv107x board supportMasahiro Yamada
This is still a non-generic board. Signed-off-by: Masahiro Yamada <[email protected]> Cc: Chan-Taek Park <[email protected]> Acked-by: Marek Vasut <[email protected]>
2015-02-07arm, at91, wdt: make timeout configurableHeiko Schocher
make the HW WDT timeout configurable through the define CONFIG_AT91_HW_WDT_TIMEOUT. Signed-off-by: Heiko Schocher <[email protected]>
2014-09-24kconfig: add blank Kconfig filesMasahiro Yamada
This would be useful to start moving various config options. Signed-off-by: Masahiro Yamada <[email protected]> Acked-by: Simon Glass <[email protected]> Tested-by: Simon Glass <[email protected]>
2014-09-08arm: ls102xa: Add Freescale LS102xA SoC supportWang Huan
The QorIQ LS1 family is built on Layerscape architecture, the industry's first software-aware, core-agnostic networking architecture to offer unprecedented efficiency and scale. Freescale LS102xA is a set of SoCs combines two ARM Cortex-A7 cores that have been optimized for high reliability and pack the highest level of integration available for sub-3 W embedded communications processors with Layerscape architecture and with a comprehensive enablement model focused on ease of programmability. Signed-off-by: Alison Wang <[email protected]> Signed-off-by: Jason Jin <[email protected]> Signed-off-by: Jingchang Lu <[email protected]> Signed-off-by: Prabhakar Kushwaha <[email protected]>
2014-07-07blackfin: Fix warning about undefined functionVasili Galka
get_sclk() was not defined in bfin_wdt.c, include the corresponding header. Cc: Sonic Zhang <[email protected]> Signed-off-by: Vasili Galka <[email protected]>
2014-07-05watchdog/denali: Adding DesignWare watchdog driver supportChin Liang See
To add the DesignWare watchdog driver support. It required information such as register base address and clock info from configuration header file within include/configs folder. Signed-off-by: Chin Liang See <[email protected]> Cc: Anatolij Gustschin <[email protected]> Cc: Albert Aribaud <[email protected]> Cc: Heiko Schocher <[email protected]> Cc: Tom Rini <[email protected]>
2013-11-09Merge branch 'iu-boot/master' into 'u-boot-arm/master'Albert ARIBAUD
Conflicts: arch/arm/cpu/arm926ejs/mxs/Makefile board/compulab/cm_t35/Makefile board/corscience/tricorder/Makefile board/ppcag/bg0900/Makefile drivers/bootcount/Makefile include/configs/omap4_common.h include/configs/pdnb3.h Makefile conflicts are due to additions/removals of object files on the ARM branch vs KBuild introduction on the main branch. Resolution consists in adjusting the list of object files in the main branch version. This also applies to two files which are not listed as conflicting but had to be modified: board/compulab/common/Makefile board/udoo/Makefile include/configs/omap4_common.h conflicts are due to the OMAP4 conversion to ti_armv7_common.h on the ARM side, and CONFIG_SYS_HZ removal on the main side. Resolution is to convert as this icludes removal of CONFIG_SYS_HZ. include/configs/pdnb3.h is due to a removal on ARM side. Trivial resolution is to remove the file. Note: 'git show' will also list two files just because they are new: include/configs/am335x_igep0033.h include/configs/omap3_igep00x0.h
2013-10-31drivers: convert makefiles to Kbuild styleMasahiro Yamada
Signed-off-by: Masahiro Yamada <[email protected]>
2013-10-31imx_watchdog: do not soft-reset while watchdog initAnatolij Gustschin
Currently the driver clears WCR_SRS bit when enabling the watchdog and this causes a software reset. Do not clear WCR_SRS. Signed-off-by: Anatolij Gustschin <[email protected]>
2013-10-16microblaze: Fix watchdog initializationMichal Simek
The patch: "blackfin: Move blackfin watchdog driver out of the blackfin arch folder." (sha1: e9a389a18477c1c57a0b30e9ea8f4d38c6e26e63) changed hw_watchdog_init() prototype which didn't match with Microblaze one. This patch fixes the driver and Microblaze initialization. Signed-off-by: Michal Simek <[email protected]>
2013-10-14Coding Style cleanup: remove trailing white spaceWolfgang Denk
Signed-off-by: Wolfgang Denk <[email protected]>
2013-08-28arm, am335x: add watchdog supportHeiko Schocher
Add TI OMAP 16xx & 24xx/34xx 32KHz (non-secure) watchdog support. Signed-off-by: Heiko Schocher <[email protected]> Reviewed-by: Tom Rini <[email protected]> Cc: Albert Aribaud <[email protected]>
2013-07-24Add GPL-2.0+ SPDX-License-Identifier to source filesWolfgang Denk
Signed-off-by: Wolfgang Denk <[email protected]> [trini: Fixup common/cmd_io.c] Signed-off-by: Tom Rini <[email protected]>
2013-06-08Merge branch 'u-boot-imx/master' into 'u-boot-arm/master'Albert ARIBAUD
Conflicts: drivers/serial/Makefile
2013-06-03arm: vf610: Add watchdog support for Vybrid VF610Alison Wang
This patch adds watchdog support for Vybrid VF610 platform. Signed-off-by: Alison Wang <[email protected]>
2013-05-13blackfin: Move blackfin watchdog driver out of the blackfin arch folder.Sonic Zhang
- Enable hw_watchdog_init() in watchdog.h if CONFIG_HW_WATCHDOG is defined. - Move blackfin hw watchdog driver to the generic driver folder. - Call hw_watchdog_init() from blackfin board init code. - Reuse macro CONFIG_WATCHDOG_TIMEOUT_MSECS - Update README.watchdog accordingly Signed-off-by: Sonic Zhang <[email protected]>
2013-04-30watchdog: Add support for Xilinx Microblaze watchdogMichal Simek
Watchdog can be used on Microblaze, PPC and Zynq hw designs. Signed-off-by: Michal Simek <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2013-01-13mx31/mx35/mx51/mx53/mx6: add watchdogTroy Kisky
Use a common watchdog driver for all these cpus. Signed-off-by: Troy Kisky <[email protected]> Acked-by: Stefano Babic <[email protected]>
2012-11-15dm: wdt: Move s5p watchdog timer to drivers/watchdog/Marek Vasut
Signed-off-by: Marek Vasut <[email protected]> Cc: David Müller <[email protected]> Cc: Wolfgang Denk <[email protected]> Cc: Albert Aribaud <[email protected]> Cc: U-Boot DM <[email protected]> Signed-off-by: Minkyu Kang <[email protected]>
2012-10-18dm: wdt: arm: Move tnetv107x into drivers/watchdog/Marek Vasut
Signed-off-by: Marek Vasut <[email protected]> Cc: Oliver Brown <[email protected]> Cc: Wolfgang Denk <[email protected]> Cc: Albert Aribaud <[email protected]> Cc: U-Boot DM <[email protected]>
2011-05-18AT91: fix at91sam_wdt.c to reworked header filesReinhard Meyer
Signed-off-by: Reinhard Meyer <[email protected]>
2011-05-18AT91: fix related at91 driver filesReinhard Meyer
Signed-off-by: Reinhard Meyer <[email protected]>
2011-04-12ftwdt010_wdt: move header to include/faraday and enhanceMacpaul Lin
1. Move header to include/faraday 2. Fix include path in ftwdt010_wdt.c 3. Fix function prototype and declaration to - ftwdt010_wdt_settimeout - ftwdt010_wdt_reset - ftwdt010_wdt_disable 4. Add "#if definde (CONFIG_HW_WATCHDOG)" let user have flexibilty to choose which better to his product. Signed-off-by: Macpaul Lin <[email protected]>
2011-04-11ftwdt010_wdt: support faraday ftwdt010 watchdogMacpaul Lin
Faraday ftwdt010 watchdog is an architecture independant watchdog. It is usually used in SoC chip design. Signed-off-by: Macpaul Lin <[email protected]> Signed-off-by: Wolfgang Denk <[email protected]>
2010-11-17Switch from archive libraries to partial linkingSebastien Carlier
Before this commit, weak symbols were not overridden by non-weak symbols found in archive libraries when linking with recent versions of binutils. As stated in the System V ABI, "the link editor does not extract archive members to resolve undefined weak symbols". This commit changes all Makefiles to use partial linking (ld -r) instead of creating library archives, which forces all symbols to participate in linking, allowing non-weak symbols to override weak symbols as intended. This approach is also used by Linux, from which the gmake function cmd_link_o_target (defined in config.mk and used in all Makefiles) is inspired. The name of each former library archive is preserved except for extensions which change from ".a" to ".o". This commit updates references accordingly where needed, in particular in some linker scripts. This commit reveals board configurations that exclude some features but include source files that depend these disabled features in the build, resulting in undefined symbols. Known such cases include: - disabling CMD_NET but not CMD_NFS; - enabling CONFIG_OF_LIBFDT but not CONFIG_QE. Signed-off-by: Sebastien Carlier <[email protected]>
2010-04-03Convert at91 watchdog driver to new SoC accessAchim Ehrlich
This converts the at91 watchdog driver to new c structure type to access registers of the SoC Signed-off-by: Achim Ehrlich <[email protected]>
2009-04-04at91sam9: add watchdog supportJean-Christophe PLAGNIOL-VILLARD
Signed-off-by: Nicolas Ferre <[email protected]> Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <[email protected]>