linux/drivers/watchdog
Matti Vaittinen 09dad69757 watchdog: ROHM BD96801 PMIC WDG driver
Introduce driver for WDG block on ROHM BD96801 scalable PMIC.

This driver only supports watchdog with I2C feeding and delayed
response detection. Whether the watchdog toggles PRSTB pin or
just causes an interrupt can be configured via device-tree.

The BD96801 PMIC HW supports also window watchdog (too early
feeding detection) and Q&A mode. These are not supported by
this driver.

Signed-off-by: Matti Vaittinen <mazziesaccount@gmail.com>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Link: https://lore.kernel.org/r/bb3a49d606e793a61b0c033170ff2a9f30f3c2a5.1719473802.git.mazziesaccount@gmail.com
Signed-off-by: Lee Jones <lee@kernel.org>
2024-06-27 09:24:45 +01:00
..
acquirewdt.c watchdog: acquirewdt: Convert to platform remove callback returning void 2023-04-22 12:53:40 +02:00
advantech_ec_wdt.c watchdog: Add Advantech EC watchdog driver 2022-11-19 15:30:37 +01:00
advantechwdt.c watchdog: advantechwdt: Convert to platform remove callback returning void 2023-04-22 12:53:40 +02:00
alim1535_wdt.c watchdog: Use fallthrough pseudo-keyword 2020-08-05 18:42:53 +02:00
alim7101_wdt.c watchdog: Use fallthrough pseudo-keyword 2020-08-05 18:42:53 +02:00
apple_wdt.c watchdog: apple: Deactivate on suspend 2023-10-29 19:45:10 +01:00
arm_smc_wdt.c watchdog: Add new arm_smc_wdt watchdog driver 2020-05-25 08:55:46 +02:00
armada_37xx_wdt.c watchdog: Explicitly include correct DT includes 2023-08-13 14:29:49 +02:00
asm9260_wdt.c
aspeed_wdt.c watchdog: aspeed: Add support for aspeed,reset-mask DT property 2023-10-29 19:45:11 +01:00
at91rm9200_wdt.c watchdog: Explicitly include correct DT includes 2023-08-13 14:29:49 +02:00
at91sam9_wdt.c watchdog: at91sam9_wdt: Convert to platform remove callback returning void 2023-12-17 16:14:19 +01:00
at91sam9_wdt.h
ath79_wdt.c watchdog: ath79_wdt: Use the devm_clk_get_enabled() helper function 2023-10-11 18:34:10 +02:00
bcm47xx_wdt.c watchdog: bcm47xx: Simplify using devm_watchdog_register_device() 2023-04-22 12:53:54 +02:00
bcm2835_wdt.c watchdog: bcm2835_wdt: Fix WDIOC_SETTIMEOUT handling 2023-12-17 16:14:22 +01:00
bcm7038_wdt.c watchdog: bcm7038: Use devm_clk_get_enabled() helper 2023-02-12 15:32:51 +01:00
bcm_kona_wdt.c watchdog: bcm_kona: Convert to platform remove callback returning void 2023-04-22 12:53:43 +02:00
bd9576_wdt.c watchdog: bd9576: Drop "always-running" property 2024-05-04 12:50:41 +02:00
bd96801_wdt.c watchdog: ROHM BD96801 PMIC WDG driver 2024-06-27 09:24:45 +01:00
booke_wdt.c watchdog: booke_wdt: Replace PPC_FSL_BOOK3E by PPC_E500 2022-09-26 23:00:13 +10:00
cadence_wdt.c watchdog: cadence: Use devm_clk_get_enabled() helper 2023-02-12 15:32:49 +01:00
cpu5wdt.c watchdog: cpu5wdt.c: Fix use-after-free bug caused by cpu5wdt_trigger 2024-05-04 12:50:40 +02:00
cpwd.c watchdog: Explicitly include correct DT includes 2023-08-13 14:29:49 +02:00
cros_ec_wdt.c watchdog: Add ChromeOS EC-based watchdog driver 2024-02-01 11:49:30 +00:00
da9052_wdt.c
da9055_wdt.c
da9062_wdt.c watchdog: da9062: da9063: use unlocked xfer function in restart 2023-02-18 15:11:30 +01:00
da9063_wdt.c watchdog: da9062: da9063: use unlocked xfer function in restart 2023-02-18 15:11:30 +01:00
davinci_wdt.c watchdog: davinci: Use devm_clk_get_enabled() helper 2023-02-12 15:32:50 +01:00
db8500_wdt.c watchdog: at91rm9200: Remove #ifdef guards for PM related functions 2022-11-19 15:30:38 +01:00
diag288_wdt.c watchdog: diag288_wdt: unify lpar and zvm diag288 helpers 2023-02-06 15:14:10 +01:00
digicolor_wdt.c
dw_wdt.c watchdog: dw_wdt: Simplify clk management 2023-04-29 08:08:41 +02:00
ebc-c384_wdt.c
ep93xx_wdt.c watchdog: Convert GPL 2.0 notice to SPDX identifier 2023-06-26 14:30:04 +02:00
eurotechwdt.c watchdog: eurotechwdt: Remove redundant word in comments 2022-10-02 12:55:38 +02:00
exar_wdt.c drivers: watchdog: exar_wdt.c fix use after free 2022-10-19 19:49:47 +02:00
f71808e_wdt.c watchdog: f71808e_wdt: Add check for platform_driver_register 2022-07-23 14:18:46 +02:00
ftwdt010_wdt.c watchdog: Explicitly include correct DT includes 2023-08-13 14:29:49 +02:00
gef_wdt.c watchdog: Explicitly include correct DT includes 2023-08-13 14:29:49 +02:00
geodewdt.c watchdog: geodewdt: Convert to platform remove callback returning void 2023-04-22 12:53:44 +02:00
gpio_wdt.c watchdog: gpio_wdt: Make use of device properties 2023-10-29 19:45:05 +01:00
gxp-wdt.c watchdog: gxp: Add missing MODULE_LICENSE 2022-06-09 12:20:34 +02:00
hpwdt.c watchdog/hpwdt: Support Suspend and Resume 2024-03-03 14:17:30 +01:00
i6300esb.c
ib700wdt.c watchdog: ib700wdt: Convert to platform remove callback returning void 2023-04-22 12:53:45 +02:00
ibmasr.c watchdog: ibmasr: Replace GPL license notice with SPDX identifier 2023-06-26 14:30:05 +02:00
ie6xx_wdt.c watchdog: ie6xx: Convert to platform remove callback returning void 2023-04-22 12:53:46 +02:00
imgpdc_wdt.c watchdog: imgpdc: Use devm_clk_get_enabled() helper 2023-02-12 15:32:48 +01:00
imx2_wdt.c watchdog: imx2_wdt: Improve dev_crit() message 2023-08-25 16:19:13 +02:00
imx7ulp_wdt.c wdog: imx7ulp: Enable wdog int_en bit for watchdog any reset 2023-10-29 19:45:08 +01:00
imx_sc_wdt.c watchdog: imx_sc_wdt: continue if the wdog already enabled 2023-10-29 19:45:07 +01:00
indydog.c
intel-mid_wdt.c watchdog: intel-mid_wdt: Get platform data via dev_get_platdata() 2024-03-10 11:14:46 +01:00
it87_wdt.c watchdog: Add kernel-doc for wdt_set_timeout() 2024-03-03 14:17:27 +01:00
it8712f_wdt.c watchdog: it8712f_wdt: remove definition of DEBUG 2021-02-07 14:41:18 +01:00
iTCO_vendor_support.c
iTCO_vendor.h
iTCO_wdt.c watchdog: iTCO_wdt: Report firmware_version 2023-02-18 15:11:31 +01:00
ixp4xx_wdt.c watchdog: ixp4xx: Make sure restart always works 2023-10-29 19:45:04 +01:00
jz4740_wdt.c watchdog: jz4740: Fix return value check in jz4740_wdt_probe() 2021-06-21 08:49:11 +02:00
Kconfig watchdog: ROHM BD96801 PMIC WDG driver 2024-06-27 09:24:45 +01:00
keembay_wdt.c watchdog: keembay: Typo corrections and other blank operations 2021-06-21 08:48:57 +02:00
kempld_wdt.c watchdog: kempld: Remove #ifdef guards for PM related functions 2022-11-19 15:30:39 +01:00
lantiq_wdt.c watchdog: Explicitly include correct DT includes 2023-08-13 14:29:49 +02:00
lenovo_se10_wdt.c watchdog: lenovo_se10_wdt: Watchdog driver for Lenovo SE10 platform 2024-05-04 12:50:40 +02:00
loongson1_wdt.c watchdog: Enable COMPILE_TEST for more drivers 2023-08-13 14:29:51 +02:00
lpc18xx_wdt.c watchdog: lpc18xx: Convert to platform remove callback returning void 2023-04-22 12:53:46 +02:00
m54xx_wdt.c watchdog: Convert GPL 2.0 notice to SPDX identifier 2023-06-26 14:30:04 +02:00
machzwd.c watchdog: Fix fall-through warnings for Clang 2021-05-17 18:56:23 -05:00
Makefile watchdog: ROHM BD96801 PMIC WDG driver 2024-06-27 09:24:45 +01:00
marvell_gti_wdt.c drivers: watchdog: marvell_gti: Program the max_hw_heartbeat_ms 2023-10-29 19:45:08 +01:00
max63xx_wdt.c watchdog: Convert GPL 2.0 notice to SPDX identifier 2023-06-26 14:30:04 +02:00
max77620_wdt.c watchdog: max77620: update Luca Ceresoli's e-mail address 2022-07-23 14:21:23 +02:00
mei_wdt.c mei: fix kdoc in the driver 2021-06-22 12:40:31 +02:00
mena21_wdt.c
menf21bmc_wdt.c
menz69_wdt.c watchdog: menz069_wdt: Remove redundant initialization owner in men_z069_driver 2023-08-13 14:29:48 +02:00
meson_gxbb_wdt.c watchdog: Add support for Amlogic-T7 SoCs 2023-08-25 16:19:15 +02:00
meson_wdt.c watchdog: Explicitly include correct DT includes 2023-08-13 14:29:49 +02:00
mixcomwd.c
mlx_wdt.c watchdog: mlx_wdt: fix all kernel-doc warnings 2023-12-24 10:44:40 +01:00
moxart_wdt.c watchdog: Convert GPL 2.0 notice to SPDX identifier 2023-06-26 14:30:04 +02:00
mpc8xxx_wdt.c watchdog: Explicitly include correct DT includes 2023-08-13 14:29:49 +02:00
msc313e_wdt.c watchdog: msc313e: Check if the WDT was running at boot 2022-01-05 10:38:51 +01:00
mt7621_wdt.c watchdog: mt7621-wdt: avoid ralink architecture dependent code 2023-03-02 06:51:29 +01:00
mtk_wdt.c watchdog: mediatek: mt7988: add wdt support 2023-12-17 16:14:23 +01:00
mtx-1_wdt.c watchdog: mtx-1: drop driver owner assignment 2024-05-04 12:50:41 +02:00
ni903x_wdt.c ACPI: make remove callback of ACPI driver void 2022-11-23 19:11:22 +01:00
nic7018_wdt.c watchdog: nic7018: Convert to platform remove callback returning void 2023-04-22 12:53:47 +02:00
npcm_wdt.c watchdog: npcm: Enable clock if provided 2022-10-02 12:55:41 +02:00
nv_tco.c watchdog: nv_tco: Convert to platform remove callback returning void 2023-04-22 12:53:47 +02:00
nv_tco.h watchdog: Replace HTTP links with HTTPS ones 2020-08-05 18:43:01 +02:00
octeon-wdt-main.c watchdog/wdt-main: Use cpumask_of() to avoid cpumask var on stack 2024-05-04 12:50:42 +02:00
octeon-wdt-nmi.S watchdog: Convert GPL 2.0 notice to SPDX identifier 2023-06-26 14:30:04 +02:00
of_xilinx_wdt.c watchdog: of_xilinx_wdt: Remove unnecessary clock disable call in the remove path 2023-10-11 18:53:33 +02:00
omap_wdt.c watchdog: omap: Convert to platform remove callback returning void 2023-04-22 12:53:48 +02:00
omap_wdt.h
orion_wdt.c watchdog: Convert GPL 2.0 notice to SPDX identifier 2023-06-26 14:30:04 +02:00
pc87413_wdt.c watchdog:Fix typo in comment 2022-07-23 14:21:28 +02:00
pcwd_pci.c watchdog: Use fallthrough pseudo-keyword 2020-08-05 18:42:53 +02:00
pcwd_usb.c watchdog: pcwd_usb: Fix attempting to access uninitialized memory 2023-02-18 15:11:39 +01:00
pcwd.c isa: Make the remove callback for isa drivers return void 2021-01-26 07:42:27 +01:00
pic32-dmt.c watchdog: Explicitly include correct DT includes 2023-08-13 14:29:49 +02:00
pic32-wdt.c watchdog: Explicitly include correct DT includes 2023-08-13 14:29:49 +02:00
pika_wdt.c watchdog: Explicitly include correct DT includes 2023-08-13 14:29:49 +02:00
pm8916_wdt.c watchdog: pm8916_wdt: Remove redundant of_match_ptr() 2023-08-19 17:36:18 +02:00
pnx4008_wdt.c watchdog: pnx4008: Use devm_clk_get_enabled() helper 2023-02-12 15:32:46 +01:00
pretimeout_noop.c
pretimeout_panic.c
pseries-wdt.c watchdog/pseries-wdt: initial support for H_WATCHDOG-based watchdog timers 2022-07-20 21:57:39 +10:00
qcom-wdt.c watchdog: qcom: fine tune the max timeout value calculation 2024-03-03 14:17:28 +01:00
rave-sp-wdt.c watchdog: Explicitly include correct DT includes 2023-08-13 14:29:49 +02:00
rc32434_wdt.c watchdog: rc32434: Convert to platform remove callback returning void 2023-04-22 12:53:48 +02:00
rdc321x_wdt.c watchdog: rdc321x: Convert to platform remove callback returning void 2023-04-22 12:53:49 +02:00
realtek_otto_wdt.c watchdog: realtek_otto: Use devm_clk_get_enabled() helper 2023-02-12 15:32:46 +01:00
renesas_wdt.c watchdog: renesas: Convert to platform remove callback returning void 2023-04-22 12:53:50 +02:00
retu_wdt.c watchdog: retu_wdt: Clean-up by using managed work init 2021-03-23 15:22:40 +01:00
riowd.c watchdog: Explicitly include correct DT includes 2023-08-13 14:29:49 +02:00
rn5t618_wdt.c watchdog: rn5t618: Simplify using devm_watchdog_register_device() 2023-04-22 12:53:54 +02:00
rt2880_wdt.c watchdog: rt2880-wdt: prefer unsigned int over unsigned 2023-04-22 12:53:57 +02:00
rtd119x_wdt.c watchdog: Convert GPL 2.0 notice to SPDX identifier 2023-06-26 14:30:04 +02:00
rti_wdt.c watchdog: rti_wdt: Set min_hw_heartbeat_ms to accommodate a safety margin 2024-05-04 12:50:43 +02:00
rza_wdt.c watchdog: Explicitly include correct DT includes 2023-08-13 14:29:49 +02:00
rzg2l_wdt.c watchdog: Explicitly include correct DT includes 2023-08-13 14:29:49 +02:00
rzn1_wdt.c watchdog: rzn1: Use devm_clk_get_enabled() helper 2023-02-12 15:32:52 +01:00
s3c2410_wdt.c watchdog: s3c2410_wdt: use exynos_get_pmu_regmap_by_phandle() for PMU regs 2024-02-25 11:39:25 +01:00
sa1100_wdt.c watchdog: sa1100: Fix PTR_ERR_OR_ZERO() vs NULL check in sa1100dog_probe() 2024-05-04 12:50:43 +02:00
sama5d4_wdt.c watchdog: sama5d4: readout initial state 2023-08-19 17:36:20 +02:00
sb_wdog.c watchdog: Use fallthrough pseudo-keyword 2020-08-05 18:42:53 +02:00
sbc60xxwdt.c watchdog: Fix possible use-after-free in wdt_startup() 2021-06-21 08:48:59 +02:00
sbc7240_wdt.c watchdog: Use fallthrough pseudo-keyword 2020-08-05 18:42:53 +02:00
sbc8360.c
sbc_epx_c3.c
sbc_fitpc2_wdt.c watchdog: Convert GPL 2.0 notice to SPDX identifier 2023-06-26 14:30:04 +02:00
sbsa_gwdt.c sbsa_gwdt: Calculate timeout with 64-bit math 2023-10-29 19:45:05 +01:00
sc520_wdt.c watchdog: sc520_wdt: Fix possible use-after-free in wdt_turnoff() 2021-06-21 08:49:02 +02:00
sc1200wdt.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
sch311x_wdt.c watchdog: sch311x: Convert to platform remove callback returning void 2023-04-22 12:53:52 +02:00
scx200_wdt.c watchdog: scx200_wdt: Use fallthrough pseudo-keyword 2020-08-05 18:42:54 +02:00
shwdt.c watchdog: shwdt: Convert to platform remove callback returning void 2023-04-22 12:53:52 +02:00
simatic-ipc-wdt.c watchdog: simatic-ipc-wdt: make IO region access of one model muxed 2023-07-14 12:45:01 +02:00
sl28cpld_wdt.c watchdog: sl28cpld_wdt: Constify static struct watchdog_ops 2021-08-22 10:28:09 +02:00
smsc37b787_wdt.c watchdog: Use fallthrough pseudo-keyword 2020-08-05 18:42:53 +02:00
softdog.c watchdog: softdog: Add options 'soft_reboot_cmd' and 'soft_active_on_boot' 2020-08-05 18:43:02 +02:00
sp805_wdt.c watchdog: sp805_wdt: deassert the reset if available 2024-03-03 14:17:30 +01:00
sp5100_tco.c watchdog: sp5100_tco: support Hygon FCH/SCH (Server Controller Hub) 2023-06-26 14:30:07 +02:00
sp5100_tco.h Watchdog: sp5100_tco: Enable Family 17h+ CPUs 2022-03-27 17:04:33 +02:00
sprd_wdt.c watchdog: sprd: change to use usleep_range() instead of busy loop 2020-12-13 16:17:39 +01:00
st_lpc_wdt.c watchdog: st_lpc: Use device_get_match_data() 2023-10-29 19:45:06 +01:00
starfive-wdt.c watchdog: starfive: check watchdog status before enabling in system resume 2024-03-03 14:17:29 +01:00
stm32_iwdg.c watchdog: stm32_iwdg: initialize default timeout 2024-03-03 14:17:31 +01:00
stmp3xxx_rtc_wdt.c watchdog: stmp3xxx_rtc: Convert to platform remove callback returning void 2023-04-22 12:53:53 +02:00
stpmic1_wdt.c
sun4v_wdt.c
sunplus_wdt.c watchdog: sunplus: Use the devm_clk_get_enabled() helper function 2023-10-11 18:34:10 +02:00
sunxi_wdt.c watchdog: Explicitly include correct DT includes 2023-08-13 14:29:49 +02:00
tegra_wdt.c watchdog: tegra_wdt: Remove #ifdef guards for PM related functions 2022-07-23 14:21:27 +02:00
tqmx86_wdt.c watchdog: tqmx86: Constify static struct watchdog_ops 2021-08-22 10:28:10 +02:00
ts72xx_wdt.c watchdog: Convert GPL 2.0 notice to SPDX identifier 2023-06-26 14:30:04 +02:00
ts4800_wdt.c watchdog: Convert GPL 2.0 notice to SPDX identifier 2023-06-26 14:30:04 +02:00
twl4030_wdt.c watchdog: twl4030: Remove #ifdef guards for PM related functions 2022-11-19 15:30:38 +01:00
txx9wdt.c watchdog: txx9wdt: Convert to platform remove callback returning void 2023-12-17 16:14:20 +01:00
uniphier_wdt.c
via_wdt.c
visconti_wdt.c watchdog: visconti: Use devm_clk_get_enabled() helper 2023-02-12 15:32:53 +01:00
w83627hf_wdt.c watchdog: w83627hf_wdt: add bootstatus support 2022-10-02 12:55:34 +02:00
w83877f_wdt.c watchdog: Fix possible use-after-free by calling del_timer_sync() 2021-06-21 08:49:03 +02:00
w83977f_wdt.c watchdog: w83977f_wdt: Fix comment typo 2022-10-02 12:55:39 +02:00
wafer5823wdt.c watchdog: Use fallthrough pseudo-keyword 2020-08-05 18:42:53 +02:00
watchdog_core.c watchdog: core: Remove usage of the deprecated ida_simple_xx() API 2024-03-03 14:17:27 +01:00
watchdog_core.h watchdog: Add hrtimer-based pretimeout feature 2021-06-21 08:49:13 +02:00
watchdog_dev.c watchdog: set cdev owner before adding 2023-12-17 16:14:17 +01:00
watchdog_hrtimer_pretimeout.c watchdog: Add hrtimer-based pretimeout feature 2021-06-21 08:49:13 +02:00
watchdog_pretimeout.c watchdog: avoid usage of iterator after loop 2023-04-22 12:54:00 +02:00
watchdog_pretimeout.h
wd501p.h
wdat_wdt.c watchdog: wdat_wdt: Add timeout value as a param in ping method 2023-10-29 19:45:06 +01:00
wdrtas.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
wdt285.c ARM: footbridge: remove CATS 2023-01-10 23:10:27 +01:00
wdt977.c watchdog: Use fallthrough pseudo-keyword 2020-08-05 18:42:53 +02:00
wdt_pci.c watchdog: fix syntactic kernel-doc issues 2021-06-21 08:49:09 +02:00
wdt.c watchdog: fix syntactic kernel-doc issues 2021-06-21 08:49:09 +02:00
wm831x_wdt.c watchdog: wm831x_wdt: Remove GPIO handling 2020-03-18 11:15:24 +01:00
wm8350_wdt.c watchdog: wm8350: Simplify using devm_watchdog_register_device() 2023-04-22 12:53:55 +02:00
xen_wdt.c
xilinx_wwdt.c watchdog: xilinx_wwdt: Use div_u64() in xilinx_wwdt_start() 2023-08-19 17:36:18 +02:00
ziirave_wdt.c watchdog: ziirave_wdt: Switch i2c driver back to use .probe() 2023-06-26 14:30:05 +02:00