21 Jan, 2015

3 commits

  • This platform_driver does not need to set an owner, it will be populated by the
    driver core.

    Signed-off-by: Wolfram Sang
    Signed-off-by: Wim Van Sebroeck

    Wolfram Sang
     
  • Disable power down counter of the watchdog to avoid system resets. The
    watchdog power down counter is set automatically by the chip. If it is
    not set to 0 in the driver, the system resets.

    Signed-off-by: Markus Pargmann
    Acked-by: Shawn Guo
    Signed-off-by: Wim Van Sebroeck

    Markus Pargmann
     
  • Improve power management operations(suspend and resume) as part of
    dev_pm_ops for IMX2 watchdog driver.

    If PM will be supported, please make sure that the wdev->clk
    could disable the watchdog's counter input clock source or can
    mask watchdog's reset request to the core.

    If watchdog is still used by consumers and resumes from deep
    sleep state, we need to restart the watchdog again without
    enabling the timer.

    If watchdog been has started --> stopped by the consumers and
    resumes from non-deep sleep state, then start the timer again.

    If watchdog has been started --> stopped by the consumers and
    resumes from deep sleep state, will do nothing. The watchdog
    will be restarted by consumers next time to be used.

    Signed-off-by: Xiubo Li
    Reviewed-by: Guenter Roeck
    Signed-off-by: Wim Van Sebroeck

    Xiubo Li
     

18 Dec, 2014

2 commits

  • Fix the following build warning by passing the expected argument type to
    watchdog_active():

    drivers/watchdog/imx2_wdt.c: In function 'imx2_wdt_suspend':
    drivers/watchdog/imx2_wdt.c:340:2: warning: passing argument 1 of 'watchdog_active' from incompatible pointer type [enabled by default]
    In file included from drivers/watchdog/imx2_wdt.c:38:0:
    include/linux/watchdog.h:104:20: note: expected 'struct watchdog_device *' but argument is of type 'struct watchdog_device **'

    Reported-by: Olof's autobuilder
    Signed-off-by: Fabio Estevam
    Reviewed-by: Guenter Roeck
    Signed-off-by: Wim Van Sebroeck

    Fabio Estevam
     
  • Add power management operations(suspend and resume) as part of
    dev_pm_ops for IMX2 watchdog driver.

    Signed-off-by: Xiubo Li
    Reviewed-by: Guenter Roeck
    Signed-off-by: Wim Van Sebroeck

    Xiubo Li
     

15 Dec, 2014

1 commit

  • Pull driver core update from Greg KH:
    "Here's the set of driver core patches for 3.19-rc1.

    They are dominated by the removal of the .owner field in platform
    drivers. They touch a lot of files, but they are "simple" changes,
    just removing a line in a structure.

    Other than that, a few minor driver core and debugfs changes. There
    are some ath9k patches coming in through this tree that have been
    acked by the wireless maintainers as they relied on the debugfs
    changes.

    Everything has been in linux-next for a while"

    * tag 'driver-core-3.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (324 commits)
    Revert "ath: ath9k: use debugfs_create_devm_seqfile() helper for seq_file entries"
    fs: debugfs: add forward declaration for struct device type
    firmware class: Deletion of an unnecessary check before the function call "vunmap"
    firmware loader: fix hung task warning dump
    devcoredump: provide a one-way disable function
    device: Add dev__once variants
    ath: ath9k: use debugfs_create_devm_seqfile() helper for seq_file entries
    ath: use seq_file api for ath9k debugfs files
    debugfs: add helper function to create device related seq_file
    drivers/base: cacheinfo: remove noisy error boot message
    Revert "core: platform: add warning if driver has no owner"
    drivers: base: support cpu cache information interface to userspace via sysfs
    drivers: base: add cpu_device_create to support per-cpu devices
    topology: replace custom attribute macros with standard DEVICE_ATTR*
    cpumask: factor out show_cpumap into separate helper function
    driver core: Fix unbalanced device reference in drivers_probe
    driver core: fix race with userland in device_add()
    sysfs/kernfs: make read requests on pre-alloc files use the buffer.
    sysfs/kernfs: allow attributes to request write buffer be pre-allocated.
    fs: sysfs: return EGBIG on write if offset is larger than file size
    ...

    Linus Torvalds
     

11 Dec, 2014

