Skip to content
Permalink
Iwona-Winiarsk…
Switch branches/tags

Commits on Jan 12, 2022

  1. docs: Add PECI documentation

    Add a brief overview of PECI and PECI wire interface.
    The documentation also contains kernel-doc for PECI subsystem internals
    and PECI CPU Driver API.
    
    Signed-off-by: Iwona Winiarska <iwona.winiarska@intel.com>
    Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
    iklimasz authored and intel-lab-lkp committed Jan 12, 2022
  2. docs: hwmon: Document PECI drivers

    Add documentation for peci-cputemp driver that provides DTS thermal
    readings for CPU packages and CPU cores, and peci-dimmtemp driver that
    provides Temperature Sensor on DIMM readings.
    
    Signed-off-by: Jae Hyun Yoo <jae.hyun.yoo@linux.intel.com>
    Co-developed-by: Iwona Winiarska <iwona.winiarska@intel.com>
    Signed-off-by: Iwona Winiarska <iwona.winiarska@intel.com>
    Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
    Acked-by: Guenter Roeck <linux@roeck-us.net>
    jaehyoo authored and intel-lab-lkp committed Jan 12, 2022
  3. hwmon: peci: Add dimmtemp driver

    Add peci-dimmtemp driver for Temperature Sensor on DIMM readings that
    are accessible via the processor PECI interface.
    
    The main use case for the driver (and PECI interface) is out-of-band
    management, where we're able to obtain thermal readings from an external
    entity connected with PECI, e.g. BMC on server platforms.
    
    Co-developed-by: Jae Hyun Yoo <jae.hyun.yoo@linux.intel.com>
    Signed-off-by: Jae Hyun Yoo <jae.hyun.yoo@linux.intel.com>
    Signed-off-by: Iwona Winiarska <iwona.winiarska@intel.com>
    Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
    iklimasz authored and intel-lab-lkp committed Jan 12, 2022
  4. hwmon: peci: Add cputemp driver

    Add peci-cputemp driver for Digital Thermal Sensor (DTS) thermal
    readings of the processor package and processor cores that are
    accessible via the PECI interface.
    
    The main use case for the driver (and PECI interface) is out-of-band
    management, where we're able to obtain the DTS readings from an external
    entity connected with PECI, e.g. BMC on server platforms.
    
    Co-developed-by: Jae Hyun Yoo <jae.hyun.yoo@linux.intel.com>
    Signed-off-by: Jae Hyun Yoo <jae.hyun.yoo@linux.intel.com>
    Signed-off-by: Iwona Winiarska <iwona.winiarska@intel.com>
    Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
    Acked-by: Guenter Roeck <linux@roeck-us.net>
    iklimasz authored and intel-lab-lkp committed Jan 12, 2022
  5. peci: Add peci-cpu driver

    PECI is an interface that may be used by different types of devices.
    Add a peci-cpu driver compatible with Intel processors. The driver is
    responsible for handling auxiliary devices that can subsequently be used
    by other drivers (e.g. hwmons).
    
    Signed-off-by: Iwona Winiarska <iwona.winiarska@intel.com>
    Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
    iklimasz authored and intel-lab-lkp committed Jan 12, 2022
  6. peci: Add support for PECI device drivers

    Add support for PECI device drivers, which unlike PECI controller
    drivers are actually able to provide functionalities to userspace.
    
    Also, extend peci_request API to allow querying more details about PECI
    device (e.g. model/family), that's going to be used to find a compatible
    peci_driver.
    
    Signed-off-by: Iwona Winiarska <iwona.winiarska@intel.com>
    Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
    iklimasz authored and intel-lab-lkp committed Jan 12, 2022
  7. peci: Add sysfs interface for PECI bus

    PECI devices may not be discoverable at the time when PECI controller is
    being added (e.g. BMC can boot up when the Host system is still in S5).
    Since we currently don't have the capabilities to figure out the Host
    system state inside the PECI subsystem itself, we have to rely on
    userspace to do it for us.
    
    In the future, PECI subsystem may be expanded with mechanisms that allow
    us to avoid depending on userspace interaction (e.g. CPU presence could
    be detected using GPIO, and the information on whether it's discoverable
    could be obtained over IPMI).
    Unfortunately, those methods may ultimately not be available (support
    will vary from platform to platform), which means that we still need
    platform independent method triggered by userspace.
    
    Signed-off-by: Iwona Winiarska <iwona.winiarska@intel.com>
    iklimasz authored and intel-lab-lkp committed Jan 12, 2022
  8. peci: Add device detection

    Since PECI devices are discoverable, we can dynamically detect devices
    that are actually available in the system.
    
    This change complements the earlier implementation by rescanning PECI
    bus to detect available devices. For this purpose, it also introduces the
    minimal API for PECI requests.
    
    Signed-off-by: Iwona Winiarska <iwona.winiarska@intel.com>
    Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
    iklimasz authored and intel-lab-lkp committed Jan 12, 2022
  9. peci: Add peci-aspeed controller driver

    ASPEED AST24xx/AST25xx/AST26xx SoCs support the PECI electrical
    interface (a.k.a PECI wire) that provides a communication channel with
    Intel processors.
    This driver allows BMC to discover devices connected to it and
    communicate with them using PECI protocol.
    
    Signed-off-by: Jae Hyun Yoo <jae.hyun.yoo@linux.intel.com>
    Co-developed-by: Iwona Winiarska <iwona.winiarska@intel.com>
    Signed-off-by: Iwona Winiarska <iwona.winiarska@intel.com>
    Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
    jaehyoo authored and intel-lab-lkp committed Jan 12, 2022
  10. peci: Add core infrastructure

    Intel processors provide access for various services designed to support
    processor and DRAM thermal management, platform manageability and
    processor interface tuning and diagnostics.
    Those services are available via the Platform Environment Control
    Interface (PECI) that provides a communication channel between the
    processor and the Baseboard Management Controller (BMC) or other
    platform management device.
    
    This change introduces PECI subsystem by adding the initial core module
    and API for controller drivers.
    
    Co-developed-by: Jason M Bills <jason.m.bills@linux.intel.com>
    Signed-off-by: Jason M Bills <jason.m.bills@linux.intel.com>
    Co-developed-by: Jae Hyun Yoo <jae.hyun.yoo@linux.intel.com>
    Signed-off-by: Jae Hyun Yoo <jae.hyun.yoo@linux.intel.com>
    Signed-off-by: Iwona Winiarska <iwona.winiarska@intel.com>
    Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
    iklimasz authored and intel-lab-lkp committed Jan 12, 2022
  11. ARM: dts: aspeed: Add PECI controller nodes

    Add PECI controller nodes with all required information.
    
    Co-developed-by: Jae Hyun Yoo <jae.hyun.yoo@linux.intel.com>
    Signed-off-by: Jae Hyun Yoo <jae.hyun.yoo@linux.intel.com>
    Signed-off-by: Iwona Winiarska <iwona.winiarska@intel.com>
    iklimasz authored and intel-lab-lkp committed Jan 12, 2022
  12. dt-bindings: Add bindings for peci-aspeed

    Add device tree bindings for the peci-aspeed controller driver.
    
    Co-developed-by: Jae Hyun Yoo <jae.hyun.yoo@linux.intel.com>
    Signed-off-by: Jae Hyun Yoo <jae.hyun.yoo@linux.intel.com>
    Signed-off-by: Iwona Winiarska <iwona.winiarska@intel.com>
    iklimasz authored and intel-lab-lkp committed Jan 12, 2022
  13. dt-bindings: Add generic bindings for PECI

    Add device tree bindings for the PECI controller.
    
    Signed-off-by: Iwona Winiarska <iwona.winiarska@intel.com>
    Reviewed-by: Rob Herring <robh@kernel.org>
    iklimasz authored and intel-lab-lkp committed Jan 12, 2022

