27 Jan, 2020

6 commits

  • Since we do not have interrupts on BCM7216, we cannot have trip point
    crossing, the thermal subsystem expects us to provide a NULL set_trips
    operation in that case, so make it possible to provide per-process
    thermal_zone_of_device_ops

    Reviewed-by: Amit Kucheria
    Signed-off-by: Florian Fainelli
    Signed-off-by: Daniel Lezcano
    Link: https://lore.kernel.org/r/20200114190607.29339-7-f.fainelli@gmail.com

    Florian Fainelli
     
  • If we are successful grabbing the interrupt resource, then register an
    interrupt handler, this makes it easier to support the interrupt as
    being optional, which is it for 7216.

    Reviewed-by: Amit Kucheria
    Signed-off-by: Florian Fainelli
    Signed-off-by: Daniel Lezcano
    Link: https://lore.kernel.org/r/20200114190607.29339-6-f.fainelli@gmail.com

    Florian Fainelli
     
  • Match the 7216 compatible string in order to derive the correct 16nm
    process thermal parameters to obtain correct readings.

    Reviewed-by: Amit Kucheria
    Signed-off-by: Florian Fainelli
    Signed-off-by: Daniel Lezcano
    Link: https://lore.kernel.org/r/20200114190607.29339-5-f.fainelli@gmail.com

    Florian Fainelli
     
  • The driver is currently assuming that it is operating with a 28nm
    process chip, which has a specific formula to convert temperature to a
    code and vice versa. Update the code to support providing two key
    values: offset and multiplier to derive the correct formulas.

    Signed-off-by: Florian Fainelli
    Reviewed-by: Amit Kucheria
    Signed-off-by: Daniel Lezcano
    Link: https://lore.kernel.org/r/20200114190607.29339-3-f.fainelli@gmail.com

    Florian Fainelli
     
  • At the time the brcmstb_thermal driver and its binding were merged, the
    DT binding did not make the coefficients properties a mandatory one,
    therefore all users of the brcmstb_thermal driver out there have a non
    functional implementation with zero coefficients. Even if these
    properties were provided, the formula used for computation is incorrect.

    The coefficients are entirely process specific (right now, only 28nm is
    supported) and not board or SoC specific, it is therefore appropriate to
    hard code them in the driver given the compatibility string we are
    probed with which has to be updated whenever a new process is
    introduced.

    We remove the existing coefficients definition since subsequent patches
    are going to add support for a new process and will introduce new
    coefficients as well.

    Fixes: 9e03cf1b2dd5 ("thermal: add brcmstb AVS TMON driver")
    Signed-off-by: Florian Fainelli
    Reviewed-by: Amit Kucheria
    Signed-off-by: Daniel Lezcano
    Link: https://lore.kernel.org/r/20200114190607.29339-2-f.fainelli@gmail.com

    Florian Fainelli
     
  • This adds the thermal sensor driver for the Broadcom BCM2711 SoC,
    which is placed on the Raspberry Pi 4. The driver only provides
    SoC temperature reading so far.

    Signed-off-by: Stefan Wahren
    Reviewed-by: Florian Fainelli
    Reviewed-by: Nicolas Saenz Julienne
    Tested-by: Nicolas Saenz Julienne
    Signed-off-by: Daniel Lezcano
    Link: https://lore.kernel.org/r/1578941778-23321-3-git-send-email-stefan.wahren@i2se.com

    Stefan Wahren
     

13 Jul, 2019

1 commit

  • Pull driver core and debugfs updates from Greg KH:
    "Here is the "big" driver core and debugfs changes for 5.3-rc1

    It's a lot of different patches, all across the tree due to some api
    changes and lots of debugfs cleanups.

    Other than the debugfs cleanups, in this set of changes we have:

    - bus iteration function cleanups

    - scripts/get_abi.pl tool to display and parse Documentation/ABI
    entries in a simple way

    - cleanups to Documenatation/ABI/ entries to make them parse easier
    due to typos and other minor things

    - default_attrs use for some ktype users

    - driver model documentation file conversions to .rst

    - compressed firmware file loading

    - deferred probe fixes

    All of these have been in linux-next for a while, with a bunch of
    merge issues that Stephen has been patient with me for"

    * tag 'driver-core-5.3-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (102 commits)
    debugfs: make error message a bit more verbose
    orangefs: fix build warning from debugfs cleanup patch
    ubifs: fix build warning after debugfs cleanup patch
    driver: core: Allow subsystems to continue deferring probe
    drivers: base: cacheinfo: Ensure cpu hotplug work is done before Intel RDT
    arch_topology: Remove error messages on out-of-memory conditions
    lib: notifier-error-inject: no need to check return value of debugfs_create functions
    swiotlb: no need to check return value of debugfs_create functions
    ceph: no need to check return value of debugfs_create functions
    sunrpc: no need to check return value of debugfs_create functions
    ubifs: no need to check return value of debugfs_create functions
    orangefs: no need to check return value of debugfs_create functions
    nfsd: no need to check return value of debugfs_create functions
    lib: 842: no need to check return value of debugfs_create functions
    debugfs: provide pr_fmt() macro
    debugfs: log errors when something goes wrong
    drivers: s390/cio: Fix compilation warning about const qualifiers
    drivers: Add generic helper to match by of_node
    driver_find_device: Unify the match function with class_find_device()
    bus_find_device: Unify the match callback with class_find_device
    ...

    Linus Torvalds
     