1 commit

  • Pull timer core updates from Thomas Gleixner:
    "The time(r) departement provides:

    - more infrastructure work on the year 2038 issue

    - a few fixes in the Armada SoC timers

    - the usual pile of fixlets and improvements"

    * 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    clocksource: armada-370-xp: Use the reference clock on A375 SoC
    watchdog: orion: Use the reference clock on Armada 375 SoC
    clocksource: armada-370-xp: Add missing clock enable
    time: Fix sign bug in NTP mult overflow warning
    time: Remove timekeeping_inject_sleeptime()
    rtc: Update suspend/resume timing to use 64bit time
    rtc/lib: Provide y2038 safe rtc_tm_to_time()/rtc_time_to_tm() replacement
    time: Fixup comments to reflect usage of timespec64
    time: Expose get_monotonic_coarse64() for in-kernel uses
    time: Expose getrawmonotonic64 for in-kernel uses
    time: Provide y2038 safe mktime() replacement
    time: Provide y2038 safe timekeeping_inject_sleeptime() replacement
    time: Provide y2038 safe do_settimeofday() replacement
    time: Complete NTP adjustment threshold judging conditions
    time: Avoid possible NTP adjustment mult overflow.
    time: Rename udelay_test.c to test_udelay.c
    clocksource: sirf: Remove hard-coded clock rate

    Linus Torvalds
     

10 Dec, 2014

1 commit

  • Pull ARM SoC cleanup on mach-at91 from Arnd Bergmann:
    "On Atmel AT91, the conversion to device tree is now considered
    complete, and all machines that were not already converted in 3.18 are
    assumed to be unused and dropped by the maintainer.

    All remaining board files that were written in C are dropped, and the
    ancient at91x40 sub-platform (based on an MMU-less ARM7) is removed
    altogether. Cleaning up the last pieces was great fun, so I took the
    time to do some of the coding myself and removed several hundred code
    lines that ended up unused after the board files were done.

    There are still a couple of AT91 specific device drivers that are not
    converted to DT (CF, USB-OTG) and currently not working, and the
    platform itself is not "multiplatform"-enabled, but both issues are
    going to be taken care of in the 3.20 cycle.

    This is split out from the other cleanups purely based on the size of
    the branch"

    * tag 'at91-cleanup-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (33 commits)
    ARM: at91: remove unused board.h file
    ARM: at91: remove unneeded header files
    ARM: at91/clocksource: remove !DT PIT initializations
    ARM: at91: at91rm9200 ST initialization is now DT only
    ARM: at91: remove old AT91-specific drivers
    ARM: at91: cleanup initilisation code by removing dead code
    ARM: at91/Kconfig: select board files automatically
    ARM: at91: remove unused IRQ function declarations
    ARM: at91: remove legacy IRQ driver and related code
    ARM: at91: remove old at91-specific clock driver
    ARM: at91: remove clock data in at91sam9n12.c and at91sam9x5.c files
    ARM: at91: remove all !DT related configuration options
    ARM: at91/trivial: update Kconfig comment to mention SAMA5
    ARM: at91: always USE_OF from now on
    ARM: at91/Kconfig: remove ARCH_AT91RM9200 option for drivers
    ARM: at91: switch configuration option to SOC_AT91RM9200
    ARM: at91: remove at91rm9200 legacy board support
    ARM: at91: remove at91rm9200 legacy boards files
    ARM: at91/Kconfig: remove useless fbdev Kconfig options
    ARM: at91: remove at91sam9261/at91sam9g10 legacy board support
    ...

    Linus Torvalds
     

06 Dec, 2014

1 commit


27 Nov, 2014

1 commit


26 Nov, 2014

2 commits

  • The precise selection is useless, so we simply remove these dependencies.

    Signed-off-by: Nicolas Ferre
    Acked-by: Boris BREZILLON

    Nicolas Ferre
     
  • The 25 MHz reference clock has better stability so its use is prefered over the
    core clock. Change the Armada 375 clock initialization to use this reference
    clock. To ensure the driver is compatible with an old devicetree, also provide
    a fallback path which will silently return to the previous behavior.

    While here, add the clock specification to the binding documentation.

    Acked-by: Jason Cooper
    Acked-by: Gregory CLEMENT
    Acked-by: Wim Van Sebroeck
    Reviewed-by: Thomas Petazzoni
    Tested-by: Thomas Petazzoni
    Signed-off-by: Ezequiel Garcia
    Signed-off-by: Daniel Lezcano

    Ezequiel Garcia
     

