kernel-fxtec-pro1x/drivers
Uwe Kleine-König 530c11d432 watchdog: omap: assert the counter being stopped before reprogramming
The omap watchdog has the annoying behaviour that writes to most
registers don't have any effect when the watchdog is already running.
Quoting the AM335x reference manual:

	To modify the timer counter value (the WDT_WCRR register),
	prescaler ratio (the WDT_WCLR[4:2] PTV bit field), delay
	configuration value (the WDT_WDLY[31:0] DLY_VALUE bit field), or
	the load value (the WDT_WLDR[31:0] TIMER_LOAD bit field), the
	watchdog timer must be disabled by using the start/stop sequence
	(the WDT_WSPR register).

Currently the timer is stopped in the .probe callback but still there
are possibilities that yield to a situation where omap_wdt_start is
entered with the timer running (e.g. when /dev/watchdog is closed
without stopping and then reopened). In such a case programming the
timeout silently fails!

To circumvent this stop the timer before reprogramming.

Assuming one of the first things the watchdog user does is setting the
timeout explicitly nothing too bad should happen because this explicit
setting works fine.

Fixes: 7768a13c25 ("[PATCH] OMAP: Add Watchdog driver support")
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
2015-06-22 15:54:07 +02:00
..
accessibility
acpi Merge branches 'acpi-init' and 'acpica' 2015-05-15 00:31:23 +02:00
amba
android
ata Merge branch 'for-4.1-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata 2015-06-08 08:47:08 -07:00
atm
auxdisplay
base drivers/base: cacheinfo: handle absence of caches 2015-06-01 10:34:24 +09:00
bcma Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2015-04-17 15:50:54 -04:00
block Merge branch 'for-linus' of git://git.kernel.dk/linux-block 2015-06-12 11:35:19 -07:00
bluetooth Bluetooth: ath3k: add support of 04ca:300f AR3012 device 2015-05-13 23:04:20 +02:00
bus mvebu fixes for 4.1 (part 3) 2015-06-01 17:03:44 +02:00
cdrom
char ipmi: Fix multi-part message handling 2015-05-05 19:37:22 -05:00
clk Merge branch 'ccf/atmel-fixes-for-4.1' of https://github.com/bbrezillon/linux-at91 into clk-fixes 2015-06-19 07:37:14 -07:00
clocksource Initial ACPI support for arm64: 2015-04-24 08:23:45 -07:00
connector
cpufreq cpufreq: intel_pstate: Fix an annoying !CONFIG_SMP warning 2015-04-15 23:02:24 +02:00
cpuidle cpuidle: Run tick_broadcast_exit() with disabled interrupts 2015-04-29 15:19:21 +02:00
crypto Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 2015-06-17 20:49:26 -10:00
dca
devfreq
dio
dma dmaengine: Fix choppy sound because of unimplemented resume 2015-06-12 15:22:26 +05:30
dma-buf dma-buf: cleanup dma_buf_export() to make it easily extensible 2015-04-21 14:47:16 +05:30
edac
eisa
extcon extcon: usb-gpio: register extcon device before IRQ registration 2015-04-27 11:06:05 +09:00
firewire
firmware Merge branch 'stable/for-linus-4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/ibft 2015-06-06 09:03:54 -07:00
fmc
gpio gpio: gpio-kempld: Fix get_direction return value 2015-05-12 13:49:13 +02:00
gpu Merge tag 'drm-intel-fixes-2015-06-18' of git://anongit.freedesktop.org/drm-intel into drm-fixes 2015-06-19 11:58:39 +10:00
hid Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid 2015-05-21 17:23:11 -07:00
hsi
hv
hwmon hwmon: (nct6683) Add missing sysfs attribute initialization 2015-05-29 17:47:42 -07:00
hwspinlock
hwtracing/coresight Char/Misc driver patches for 4.1-rc1 2015-04-21 09:42:58 -07:00
i2c i2c: s3c2410: fix oops in suspend callback for non-dt platforms 2015-05-12 18:13:46 +02:00
ide Merge branch 'for-4.1-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata 2015-05-11 10:54:20 -07:00
idle
iio iio: adc: twl6030-gpadc: Fix modalias 2015-05-23 12:30:52 +01:00
infiniband Merge git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending 2015-06-20 17:26:01 -07:00
input Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2015-06-09 15:05:27 -07:00
iommu Merge git://git.infradead.org/intel-iommu 2015-06-12 11:28:57 -07:00
ipack
irqchip Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2015-06-14 15:38:57 -10:00
isdn
leds This is the bulk of GPIO changes for the v4.1 development 2015-04-18 08:22:10 -04:00
lguest lguest: fix out-by-one error in address checking. 2015-05-27 09:57:21 -07:00
macintosh
mailbox
mcb
md md: make sure MD_RECOVERY_DONE is clear before starting recovery/resync 2015-06-12 20:16:33 +10:00
media Kconfig: disable Media Controller for DVB 2015-06-17 20:53:36 -10:00
memory ARM: SoC driver updates for v4.1 2015-04-22 09:18:17 -07:00
memstick memstick: mspro_block: add missing curly braces 2015-04-17 09:04:09 -04:00
message
mfd mfd: da9052: Fix broken regulator probe 2015-05-27 13:34:15 +01:00
misc Char/Misc driver patches for 4.1-rc1 2015-04-21 09:42:58 -07:00
mmc mmc: atmel-mci: fix bad variable type for clkdiv 2015-05-18 09:04:42 +02:00
mtd Two MTD fixes for 4.1: 2015-05-18 10:01:54 -07:00
net net: igb: fix the start time for periodic output signals 2015-06-11 16:04:02 -07:00
nfc
ntb ntb: initialize max_mw for Atom before using it 2015-06-11 09:27:24 -04:00
nubus
of Driver core fixes for 4.1-rc7 2015-06-06 22:37:45 -07:00
oprofile Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2015-04-26 17:22:07 -07:00
parisc parisc: %pf is only for function pointers 2015-04-24 13:45:54 +02:00
parport
pci PCI: Preserve resource size during alignment reordering 2015-06-01 17:56:32 -05:00
pcmcia ARM: SoC cleanups for v4.1 2015-04-22 09:04:39 -07:00
phy phy: phy-rcar-gen2: Fix USBHS_UGSTS_LOCK value 2015-05-12 20:57:19 +05:30
pinctrl pinctrl: Fix gpio/pin mapping for Meson8b 2015-05-19 11:40:52 +02:00
platform thinkpad_acpi: Revert unintentional device attribute renaming 2015-05-20 02:18:12 -07:00
pnp
power power: bq27x00_battery: Add missing MODULE_ALIAS 2015-05-01 23:01:48 +02:00
powercap powercap / RAPL: Add support for Intel Skylake processors 2015-04-15 23:06:16 +02:00
pps
ps3
ptp
pwm pwm: img: Impose upper and lower timebase steps value 2015-05-19 16:07:40 +02:00
rapidio
ras
regulator mfd: da9052: Fix broken regulator probe 2015-05-27 13:34:15 +01:00
remoteproc
reset
rpmsg
rtc drivers/rtc/rtc-armada38x.c: remove unused local `flags' 2015-05-14 17:55:51 -07:00
s390 s390/zcrypt: Fix invalid domain handling during ap module unload 2015-05-13 09:57:29 +02:00
sbus drivers/sbus/char/envctrl.c: ignore orderly_poweroff return value 2015-04-15 16:35:23 -07:00
scsi Merge git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending 2015-05-31 11:31:42 -07:00
sfi
sh drivers: sh: Remove test for now unsupported sh7372 2015-04-27 13:08:14 +09:00
sn
soc soc: mediatek: Add compile dependency to pmic-wrapper 2015-05-27 16:27:05 +02:00
spi Merge remote-tracking branches 'spi/fix/fsl-cpm', 'spi/fix/fsl-dspi' and 'spi/fix/fsl-espi' into spi-linus 2015-05-11 17:29:49 +01:00
spmi
ssb SSB: Fix handling of ssb_pmu_get_alp_clock() 2015-06-09 16:38:06 +02:00
staging staging: rtl8712: fix stack dump 2015-05-31 11:54:25 +09:00
target target: Use a PASSTHROUGH flag instead of transport_types 2015-05-30 19:58:11 -07:00
tc
thermal Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/evalenti/linux-soc-thermal into for-rc 2015-05-19 08:12:27 +08:00
thunderbolt
tty TTY/Serial driver fixes for 4.1-rc7 2015-06-06 22:14:23 -07:00
uio
usb USB-serial fixes for v4.1-rc7 2015-06-05 23:19:45 +09:00
uwb
vfio vfio: Fix runaway interruptible timeout 2015-05-01 16:31:41 -06:00
vhost target: Fix se_tpg_tfo->tf_subsys regression + remove tf_subsystem 2015-05-30 18:04:20 -07:00
video backlight: pwm: Handle EPROBE_DEFER while requesting the PWM 2015-05-26 08:44:59 +01:00
virt
virtio virtio_pci: Clear stale cpumask when setting irq affinity 2015-06-04 14:47:49 +02:00
vlynq
vme
w1
watchdog watchdog: omap: assert the counter being stopped before reprogramming 2015-06-22 15:54:07 +02:00
xen xen/events: don't bind non-percpu VIRQs with percpu chip 2015-05-19 19:55:36 +01:00
zorro
Kconfig
Makefile