21 Jun, 2019

1 commit


19 Jun, 2019

1 commit

  • Based on 2 normalized pattern(s):

    this program is free software you can redistribute it and or modify
    it under the terms of the gnu general public license version 2 as
    published by the free software foundation

    this program is free software you can redistribute it and or modify
    it under the terms of the gnu general public license version 2 as
    published by the free software foundation #

    extracted by the scancode license scanner the SPDX license identifier

    GPL-2.0-only

    has been chosen to replace the boilerplate/reference in 4122 file(s).

    Signed-off-by: Thomas Gleixner
    Reviewed-by: Enrico Weigelt
    Reviewed-by: Kate Stewart
    Reviewed-by: Allison Randal
    Cc: linux-spdx@vger.kernel.org
    Link: https://lkml.kernel.org/r/20190604081206.933168790@linutronix.de
    Signed-off-by: Greg Kroah-Hartman

    Thomas Gleixner
     

05 Jun, 2019

1 commit

  • Based on 1 normalized pattern(s):

    this software is licensed under the terms of the gnu general public
    license version 2 as published by the free software foundation and
    may be copied distributed and modified under those terms this
    program is distributed in the hope that it will be useful but
    without any warranty without even the implied warranty of
    merchantability or fitness for a particular purpose see the gnu
    general public license for more details

    extracted by the scancode license scanner the SPDX license identifier

    GPL-2.0-only

    has been chosen to replace the boilerplate/reference in 285 file(s).

    Signed-off-by: Thomas Gleixner
    Reviewed-by: Alexios Zavras
    Reviewed-by: Allison Randal
    Cc: linux-spdx@vger.kernel.org
    Link: https://lkml.kernel.org/r/20190529141900.642774971@linutronix.de
    Signed-off-by: Greg Kroah-Hartman

    Thomas Gleixner
     

21 May, 2019

1 commit


14 May, 2019

1 commit


18 Mar, 2019

1 commit

  • "cat /sys/kernel/debug/bcm2835_thermal/regset" causes a NULL pointer
    dereference in bcm2835_thermal_debugfs. The driver makes use of the
    implementation details of the thermal framework to retrieve a pointer
    to its private data from a struct thermal_zone_device, and gets it
    wrong - leading to the crash. Instead, store its private data as the
    drvdata and retrieve the thermal_zone_device pointer from it.

    Fixes: bcb7dd9ef206 ("thermal: bcm2835: add thermal driver for bcm2835 SoC")

    Signed-off-by: Phil Elwell
    Signed-off-by: Zhang Rui

    Phil Elwell
     

06 Feb, 2019

1 commit

  • Stingray SoC has six temperature sensor and those are
    configured, controlled and accessed to read temperature
    and update in DDR memory using m0 firmware.
    All six sensors has been given 4 bytes of memory in DDR
    to write temperature in millivolts.

    This thermal driver read temperature values from DDR
    because no direct access to sensors.
    Like this all temparature sensors are monitored and
    trips at critical temperature.

    If driver can't handle thermal runaways because of
    any unknown reason, then firmware in m0 Processor
    will handle.

    Reviewed-by: Ray Jui
    Reviewed-by: Scott Branden
    Reviewed-by: Vikram Prakash
    Reviewed-by: Rob Herring
    Signed-off-by: Pramod Kumar
    Signed-off-by: Srinath Mannam
    Signed-off-by: Eduardo Valentin

    Pramod Kumar
     

06 Jan, 2019