04 Nov, 2014

1 commit


21 Oct, 2014

20 commits

  • This patch removes the magic value used for rebooting the board. This
    value is useless and leads to a static checker warning as reported by
    Dan Carpenter.

    Signed-off-by: Carlo Caione
    Reviewed-by: Guenter Roeck
    Signed-off-by: Wim Van Sebroeck

    Carlo Caione
     
  • They need HAS_IOMEM, so let them depend on it, the related error (with
    allmodconfig under um):

    MODPOST 1205 modules
    ERROR: "devm_ioremap_resource" [drivers/watchdog/tegra_wdt.ko] undefined!
    ERROR: "devm_ioremap_resource" [drivers/watchdog/of_xilinx_wdt.ko] undefined!

    Signed-off-by: Chen Gang
    Reviewed-by: Guenter Roeck
    Signed-off-by: Wim Van Sebroeck

    Chen Gang
     
  • This patch adds support for the watchdog hardware found in A31 and
    newer SoCs. This new hardware has registers at different offsets, and
    the system reset control has been split out of the "mode" register
    into a new "configuration" register.

    Differences not supported by this driver include separate interrupt
    lines for each watchdog, instead of sharing an interrupt line and
    registers with the timer block.

    Signed-off-by: Chen-Yu Tsai
    Reviewed-by: Guenter Roeck
    Signed-off-by: Wim Van Sebroeck

    Chen-Yu Tsai
     
  • This patch adds support for hardware parameters tied to compatible
    strings, so similar hardware can reuse the driver.

    This will be used to support the newer watchdog found in A31 and
    later SoCs. Differences in the new hardware include separate
    interrupt lines for each watchdog, and corresponding interrupt
    control/status registers. Watchdog control registers were also
    slightly rearranged.

    Also replace ioread32()/iowrite32() with readl()/writel() in various
    places changed.

    Signed-off-by: Chen-Yu Tsai
    Signed-off-by: Guenter Roeck
    Acked-by: Heiko Stuebner
    Signed-off-by: Wim Van Sebroeck
    Signed-off-by: Andrew Morton

    Chen-Yu Tsai
     
  • Register the watchdog as the system restart function
    to the new introducing kernel restart call chain in the
    driver instead of providing the restart in machine desc.
    This restart handler function is from the mxc_restart()
    in arch/arm/mach-imx/system.c

    Signed-off-by: Jingchang Lu
    Reviewed-by: Guenter Roeck
    Signed-off-by: Wim Van Sebroeck

    Jingchang Lu
     
  • The WDT's BITE_TIME warm-reset behavior can be leveraged as a last
    resort mechanism for triggering chip reset. Usually, other restart
    methods (such as PS_HOLD) are preferrable for issuing a more complete
    reset of the chip. As such, keep the priority of the watchdog notifier
    low.

    Signed-off-by: Josh Cartwright
    Reviewed-by: Guenter Roeck
    Signed-off-by: Wim Van Sebroeck

    Josh Cartwright
     
  • On a lot of Samsung systems the watchdog is responsible for restarting the
    system and until now this code was contained in plat-samsung/watchdog-reset.c.

    With the introduction of the restart handlers, this code can now move into
    driver itself, removing the need for arch-specific code.

    Tested on a S3C2442 based GTA02

    Signed-off-by: Heiko Stuebner
    Signed-off-by: Guenter Roeck
    Signed-off-by: Wim Van Sebroeck
    Signed-off-by: Andrew Morton

    Heiko Stuebner
     
  • The kernel core now provides an API to trigger a system restart.
    Register with it to support restarting the system via. watchdog.

    Signed-off-by: Jisheng Zhang
    Reviewed-by: Guenter Roeck
    Signed-off-by: Wim Van Sebroeck

    Jisheng Zhang
     
  • This patch adds the watchdog driver for the Amlogic Meson SoCs used also
    to reboot the device.

    Signed-off-by: Carlo Caione
    Reviewed-by: Guenter Roeck
    Signed-off-by: Wim Van Sebroeck

    Carlo Caione
     
  • There is no conflict with rtc/rtc-stmp3xxx.c parent
    because modified registers in PM functions of stmp3xxx_rtc_wdt
    are different.

    Signed-off-by: Janusz Uzycki
    Reviewed-by: Guenter Roeck
    Signed-off-by: Wim Van Sebroeck

    Janusz Uzycki
     
  • This driver supports the watchdog device inside the DA9063 PMIC.

    Signed-off-by: Krystian Garbaciak
    Signed-off-by: Philipp Zabel
    Signed-off-by: Markus Pargmann
    Acked-by: Steve Twiss
    Tested-by: Steve Twiss
    Reviewed-by: Guenter Roeck
    Signed-off-by: Wim Van Sebroeck

    Krystian Garbaciak
     
  • This adds a driver for the watchdog timer available in Ricoh RN5T618
    PMIC. The device supports a programmable expiration time of 1, 8, 32
    or 128 seconds.

    Signed-off-by: Beniamino Galvani
    Reviewed-by: Guenter Roeck
    Signed-off-by: Wim Van Sebroeck

    Beniamino Galvani
     
  • Exynos7 SoC has a Watchdog for Atlas (A57) cores
    This patch adds support for the Atlas watchdog.

    Signed-off-by: Naveen Krishna Chatradhi
    Reviewed-by: Guenter Roeck
    Signed-off-by: Wim Van Sebroeck

    Naveen Krishna Chatradhi
     
  • Add a driver for the watchdog timer block found in the Krait Processor
    Subsystem (KPSS) on the MSM8960, APQ8064, and IPQ8064.

    Signed-off-by: Josh Cartwright
    Reviewed-by: Guenter Roeck
    Signed-off-by: Wim Van Sebroeck

    Josh Cartwright
     
  • The TOP_INIT, ie bit 4-7 of the WDOG_TIMEOUT_RANGE_REG_OFFSET register
    may be zero, so the timeout period may be very short after initialization
    is done, thus the system may be reset soon after enabling. We fix this
    problem by also initialising the TOP_INIT when setting TOP in function
    dw_wdt_set_top().

    Signed-off-by: Jisheng Zhang
    Reviewed-by: Guenter Roeck
    Signed-off-by: Wim Van Sebroeck

    Jisheng Zhang
     
  • Add Cadence WDT driver. This is used by Xilinx Zynq.

    Signed-off-by: Harini Katakam
    Reviewed-by: Guenter Roeck
    Signed-off-by: Wim Van Sebroeck

    Harini Katakam
     
  • Signed-off-by: Xiubo Li
    Reviewed-by: Guenter Roeck
    Signed-off-by: Wim Van Sebroeck

    Xiubo Li
     
  • There is no need to store the return value of misc_deregister() in a
    variable. Instead we can just return the value directly.

    Signed-off-by: Mika Westerberg
    Reviewed-by: Guenter Roeck
    Signed-off-by: Wim Van Sebroeck

    Mika Westerberg
     
  • Building booke_wdt fails when trying to build as a module as there is no
    early_param() in module. Fix by using module_param() instead of early_param().

    Signed-off-by: Pranith Kumar
    Reviewed-by: Guenter Roeck
    Signed-off-by: Wim Van Sebroeck

    Pranith Kumar
     
  • There is no need to init .owner field.

    Based on the patch from Peter Griffin
    "mmc: remove .owner field for drivers using module_platform_driver"

    This patch removes the superflous .owner field for drivers which
    use the module_platform_driver API, as this is overriden in
    platform_driver_register anyway."

    Signed-off-by: Michal Simek
    Reviewed-by: Guenter Roeck
    Signed-off-by: Wim Van Sebroeck

    Michal Simek
     