Commits on Jan 10, 2022

  1. hwmon: (nzxt-smart2) make array detect_fans_report static const

    Don't populate the read-only array detect_fans_report on the stack but
    instead it static const. Also makes the object code a little smaller.
    
    Signed-off-by: Colin Ian King <colin.i.king@gmail.com>
    Link: https://lore.kernel.org/r/20220109194558.45811-1-colin.i.king@gmail.com
    Signed-off-by: Guenter Roeck <linux@roeck-us.net>
    ColinIanKing authored and groeck committed Jan 10, 2022

Commits on Dec 28, 2021

  1. hwmon: (xgene-hwmon) Add free before exiting xgene_hwmon_probe

    Call kfifo_free(&ctx->async_msg_fifo) before error exiting
    instead of returning directly.
    
    Signed-off-by: Peiwei Hu <jlu.hpw@foxmail.com>
    Link: https://lore.kernel.org/r/tencent_C851C0324431466CBC22D60C5C6AC4A8E808@qq.com
    Signed-off-by: Guenter Roeck <linux@roeck-us.net>
    PeiweiHu authored and groeck committed Dec 28, 2021
  2. hwmon: (nzxt-smart2) Fix "unused function" warning

    Fix warning when building with CONFIG_PM=n (and CONFIG_WERROR=y):
    
    drivers/hwmon/nzxt-smart2.c:707:12: error: ‘nzxt_smart2_hid_reset_resume’
    defined but not used [-Werror=unused-function]
      707 | static int nzxt_smart2_hid_reset_resume(struct hid_device *hdev)
          |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    Signed-off-by: Aleksandr Mezin <mezin.alexander@gmail.com>
    Link: https://lore.kernel.org/r/20211228014813.832491-1-mezin.alexander@gmail.com
    Signed-off-by: Guenter Roeck <linux@roeck-us.net>
    amezin authored and groeck committed Dec 28, 2021