1 commit

  • Pull thermal SoC updates from Eduardo Valentin:

    - Tegra DT binding documentation for Tegra194

    - Armada now supports ap806 and cp110

    - RCAR thermal now supports R8A774C0 and R8A77990

    - Fixes on thermal_hwmon, IMX, generic-ADC, ST, RCAR, Broadcom,
    Uniphier, QCOM, Tegra, PowerClamp, and Armada thermal drivers.

    * 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/evalenti/linux-soc-thermal: (22 commits)
    thermal: generic-adc: Fix adc to temp interpolation
    thermal: rcar_thermal: add R8A77990 support
    dt-bindings: thermal: rcar-thermal: add R8A77990 support
    thermal: rcar_thermal: add R8A774C0 support
    dt-bindings: thermal: rcar-thermal: add R8A774C0 support
    dt-bindings: cp110: document the thermal interrupt capabilities
    dt-bindings: ap806: document the thermal interrupt capabilities
    MAINTAINERS: thermal: add entry for Marvell MVEBU thermal driver
    thermal: armada: add overheat interrupt support
    thermal: st: fix Makefile typo
    thermal: uniphier: Convert to SPDX identifier
    thermal/intel_powerclamp: Change to use DEFINE_SHOW_ATTRIBUTE macro
    thermal: tegra: soctherm: Change to use DEFINE_SHOW_ATTRIBUTE macro
    dt-bindings: thermal: tegra-bpmp: Add Tegra194 support
    thermal: imx: save one condition block for normal case of nvmem initialization
    thermal: imx: fix for dependency on cpu-freq
    thermal: tsens: qcom: do not create duplicate regmap debugfs entries
    thermal: armada: Use PTR_ERR_OR_ZERO in armada_thermal_probe_legacy()
    dt-bindings: thermal: rcar-gen3-thermal: All variants use 3 interrupts
    thermal: broadcom: use devm_thermal_zone_of_sensor_register
    ...

    Linus Torvalds
     

02 Jan, 2019

2 commits


05 Dec, 2018

2 commits


05 Jun, 2018

1 commit

  • Printk format "%pCr" will be removed soon, as clk_get_rate() must not be
    called in atomic context.

    Replace it by printing the variable that already holds the clock rate.
    Note that calling clk_get_rate() is safe here, as the code runs in task
    context.

    Link: http://lkml.kernel.org/r/1527845302-12159-3-git-send-email-geert+renesas@glider.be
    To: Jia-Ju Bai
    To: Jonathan Corbet
    To: Michael Turquette
    To: Stephen Boyd
    To: Zhang Rui
    To: Eduardo Valentin
    To: Eric Anholt
    To: Stefan Wahren
    To: Greg Kroah-Hartman
    Cc: Sergey Senozhatsky
    Cc: Petr Mladek
    Cc: Linus Torvalds
    Cc: Steven Rostedt
    Cc: linux-doc@vger.kernel.org
    Cc: linux-clk@vger.kernel.org
    Cc: linux-pm@vger.kernel.org
    Cc: linux-serial@vger.kernel.org
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: linux-renesas-soc@vger.kernel.org
    Cc: linux-kernel@vger.kernel.org
    Cc: stable@vger.kernel.org # 4.12+
    Signed-off-by: Geert Uytterhoeven
    Acked-by: Stefan Wahren
    Signed-off-by: Petr Mladek

    Geert Uytterhoeven
     

01 Nov, 2017

1 commit

  • The AVS TMON core provides temperature readings, a pair of configurable
    high- and low-temperature threshold interrupts, and an emergency
    over-temperature chip reset. The driver utilizes the first two to
    provide temperature readings and high-temperature notifications to
    applications. The over-temperature reset is not exposed to
    applications; this reset threshold is critical to the system and should
    be set with care within the bootloader.

    Applications may choose to utilize the notification mechanism, the
    temperature reading mechanism (e.g., through polling), or both.

    Signed-off-by: Brian Norris
    Signed-off-by: Doug Berger
    Signed-off-by: Markus Mayer
    Signed-off-by: Eduardo Valentin

    Brian Norris
     

11 Aug, 2017

1 commit


05 Jul, 2017

1 commit


01 Jul, 2017

1 commit

  • This causes a static checker because we're passing a valid pointer to
    PTR_ERR(). "err" is already the correct error code, so we can just
    delete this line.

    Fixes: bcb7dd9ef206 ("thermal: bcm2835: add thermal driver for bcm2835 SoC")
    Acked-by: Stefan Wahren
    Signed-off-by: Dan Carpenter
    Signed-off-by: Eduardo Valentin

    Dan Carpenter
     

24 May, 2017

1 commit


23 Apr, 2017

2 commits


07 Apr, 2017

1 commit

  • Northstar is a SoC family commonly used in home routers. This commit
    adds a driver for checking CPU temperature. As Northstar Plus seems to
    also have this IP block this new symbol gets ARCH_BCM_IPROC dependency.

    Signed-off-by: Rafał Miłecki
    Signed-off-by: Jon Mason
    Signed-off-by: Eduardo Valentin

    Rafał Miłecki