20 Oct, 2014

1 commit


11 Oct, 2014

2 commits

  • …it/groeck/linux-staging

    Pull hwmon updates from Guenter Roeck:
    - new driver for menf21bmc.
    - convert k10temp, smsc47b397, da9052, da9055 to new hwmon API.
    - register ntc_thermistor driver with thermal subsystem.
    - add support for F15h M60h to k10temp driver.
    - add driver for MEN14F021P00 BMC HWMON driver; this required a merge
    with tag mfd-hwmon-leds-watchdog-v3.18

    * tag 'hwmon-for-linus-v3.18' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging:
    hwmon: (ab8500) Call kernel_power_off instead of pm_power_off
    hwmon: (menf21bmc) Introduce MEN14F021P00 BMC HWMON driver
    leds: leds-menf21bmc: Introduce MEN 14F021P00 BMC LED driver
    watchdog: menf21bmc_wdt: Introduce MEN 14F021P00 BMC Watchdog driver
    mfd: menf21bmc: Introduce MEN 14F021P00 BMC MFD Core driver
    hwmon: (ntc_thermistor) Add ntc thermistor to thermal subsystem as a sensor.
    hwmon: (smsc47b397) Convert to devm_hwmon_device_register_with_groups
    MAINTAINERS: add entry for the PWM fan driver
    hwmon: (k10temp) Convert to devm_hwmon_device_register_with_groups
    hwmon: (k10temp) Add support for F15h M60h
    hwmon: (da9052) Convert to devm_hwmon_device_register_with_groups
    hwmon: (da9055) Convert to devm_hwmon_device_register_with_groups
    hwmon: (ads1015) Use of_property_read_u32 at appropriate places

    Linus Torvalds
     
  • …el/git/groeck/linux-staging

    Pull restart handler infrastructure from Guenter Roeck:
    "This series was supposed to be pulled through various trees using it,
    and I did not plan to send a separate pull request. As it turns out,
    the pinctrl tree did not merge with it, is now upstream, and uses it,
    meaning there are now build failures.

    Please pull this series directly to fix those build failures"

    * tag 'restart-handler-for-v3.18' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging:
    arm/arm64: unexport restart handlers
    watchdog: sunxi: register restart handler with kernel restart handler
    watchdog: alim7101: register restart handler with kernel restart handler
    watchdog: moxart: register restart handler with kernel restart handler
    arm: support restart through restart handler call chain
    arm64: support restart through restart handler call chain
    power/restart: call machine_restart instead of arm_pm_restart
    kernel: add support for kernel restart handler call chain

    Linus Torvalds
     