Commits on Dec 26, 2021

  1. hwmon: (dell-smm) Pack the whole smm_regs struct

    When desiring the whole struct to be packed, __packed
    should be applied to the whole struct, not just
    every struct member except the first one.
    
    Tested on a Dell Inspiron 3505.
    
    Signed-off-by: Armin Wolf <W_Armin@gmx.de>
    Link: https://lore.kernel.org/r/20211221162805.104202-1-W_Armin@gmx.de
    Signed-off-by: Guenter Roeck <linux@roeck-us.net>
    Wer-Wolf authored and groeck committed Dec 26, 2021
  2. hwmon: (nct6775) Additional check for ChipID before ASUS WMI usage

    WMI monitoring methods can be changed or removed in new ASUS boards
    BIOS versions. Such versions return zero instead of a real one as
    Chip ID.
    
    Commit adds additional validation for the result of Chip ID call
    before enabling access by ASUS WMI methods.
    
    BugLink: https://bugzilla.kernel.org/show_bug.cgi?id=204807
    Signed-off-by: Denis Pauk <pauk.denis@gmail.com>
    Link: https://lore.kernel.org/r/20211218205206.615865-1-pauk.denis@gmail.com
    Signed-off-by: Guenter Roeck <linux@roeck-us.net>
    0lvin authored and groeck committed Dec 26, 2021
  3. hwmon: (mr75203) fix wrong power-up delay value

    In the file mr75203.c we have a macro named POWER_DELAY_CYCLE_256,
    the correct value should be 0x100. The register ip_tmr is expressed
    in units of IP clk cycles, in accordance with the datasheet.
    Typical power-up delays for Temperature Sensor are 256 cycles i.e. 0x100.
    
    Fixes: 9d82335 ("hwmon: Add hardware monitoring driver for Moortec MR75203 PVT controller")
    Signed-off-by: Arseny Demidov <a.demidov@yadro.com>
    Link: https://lore.kernel.org/r/20211219102239.1112-1-a.demidov@yadro.com
    Signed-off-by: Guenter Roeck <linux@roeck-us.net>
    arsdemal authored and groeck committed Dec 26, 2021
  4. hwmon/pmbus: (ir38064) Fix spelling mistake "comaptible" -> "compatible"

    There is a spelling mistake in the module description, fix it.
    
    Signed-off-by: Colin Ian King <colin.i.king@gmail.com>
    Link: https://lore.kernel.org/r/20211220155527.179125-1-colin.i.king@gmail.com
    Signed-off-by: Guenter Roeck <linux@roeck-us.net>
    ColinIanKing authored and groeck committed Dec 26, 2021
  5. hwmon/pmbus: (ir38064) Expose a regulator

    The chip series supported by this driver are voltage regulators, so expose
    them to the regulator subsystem.
    
    Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
    Link: https://lore.kernel.org/r/20211213142814.264802-4-arthur.heymans@9elements.com
    [groeck: Added brief patch description]
    Signed-off-by: Guenter Roeck <linux@roeck-us.net>
    PatrickRudolph authored and groeck committed Dec 26, 2021
  6. hwmon/pmbus: (ir38064) Add of_match_table

    Add the missing of_match_table to allow device tree probing.
    
    Signed-off-by: Arthur Heymans <arthur.heymans@9elements.com>
    Link: https://lore.kernel.org/r/20211213142814.264802-3-arthur.heymans@9elements.com
    Signed-off-by: Guenter Roeck <linux@roeck-us.net>
    ArthurHeymans authored and groeck committed Dec 26, 2021
  7. hwmon/pmbus: (ir38064) Add support for IR38060, IR38164 IR38263

    The IR38060, IR38164 and IR38263 can be supported using this driver.
    
    Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
    Signed-off-by: Arthur Heymans <arthur.heymans@9elements.com>
    Link: https://lore.kernel.org/r/20211213142814.264802-2-arthur.heymans@9elements.com
    Signed-off-by: Guenter Roeck <linux@roeck-us.net>
    PatrickRudolph authored and groeck committed Dec 26, 2021
  8. hwmon: add driver for NZXT RGB&Fan Controller/Smart Device v2.

    This driver implements monitoring and control of fans plugged into the
    device. Besides typical speed monitoring and PWM duty cycle control,
    voltage and current are reported for every fan.
    
    The device also has 2 connectors for RGB LEDs, support for them isn't
    implemented (mainly because there is no standardized sysfs interface).
    
    Also, the device has a noise sensor, but the sensor seems to be completely
    useless (and very imprecise), so support for it isn't implemented too.
    
    The driver coexists with userspace tools that access the device through
    hidraw interface with no known issues.
    
    The driver has been tested on x86_64, built in and as a module.
    
    Some changes/improvements were suggested by Jonas Malaco.
    
    Signed-off-by: Aleksandr Mezin <mezin.alexander@gmail.com>
    Link: https://lore.kernel.org/r/20211031033058.151014-1-mezin.alexander@gmail.com
    Signed-off-by: Guenter Roeck <linux@roeck-us.net>
    amezin authored and groeck committed Dec 26, 2021
  9. hwmon: (nct6775) add ROG STRIX B550-A/X570-I GAMING

    ASUS ROG STRIX B550-A/X570-I GAMING boards have got an nct6775 chip, but
    by default there's no use of it because of resource conflict with WMI
    method.
    
    This commit adds "ROG STRIX B550-A GAMING" and "ROG STRIX X570-I GAMING" to
    the list of boards that can be monitored using ASUS WMI.
    
    BugLink: https://bugzilla.kernel.org/show_bug.cgi?id=204807
    Signed-off-by: Denis Pauk <pauk.denis@gmail.com>
    Tested-by: Daniel Gibson <metalcaedes@gmail.com>
    Tested-by: Michael Altizer <michael@theoddone.net>
    Tested-by: Mikhail Gavrilov <mikhail.v.gavrilov@gmail.com>
    Link: https://lore.kernel.org/r/20211211180037.367062-1-pauk.denis@gmail.com
    Signed-off-by: Guenter Roeck <linux@roeck-us.net>
    0lvin authored and groeck committed Dec 26, 2021
  10. hwmon: (pmbus) Add support for MPS Multi-phase mp5023

    Add support for mp5023 device from Monolithic Power Systems, Inc. (MPS)
    vendor. This is a Hot-Swap Controller.
    
    Signed-off-by: Howard Chiu <howard.chiu@quantatw.com>
    Link: https://lore.kernel.org/r/HKAPR04MB400349AA406694FB976D78D096709@HKAPR04MB4003.apcprd04.prod.outlook.com
    [groeck: Added MODULE_IMPORT_NS, entry in index.rst]
    Signed-off-by: Guenter Roeck <linux@roeck-us.net>
    Howard.Chiu@quantatw.com authored and groeck committed Dec 26, 2021
  11. dt-bindings: add Delta AHE-50DC fan control module

    This is the integrated fan control module of the Delta AHE-50DC Open19
    power shelf.
    
    Signed-off-by: Zev Weiss <zev@bewilderbeest.net>
    Acked-by: Rob Herring <robh@kernel.org>
    Link: https://lore.kernel.org/r/20211208213703.2577-3-zev@bewilderbeest.net
    Signed-off-by: Guenter Roeck <linux@roeck-us.net>
    zevweiss authored and groeck committed Dec 26, 2021
  12. hwmon: (pmbus) Add Delta AHE-50DC fan control module driver

    This device is an integrated module of the Delta AHE-50DC Open19 power
    shelf.  I haven't been able to procure any proper documentation for
    it, but it seems to be a (somewhat minimally) PMBus-compliant device.
    It provides four fan speeds, four temperatures (three standard and one
    manufacturer-specific via a virtual second page), and a vin reading.
    
    Signed-off-by: Zev Weiss <zev@bewilderbeest.net>
    Link: https://lore.kernel.org/r/20211208213703.2577-2-zev@bewilderbeest.net
    Signed-off-by: Guenter Roeck <linux@roeck-us.net>
    zevweiss authored and groeck committed Dec 26, 2021
  13. hwmon: prefix kernel-doc comments for structs with struct

    The command ./scripts/kernel-doc -none include/linux/hwmon.h warns:
    
      include/linux/hwmon.h:406: warning: This comment starts with '/**', but
        isn't a kernel-doc comment. Refer Documentation/doc-guide/kernel-doc.rst
       * Channel information
      include/linux/hwmon.h:425: warning: This comment starts with '/**', but
        isn't a kernel-doc comment. Refer Documentation/doc-guide/kernel-doc.rst
       * Chip configuration
    
    Address those kernel-doc warnings by prefixing kernel-doc descriptions for
    structs with the keyword 'struct'.
    
    Signed-off-by: Lukas Bulwahn <lukas.bulwahn@gmail.com>
    Link: https://lore.kernel.org/r/20211216154257.26758-1-lukas.bulwahn@gmail.com
    Signed-off-by: Guenter Roeck <linux@roeck-us.net>
    bulwahn authored and groeck committed Dec 26, 2021
  14. hwmon: (ntc_thermistor) Add Samsung 1404-001221 NTC

    This adds the Samsung 1404-001221 NTC thermistor to the
    NTC thermistor driver. As far as I can tell it is electrically
    compatible with the Murata 47K NTC thermistor.
    
    This thermistor is mounted in a variety of Samsung products.
    
    Cc: Peter Rosin <peda@axentia.se>
    Cc: Chris Lesiak <chris.lesiak@licor.com>
    Cc: devicetree@vger.kernel.org
    Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
    Acked-by: Rob Herring <robh@kernel.org>
    Link: https://lore.kernel.org/r/20211215174241.1496169-1-linus.walleij@linaro.org
    Signed-off-by: Guenter Roeck <linux@roeck-us.net>
    linusw authored and groeck committed Dec 26, 2021
  15. hwmon: (ntc_thermistor) Drop OF dependency

    The driver has been augmented to just use device properties
    so the OF dependency can be dropped.
    
    Cc: Peter Rosin <peda@axentia.se>
    Cc: Chris Lesiak <chris.lesiak@licor.com>
    Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
    Link: https://lore.kernel.org/r/20211215142933.1409324-1-linus.walleij@linaro.org
    Signed-off-by: Guenter Roeck <linux@roeck-us.net>
    linusw authored and groeck committed Dec 26, 2021
  16. hwmon: (dell-smm) Unify i8k_ioctl() and i8k_ioctl_unlocked()

    The only purpose of i8k_ioctl() is to call i8k_ioctl_unlocked()
    with i8k_mutex held. Judging from the hwmon code, this mutex
    only needs to be held when setting the fan speed/mode, so
    the operation of I8K_SET_FAN is guaranteed to be atomic.
    Unify both functions and reduce the locking of i8k_mutex
    to I8K_SET_FAN.
    
    Tested on a Dell Inspiron 3505.
    
    Signed-off-by: Armin Wolf <W_Armin@gmx.de>
    Reviewed-by: Pali Rohár <pali@kernel.org>
    Link: https://lore.kernel.org/r/20211211155422.16830-3-W_Armin@gmx.de
    Signed-off-by: Guenter Roeck <linux@roeck-us.net>
    Wer-Wolf authored and groeck committed Dec 26, 2021
  17. hwmon: (dell-smm) Simplify ioctl handler

    The second switch-case has no real purpose:
    
    - for I8K_BIOS_VERSION, val does not represent a return value,
      making the check for error values unnecessary.
    - for I8K_MACHINE_ID, val remains zero, so the error check is
      unnecessary too.
    
    Remove the switch-case and move the calls to copy_to_user()
    into the first switch-case for I8K_BIOS_VERSION/_MACHINE_ID.
    Omit buff[] since data->bios_machineid already contains the string
    with the necessary zero padding through devm_kzalloc().
    
    Tested on a Dell Inspiron 3505.
    
    Signed-off-by: Armin Wolf <W_Armin@gmx.de>
    Reviewed-by: Pali Rohár <pali@kernel.org>
    Link: https://lore.kernel.org/r/20211211155422.16830-2-W_Armin@gmx.de
    Signed-off-by: Guenter Roeck <linux@roeck-us.net>
    Wer-Wolf authored and groeck committed Dec 26, 2021
  18. hwmon: (raspberrypi) Exit immediately in case of error in init

    Exit immediately if devm_hwmon_device_register_with_info()
    fails since registering a delayed work whould be useless
    in such a case anyway.
    
    Signed-off-by: Armin Wolf <W_Armin@gmx.de>
    Link: https://lore.kernel.org/r/20211211184449.18211-1-W_Armin@gmx.de
    Signed-off-by: Guenter Roeck <linux@roeck-us.net>
    Wer-Wolf authored and groeck committed Dec 26, 2021
  19. hwmon: (nct6775) delete some extension lines

    This code can fit on one line. No need to break it up.
    
    Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
    Link: https://lore.kernel.org/r/20211215114050.GB14967@kili
    Signed-off-by: Guenter Roeck <linux@roeck-us.net>
    error27 authored and groeck committed Dec 26, 2021
Older