01 Apr, 2020
3 commits
-
Texas Instruments K3 SoCs contain an RTI (Real Time Interrupt) module
which can be used as a watchdog. This IP provides a support for
windowed watchdog mode, in which the watchdog must be petted within
a certain time window. If it is petted either too soon, or too late,
a watchdog error will be triggered.Signed-off-by: Tero Kristo
Reviewed-by: Guenter Roeck
Link: https://lore.kernel.org/r/20200312095808.19907-4-t-kristo@ti.com
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck -
The RAVE watchdog is not a full system watchdog, but is used to reset
ethernet switch when required. Change the name to better reflect this
usage.Signed-off-by: Lucas Stach
Reviewed-by: Guenter Roeck
Link: https://lore.kernel.org/r/20200313101138.25915-1-l.stach@pengutronix.de
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck -
If the heartbeat module param is not specified we would get an error
messagewatchdog: f1020300.watchdog: driver supplied timeout (4294967295) out of range
watchdog: f1020300.watchdog: falling back to default timeout (171)This is because we were initialising heartbeat to -1. By removing the
initialisation (thus letting the C run time initialise it to 0) we
silence the warning message and the default timeout is still used.Signed-off-by: Chris Packham
Reviewed-by: Guenter Roeck
Link: https://lore.kernel.org/r/20200313031312.1485-1-chris.packham@alliedtelesis.co.nz
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck
18 Mar, 2020
10 commits
-
Signed-off-by: Tomer Maimon
Link: https://lore.kernel.org/r/20200303100114.87786-4-tmaimon77@gmail.com
Reviewed-by: Guenter Roeck
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck -
Currently the watchdog core does not initialize the last_hw_keepalive
time during watchdog startup. This will cause the watchdog to be pinged
immediately if enough time has passed from the system boot-up time, and
some types of watchdogs like K3 RTI does not like this.To avoid the issue, setup the last_hw_keepalive time during watchdog
startup.Signed-off-by: Tero Kristo
Reviewed-by: Guenter Roeck
Link: https://lore.kernel.org/r/20200302200426.6492-3-t-kristo@ti.com
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck -
.remove callback implementation doesn' call clk_disable_unprepare() which
is buggy, actually, we can just use devm_watchdog_register_device() and
devm_add_action_or_reset() to handle all necessary operations for remove
action, then .remove callback can be dropped.Signed-off-by: Anson Huang
Reviewed-by: Guenter Roeck
Link: https://lore.kernel.org/r/1582512687-13312-1-git-send-email-Anson.Huang@nxp.com
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck -
Many watchdog drivers use watchdog_stop_on_reboot() helper in order
to stop the watchdog on system reboot. Unfortunately, this logic is
coded in driver's probe function and doesn't allows user to decide what
to do during shutdown/reboot.On the other side, Xen and Qemu watchdog drivers (xen_wdt and i6300esb)
may be configured to either send NMI or turn off/reboot VM as
the watchdog action. As the kernel may stuck at any state, sending NMIs
can't reliably reboot the VM.At Arista, we benefited from the following set-up: the emulated watchdogs
trigger VM reset and softdog is set to catch less severe conditions to
generate vmcore. Just before reboot watchdog's timeout is increased
to some good-enough value (3 mins). That keeps watchdog always running
and guarantees that VM doesn't stuck.Provide new stop_on_reboot module parameter to let user control
watchdog's reboot policy.Cc: Guenter Roeck
Cc: Wim Van Sebroeck
Cc: linux-watchdog@vger.kernel.org
Signed-off-by: Dmitry Safonov
Reviewed-by: Guenter Roeck
Link: https://lore.kernel.org/r/20200223114939.194754-1-dima@arista.com
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck -
An attempt to convert the driver to using GPIO descriptors
(see Link tag) was discouraged in favor of deleting the
handling of the update GPIO altogehter since there are
no in-tree users.This patch deletes the GPIO handling instead.
Cc: Richard Fitzgerald
Cc: Charles Keepax
Cc: Mark Brown
Link: https://lore.kernel.org/linux-watchdog/20200210102209.289379-1-linus.walleij@linaro.org/
Signed-off-by: Linus Walleij
Reviewed-by: Guenter Roeck
Acked-by: Charles Keepax
Link: https://lore.kernel.org/r/20200229115046.57781-1-linus.walleij@linaro.org
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck -
There is nothing in use from init.h, remove it.
Signed-off-by: Anson Huang
Link: https://lore.kernel.org/r/1582250430-8872-2-git-send-email-Anson.Huang@nxp.com
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck -
There is nothing in use from init.h/reboot.h, remove them.
Signed-off-by: Anson Huang
Reviewed-by: Guenter Roeck
Link: https://lore.kernel.org/r/1582250430-8872-1-git-send-email-Anson.Huang@nxp.com
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck -
The DT or ACPI tables should tell the driver what the irq flags are.
Given that this driver probes only on DT based platforms and those DT
platforms specify the irq flags we can safely drop the forced irq flag
setting here.Cc: Andy Gross
Cc: Bjorn Andersson
Cc: Sai Prakash Ranjan
Signed-off-by: Stephen Boyd
Reviewed-by: Bjorn Andersson
Reviewed-by: Guenter Roeck
Reviewed-by: Sai Prakash Ranjan
Link: https://lore.kernel.org/r/20200220002047.115000-1-swboyd@chromium.org
[groeck: Context conflict resolution]
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck -
Add suspend and resume pm operations.
Tested on dragonboard-410c.Signed-off-by: Loic Poulain
Reviewed-by: Guenter Roeck
Link: https://lore.kernel.org/r/1581435483-6796-1-git-send-email-loic.poulain@linaro.org
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck -
Some platform like ipq806x doesn't support pretimeout and define
some interrupts used by qcom,msm-timer. Change the driver to check
and use pretimeout only on qcom,kpss-wdt as it's the only platform
that actually supports it.Signed-off-by: Ansuel Smith
Reviewed-by: Guenter Roeck
Link: https://lore.kernel.org/r/20200204195648.23350-1-ansuelsmth@gmail.com
[groeck: Conflict resolution]
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck
10 Mar, 2020
2 commits
-
The iTCO_wdt driver only needs ICH_RES_IO_SMI I/O resource when either
turn_SMI_watchdog_clear_off module parameter is set to match ->iTCO_version
(or higher), and when legacy iTCO_vendorsupport is set. Modify the driver
so that ICH_RES_IO_SMI is optional if the two conditions are not met.Signed-off-by: Mika Westerberg
Reviewed-by: Guenter Roeck
Signed-off-by: Wolfram Sang -
In preparation for making ->smi_res optional the iTCO_wdt driver needs
to know whether vendorsupport is being set to non-zero. For this reason
export the variable.Signed-off-by: Mika Westerberg
Reviewed-by: Guenter Roeck
Signed-off-by: Wolfram Sang
29 Feb, 2020
1 commit
-
Pull ACPI fixes from Rafael Wysocki:
"Fix a couple of configuration issues in the ACPI watchdog (WDAT)
driver (Mika Westerberg) and make it possible to disable that driver
at boot time in case it still does not work as expected (Jean
Delvare)"* tag 'acpi-5.6-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
ACPI: watchdog: Set default timeout in probe
ACPI: watchdog: Fix gas->access_width usage
ACPICA: Introduce ACPI_ACCESS_BYTE_WIDTH() macro
ACPI: watchdog: Allow disabling WDAT at boot
17 Feb, 2020
4 commits
-
Since commit 057b52b4b3d58 ("watchdog: da9062: make restart handler atomic
safe"), the driver calls i2c functions directly. It now therefore depends
on I2C. This is a hard dependency which overrides COMPILE_TEST.Reported-by: kbuild test robot
Reported-by: Randy Dunlap
Fixes: 057b52b4b3d58 ("watchdog: da9062: make restart handler atomic safe")
Cc: Marco Felsch
Cc: Adam Thomson
Cc: Stefan Lengfeld
Reviewed-by: Marco Felsch
Acked-by: Randy Dunlap
Acked-by: Geert Uytterhoeven
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck -
This fixes commit f6c98b08381c ("watchdog: da9062: add power management
ops"). During discussion [1] we agreed that this should be configurable
because it is a device quirk if we can't use the hw watchdog auto
suspend function.[1] https://lore.kernel.org/linux-watchdog/20191128171931.22563-1-m.felsch@pengutronix.de/
Signed-off-by: Marco Felsch
Fixes: f6c98b08381c ("watchdog: da9062: add power management ops")
Reviewed-by: Guenter Roeck
Reviewed-by: Adam Thomson
Link: https://lore.kernel.org/r/20200207071518.5559-1-m.felsch@pengutronix.de
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck -
The da9062 hw has a minimum ping cool down phase of at least 200ms. The
driver takes that into account by setting the min_hw_heartbeat_ms to
300ms and the core guarantees that the hw limit is observed for the
ping() calls. But the core can't guarantee the required minimum ping
cool down phase if a stop() command is send immediately after the ping()
command. So it is not allowed to ping the watchdog within the stop()
command as the driver does. Remove the ping can be done without doubts
because the watchdog gets disabled anyway and a (re)start resets the
watchdog counter too.Signed-off-by: Marco Felsch
Reviewed-by: Guenter Roeck
Link: https://lore.kernel.org/r/20200120091729.16256-1-m.felsch@pengutronix.de
[groeck: Updated description]
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck -
Fix build error when CONFIG_RESET_CONTROLLER is not set by
selecting RESET_CONTROLLER.ld: drivers/watchdog/mtk_wdt.o: in function `mtk_wdt_probe':
mtk_wdt.c:(.text+0x3ec): undefined reference to `devm_reset_controller_register'Signed-off-by: Randy Dunlap
Fixes: c254e103082b74e ("watchdog: mtk_wdt: mt8183: Add reset controller")
Cc: Wim Van Sebroeck
Cc: Guenter Roeck
Cc: Matthias Brugger
Cc: linux-watchdog@vger.kernel.org
Reviewed-by: Guenter Roeck
Link: https://lore.kernel.org/r/77c1e557-4941-3806-2933-6c3583576390@infradead.org
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck
14 Feb, 2020
2 commits
-
If the BIOS default timeout for the watchdog is too small userspace may
not have enough time to configure new timeout after opening the device
before the system is already reset. For this reason program default
timeout of 30 seconds in the driver probe and allow userspace to change
this from command line or through module parameter (wdat_wdt.timeout).Reported-by: Jean Delvare
Signed-off-by: Mika Westerberg
Reviewed-by: Jean Delvare
Signed-off-by: Rafael J. Wysocki -
ACPI Generic Address Structure (GAS) access_width field is not in bytes
as the driver seems to expect in few places so fix this by using the
newly introduced macro ACPI_ACCESS_BYTE_WIDTH().Fixes: b1abf6fc4982 ("ACPI / watchdog: Fix off-by-one error at resource assignment")
Fixes: 058dfc767008 ("ACPI / watchdog: Add support for WDAT hardware watchdog")
Reported-by: Jean Delvare
Signed-off-by: Mika Westerberg
Reviewed-by: Jean Delvare
Cc: 4.16+ # 4.16+
Signed-off-by: Rafael J. Wysocki
08 Feb, 2020
1 commit
-
Pull watchdog updates from Wim Van Sebroeck:
- add IT8786 chipset ID
- addition of sam9x60 compatible watchdog
- da9062 improvements
- fix UAF in reboot notifier handling in watchdog core code
- other fixes and small improvements
* tag 'linux-watchdog-5.6-rc1' of git://www.linux-watchdog.org/linux-watchdog:
watchdog: da9062: make restart handler atomic safe
watchdog: mtk_wdt: mt2712: Add reset controller
watchdog: mtk_wdt: mt8183: Add reset controller
dt-bindings: mediatek: mt2712: Add #reset-cells
dt-bindings: mediatek: mt8183: Add #reset-cells
dt-bindings: watchdog: da9062: add suspend disable option
watchdog: it87_wdt: add IT8786 ID
watchdog: dw_wdt: ping watchdog to reset countdown before start
watchdog: fix UAF in reboot notifier handling in watchdog core code
watchdog: cadence: Skip printing pointer value
watchdog: qcom: Use platform_get_irq_optional() for bark irq
watchdog: da9062: add power management ops
watchdog: make DesignWare watchdog allow users to set bigger timeout value
drivers: watchdog: stm32_iwdg: set WDOG_HW_RUNNING at probe
watchdog: sama5d4_wdt: addition of sam9x60 compatible watchdog
28 Jan, 2020
1 commit
-
Pull ioremap updates from Christoph Hellwig:
"Remove the ioremap_nocache API (plus wrappers) that are always
identical to ioremap"* tag 'ioremap-5.6' of git://git.infradead.org/users/hch/ioremap:
remove ioremap_nocache and devm_ioremap_nocache
MIPS: define ioremap_nocache to ioremap
27 Jan, 2020
12 commits
-
The restart handler is executed during the shutdown phase which is
atomic/irq-less. The i2c framework supports atomic transfers since
commit 63b96983a5dd ("i2c: core: introduce callbacks for atomic
transfers") to address this use case. Using regmap within an atomic
context is allowed only if the regmap type is MMIO and the cache type
'flat' or no cache is used. Using the i2c_smbus_write_byte_data()
function can be done without additional tests because:
1) the DA9062 is an i2c-only device and
2) the i2c framework emulates the smbus protocol if the host adapter
does not support smbus_xfer by using the master_xfer.Signed-off-by: Marco Felsch
Reviewed-by: Guenter Roeck
Reviewed-by: Stefan Lengfeld
Tested-by: Stefan Lengfeld
Reviewed-by: Adam Thomson
Link: https://lore.kernel.org/r/20200115162307.7336-1-m.felsch@pengutronix.de
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck -
Add reset controller for 2712.
Besides watchdog, MTK toprgu module alsa provide sub-system (eg, audio,
camera, codec and connectivity) software reset functionality.Signed-off-by: yong.liang
Signed-off-by: Jiaxin Yu
Reviewed-by: Yingjoe Chen
Reviewed-by: Philipp Zabel
Acked-by: Matthias Brugger
Link: https://lore.kernel.org/r/20200115085828.27791-5-yong.liang@mediatek.com
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck -
Add reset controller API in watchdog driver.
Besides watchdog, MTK toprgu module alsa provide sub-system (eg, audio,
camera, codec and connectivity) software reset functionality.Signed-off-by: yong.liang
Signed-off-by: Jiaxin Yu
Reviewed-by: Yingjoe Chen
Reviewed-by: Philipp Zabel
Reviewed-by: Guenter Roeck
Acked-by: Matthias Brugger
Link: https://lore.kernel.org/r/20200115085828.27791-4-yong.liang@mediatek.com
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck -
IT8786 watchdog works as in IT872x
Tested on VECOW ECS-9000 board.
Signed-off-by: Vincent Prince
Reviewed-by: Guenter Roeck
Link: https://lore.kernel.org/r/20200123140544.25937-1-vincent.prince.fr@gmail.com
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck -
Currently on an rk3288 SoC when trying to use the watchdog the SoC will
instantly reset. This is due to the watchdog countdown counter being set
to its initial value of 0x0. Reset the watchdog counter before start in
order to correctly start the countdown timer from the right position.Signed-off-by: Jack Mitchell
Reviewed-by: Guenter Roeck
Link: https://lore.kernel.org/r/20200107155155.278521-1-ml@embed.me.uk
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck -
After the commit 44ea39420fc9 ("drivers/watchdog: make use of
devm_register_reboot_notifier()") the struct notifier_block reboot_nb in
the struct watchdog_device is removed from the reboot notifiers chain at
the time watchdog's chardev is closed. But at least in i6300esb.c case
reboot_nb is embedded in the struct esb_dev which can be freed on its
device removal and before the chardev is closed, thus UAF at reboot:[ 7.728581] esb_probe: esb_dev.watchdog_device ffff91316f91ab28
ts# uname -r note the address ^^^
5.5.0-rc5-ae6088-wdog
ts# ./openwdog0 &
[1] 696
ts# opened /dev/watchdog0, sleeping 10s...
ts# echo 1 > /sys/devices/pci0000\:00/0000\:00\:09.0/remove
[ 178.086079] devres:rel_nodes: dev ffff91317668a0b0 data ffff91316f91ab28
esb_dev.watchdog_device.reboot_nb memory is freed here ^^^
ts# ...woken up
[ 181.459010] devres:rel_nodes: dev ffff913171781000 data ffff913174a1dae8
[ 181.460195] devm_unreg_reboot_notifier: res ffff913174a1dae8 nb ffff91316f91ab78
attempt to use memory already freed ^^^
[ 181.461063] devm_unreg_reboot_notifier: nb->call 6b6b6b6b6b6b6b6b
[ 181.461243] devm_unreg_reboot_notifier: nb->next 6b6b6b6b6b6b6b6b
freed memory is filled with a slub poison ^^^
[1]+ Done ./openwdog0
ts# reboot
[ 229.921862] systemd-shutdown[1]: Rebooting.
[ 229.939265] notifier_call_chain: nb ffffffff9c6c2f20 nb->next ffffffff9c6d50c0
[ 229.943080] notifier_call_chain: nb ffffffff9c6d50c0 nb->next 6b6b6b6b6b6b6b6b
[ 229.946054] notifier_call_chain: nb 6b6b6b6b6b6b6b6b INVAL
[ 229.957584] general protection fault: 0000 [#1] SMP
[ 229.958770] CPU: 0 PID: 1 Comm: systemd-shutdow Not tainted 5.5.0-rc5-ae6088-wdog
[ 229.960224] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), ...
[ 229.963288] RIP: 0010:notifier_call_chain+0x66/0xd0
[ 229.969082] RSP: 0018:ffffb20dc0013d88 EFLAGS: 00010246
[ 229.970812] RAX: 000000000000002e RBX: 6b6b6b6b6b6b6b6b RCX: 00000000000008b3
[ 229.972929] RDX: 0000000000000000 RSI: 0000000000000096 RDI: ffffffff9ccc46ac
[ 229.975028] RBP: 0000000000000001 R08: 0000000000000000 R09: 00000000000008b3
[ 229.977039] R10: 0000000000000001 R11: ffffffff9c26c740 R12: 0000000000000000
[ 229.979155] R13: 6b6b6b6b6b6b6b6b R14: 0000000000000000 R15: 00000000fffffffa
... slub_debug=FZP poison ^^^
[ 229.989089] Call Trace:
[ 229.990157] blocking_notifier_call_chain+0x43/0x59
[ 229.991401] kernel_restart_prepare+0x14/0x30
[ 229.992607] kernel_restart+0x9/0x30
[ 229.993800] __do_sys_reboot+0x1d2/0x210
[ 230.000149] do_syscall_64+0x3d/0x130
[ 230.001277] entry_SYSCALL_64_after_hwframe+0x44/0xa9
[ 230.002639] RIP: 0033:0x7f5461bdd177
[ 230.016402] Modules linked in: i6300esb
[ 230.050261] Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000bFix the crash by reverting 44ea39420fc9 so unregister_reboot_notifier()
is called when watchdog device is removed. This also makes handling of
the reboot notifier unified with the handling of the restart handler,
which is freed with unregister_restart_handler() in the same place.Fixes: 44ea39420fc9 ("drivers/watchdog: make use of devm_register_reboot_notifier()")
Cc: stable@vger.kernel.org # v4.15+
Signed-off-by: Vladis Dronov
Reviewed-by: Guenter Roeck
Link: https://lore.kernel.org/r/20200108125347.6067-1-vdronov@redhat.com
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck -
"%p" is not printing the pointer value.
In driver, printing pointer value is not useful so avoiding print.Signed-off-by: Srinivas Neeli
Reviewed-by: Guenter Roeck
Link: https://lore.kernel.org/r/1576825096-26605-1-git-send-email-srinivas.neeli@xilinx.com
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck -
platform_get_irq() prints an error message when the interrupt
is not available. So on platforms where bark interrupt is
not specified, following error message is observed on SDM845.[ 2.975888] qcom_wdt 17980000.watchdog: IRQ index 0 not found
This is also seen on SC7180, SM8150 SoCs as well.
Fix this by using platform_get_irq_optional() instead.Fixes: 36375491a4395654 ("watchdog: qcom: support pre-timeout when the bark irq is available")
Signed-off-by: Sai Prakash Ranjan
Reviewed-by: Bjorn Andersson
Reviewed-by: Guenter Roeck
Reviewed-by: Stephen Boyd
Link: https://lore.kernel.org/r/20191213064934.4112-1-saiprakash.ranjan@codeaurora.org
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck -
Disable the watchdog during suspend if it is enabled and re-enable it on
resume. So we can sleep without the interruptions.Signed-off-by: Marco Felsch
Reviewed-by: Guenter Roeck
Link: https://lore.kernel.org/r/20191128171931.22563-1-m.felsch@pengutronix.de
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck -
watchdog_dev.c provides means to allow users to set bigger timeout value
than HW can support, make DesignWare watchdog align with this.Signed-off-by: Peng Wang
Reviewed-by: Guenter Roeck
Link: https://lore.kernel.org/r/8fa54e92c6cd4544a7a3eb60a373ac43@nokia-sbell.com
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck -
If the watchdog hardware is already enabled during the boot process,
when the Linux watchdog driver loads, it should start/reset the watchdog
and tell the watchdog framework. As a result, ping can be generated from
the watchdog framework (if CONFIG_WATCHDOG_HANDLE_BOOT_ENABLED is set),
until the userspace watchdog daemon takes over controlFixes:4332d113c66a ("watchdog: Add STM32 IWDG driver")
Signed-off-by: Christophe Roullier
Reviewed-by: Guenter Roeck
Link: https://lore.kernel.org/r/20191122132246.8473-1-christophe.roullier@st.com
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck -
Add support for SAM9X60 WDT into sama5d4_wdt.
This means that this driver gets a flag inside the data struct
that represents the sam9x60 support.
This flag differentiates between the two hardware blocks, and is set
according to the compatible of the driver instantiation.Signed-off-by: Eugen Hristev
Reviewed-by-off-by: Guenter Roeck
Link: https://lore.kernel.org/r/1574067012-18559-3-git-send-email-eugen.hristev@microchip.com
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck
06 Jan, 2020
1 commit
-
ioremap has provided non-cached semantics by default since the Linux 2.6
days, so remove the additional ioremap_nocache interface.Signed-off-by: Christoph Hellwig
Acked-by: Arnd Bergmann
30 Dec, 2019
3 commits
-
Fix:
orion_wdt f1020300.watchdog: IRQ index 1 not found
which is caused by platform_get_irq() now complaining when optional
IRQs are not found. Neither interrupt for orion is required, so
make them both optional.Signed-off-by: Russell King
Reviewed-by: Guenter Roeck
Link: https://lore.kernel.org/r/E1iahcN-0000AT-Co@rmk-PC.armlinux.org.uk
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck -
Platform device aliases were missing so module autoloading
did not work.Signed-off-by: Andreas Kemnade
Reviewed-by: Guenter Roeck
Link: https://lore.kernel.org/r/20191213214802.22268-1-andreas@kemnade.info
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck -
If TQMX86_WDT is y and WATCHDOG_CORE is m, building fails:
drivers/watchdog/tqmx86_wdt.o: In function `tqmx86_wdt_probe':
tqmx86_wdt.c:(.text+0x46e): undefined reference to `watchdog_init_timeout'
tqmx86_wdt.c:(.text+0x4e0): undefined reference to `devm_watchdog_register_device'Select WATCHDOG_CORE to fix this.
Reported-by: Hulk Robot
Fixes: e3c21e088f89 ("watchdog: tqmx86: Add watchdog driver for the IO controller")
Signed-off-by: YueHaibing
Reviewed-by: Guenter Roeck
Link: https://lore.kernel.org/r/20191206124259.25880-1-yuehaibing@huawei.com
Signed-off-by: Guenter Roeck
Signed-off-by: Wim Van Sebroeck