26 Sep, 2014

3 commits

  • The kernel core now provides an API to trigger a system restart. Register
    with it instead of setting arm_pm_restart.

    Signed-off-by: Guenter Roeck
    Acked-by: Heiko Stuebner
    Cc: Arnd Bergmann
    Cc: Catalin Marinas
    Cc: David Woodhouse
    Cc: Dmitry Eremin-Solenikov
    Cc: Ingo Molnar
    Cc: Jonas Jensen
    Cc: Maxime Ripard
    Cc: Randy Dunlap
    Cc: Russell King
    Cc: Steven Rostedt
    Cc: Tomasz Figa
    Cc: Will Deacon
    Cc: Wim Van Sebroeck
    Signed-off-by: Andrew Morton

    Guenter Roeck
     
  • The kernel core now provides an API to trigger a system restart. Register
    with it to restart the system instead of misusing the reboot notifier.

    Signed-off-by: Guenter Roeck
    Acked-by: Catalin Marinas
    Acked-by: Heiko Stuebner
    Cc: Arnd Bergmann
    Cc: David Woodhouse
    Cc: Dmitry Eremin-Solenikov
    Cc: Ingo Molnar
    Cc: Jonas Jensen
    Cc: Maxime Ripard
    Cc: Randy Dunlap
    Cc: Russell King
    Cc: Steven Rostedt
    Cc: Tomasz Figa
    Cc: Will Deacon
    Cc: Wim Van Sebroeck
    Signed-off-by: Andrew Morton

    Guenter Roeck
     
  • The kernel now provides an API to trigger a system restart. Register with
    it instead of setting arm_pm_restart.

    Signed-off-by: Guenter Roeck
    Acked-by: Catalin Marinas
    Acked-by: Heiko Stuebner
    Cc: Arnd Bergmann
    Cc: David Woodhouse
    Cc: Dmitry Eremin-Solenikov
    Cc: Ingo Molnar
    Cc: Jonas Jensen
    Cc: Maxime Ripard
    Cc: Randy Dunlap
    Cc: Russell King
    Cc: Steven Rostedt
    Cc: Tomasz Figa
    Cc: Will Deacon
    Cc: Wim Van Sebroeck
    Signed-off-by: Andrew Morton

    Guenter Roeck
     

24 Sep, 2014

1 commit