| /linux/Documentation/ABI/stable/ |
| H A D | sysfs-driver-mlxreg-io | 1 What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/asic_health 10 What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/cpld1_version 11 What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/cpld2_version 20 What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/fan_dir 30 What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/cpld3_version 39 What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/jtag_enable 48 What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/select_iio 59 What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/psu1_on 60 /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/psu2_on 61 /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/pwr_cycle [all …]
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/ |
| H A D | hwmon.c | 4 #include <linux/hwmon.h> 10 #include "hwmon.h" 18 /* All temperatures retrieved in units of 0.125C. hwmon framework expect 86 struct mlx5_hwmon *hwmon = dev_get_drvdata(dev); in mlx5_hwmon_read() local 93 err = mlx5_hwmon_query_mtmp(hwmon->mdev, hwmon->temp_channel_desc[channel].sensor_index, in mlx5_hwmon_read() 116 struct mlx5_hwmon *hwmon = dev_get_drvdata(dev); in mlx5_hwmon_write() local 121 return mlx5_hwmon_reset_max_temp(hwmon->mdev, in mlx5_hwmon_write() 122 hwmon->temp_channel_desc[channel].sensor_index); in mlx5_hwmon_write() 147 struct mlx5_hwmon *hwmon = dev_get_drvdata(dev); in mlx5_hwmon_read_string() local 152 *str = (const char *)hwmon->temp_channel_desc[channel].sensor_name; in mlx5_hwmon_read_string() [all …]
|
| /linux/drivers/hwmon/ |
| H A D | macsmc-hwmon.c | 3 * Apple SMC hwmon driver for Apple Silicon platforms 16 * populate the required hwmon data structures at runtime. 24 #include <linux/hwmon.h> 95 struct macsmc_hwmon *hwmon = dev_get_drvdata(dev); in macsmc_hwmon_read_label() local 99 *str = hwmon->temp.sensors[channel].label; in macsmc_hwmon_read_label() 102 *str = hwmon->volt.sensors[channel].label; in macsmc_hwmon_read_label() 105 *str = hwmon->curr.sensors[channel].label; in macsmc_hwmon_read_label() 108 *str = hwmon->power.sensors[channel].label; in macsmc_hwmon_read_label() 111 *str = hwmon->fan.fans[channel].label; in macsmc_hwmon_read_label() 271 static int macsmc_hwmon_read_fan(struct macsmc_hwmon *hwmon, u32 attr, int chan, in macsmc_hwmon_read_fan() argument [all …]
|
| H A D | lan966x-hwmon.c | 5 #include <linux/hwmon.h> 79 struct lan966x_hwmon *hwmon = dev_get_drvdata(dev); in lan966x_hwmon_read_temp() local 83 ret = regmap_read(hwmon->regmap_pvt, PVT_SENSOR_STAT, &data); in lan966x_hwmon_read_temp() 98 struct lan966x_hwmon *hwmon = dev_get_drvdata(dev); in lan966x_hwmon_read_fan() local 102 ret = regmap_read(hwmon->regmap_fan, FAN_CNT, &data); in lan966x_hwmon_read_fan() 117 struct lan966x_hwmon *hwmon = dev_get_drvdata(dev); in lan966x_hwmon_read_pwm() local 121 ret = regmap_read(hwmon->regmap_fan, FAN_CFG, &data); in lan966x_hwmon_read_pwm() 132 struct lan966x_hwmon *hwmon = dev_get_drvdata(dev); in lan966x_hwmon_read_pwm_freq() local 137 ret = regmap_read(hwmon->regmap_fan, FAN_PWM_FREQ, &data); in lan966x_hwmon_read_pwm_freq() 146 tmp = DIV_ROUND_CLOSEST(hwmon->clk_rate, 256); in lan966x_hwmon_read_pwm_freq() [all …]
|
| H A D | sparx5-temp.c | 9 #include <linux/hwmon.h> 28 static void s5_temp_enable(struct s5_hwmon *hwmon) in s5_temp_enable() argument 30 u32 val = readl(hwmon->base + TEMP_CFG); in s5_temp_enable() 31 u32 clk = clk_get_rate(hwmon->clk) / USEC_PER_SEC; in s5_temp_enable() 37 writel(val, hwmon->base + TEMP_CFG); in s5_temp_enable() 43 struct s5_hwmon *hwmon = dev_get_drvdata(dev); in s5_read() local 49 stat = readl_relaxed(hwmon->base + TEMP_STAT); in s5_read() 60 * have millidegrees as specified by the hwmon sysfs in s5_read() 107 struct s5_hwmon *hwmon; in s5_temp_probe() local 109 hwmon = devm_kzalloc(&pdev->dev, sizeof(*hwmon), GFP_KERNEL); in s5_temp_probe() [all …]
|
| H A D | as370-hwmon.c | 10 #include <linux/hwmon.h> 31 static void init_pvt(struct as370_hwmon *hwmon) in init_pvt() argument 34 void __iomem *addr = hwmon->base + CTRL; in init_pvt() 50 struct as370_hwmon *hwmon = dev_get_drvdata(dev); in as370_hwmon_read() local 54 val = readl_relaxed(hwmon->base + STS) & BN_MASK; in as370_hwmon_read() 97 struct as370_hwmon *hwmon; in as370_hwmon_probe() local 100 hwmon = devm_kzalloc(dev, sizeof(*hwmon), GFP_KERNEL); in as370_hwmon_probe() 101 if (!hwmon) in as370_hwmon_probe() 104 hwmon->base = devm_platform_ioremap_resource(pdev, 0); in as370_hwmon_probe() 105 if (IS_ERR(hwmon->base)) in as370_hwmon_probe() [all …]
|
| H A D | sl28cpld-hwmon.c | 9 #include <linux/hwmon.h> 29 struct sl28cpld_hwmon *hwmon = dev_get_drvdata(dev); in sl28cpld_hwmon_read() local 35 ret = regmap_read(hwmon->regmap, hwmon->offset + FAN_INPUT, in sl28cpld_hwmon_read() 79 struct sl28cpld_hwmon *hwmon; in sl28cpld_hwmon_probe() local 86 hwmon = devm_kzalloc(&pdev->dev, sizeof(*hwmon), GFP_KERNEL); in sl28cpld_hwmon_probe() 87 if (!hwmon) in sl28cpld_hwmon_probe() 90 hwmon->regmap = dev_get_regmap(pdev->dev.parent, NULL); in sl28cpld_hwmon_probe() 91 if (!hwmon->regmap) in sl28cpld_hwmon_probe() 94 ret = device_property_read_u32(&pdev->dev, "reg", &hwmon->offset); in sl28cpld_hwmon_probe() 99 "sl28cpld_hwmon", hwmon, in sl28cpld_hwmon_probe() [all …]
|
| H A D | smpro-hwmon.c | 9 #include <linux/hwmon.h> 10 #include <linux/hwmon-sysfs.h> 207 struct smpro_hwmon *hwmon = dev_get_drvdata(dev); in smpro_read_temp() local 213 ret = regmap_read(hwmon->regmap, temperature[channel].reg, &value); in smpro_read_temp() 218 ret = regmap_read(hwmon->regmap, temperature[channel].reg_ext, &value); in smpro_read_temp() 232 struct smpro_hwmon *hwmon = dev_get_drvdata(dev); in smpro_read_in() local 238 ret = regmap_read(hwmon->regmap, voltage[channel].reg, &value); in smpro_read_in() 251 struct smpro_hwmon *hwmon = dev_get_drvdata(dev); in smpro_read_curr() local 257 ret = regmap_read(hwmon->regmap, curr_sensor[channel].reg, &value); in smpro_read_curr() 270 struct smpro_hwmon *hwmon = dev_get_drvdata(dev); in smpro_read_power() local [all …]
|
| H A D | cgbc-hwmon.c | 3 * cgbc-hwmon - Congatec Board Controller hardware monitoring driver 10 #include <linux/hwmon.h> 111 static int cgbc_hwmon_probe_sensors(struct device *dev, struct cgbc_hwmon_data *hwmon) in cgbc_hwmon_probe_sensors() argument 113 struct cgbc_device_data *cgbc = hwmon->cgbc; in cgbc_hwmon_probe_sensors() 114 struct cgbc_hwmon_sensor *sensor = hwmon->sensors; in cgbc_hwmon_probe_sensors() 124 hwmon->sensors = devm_kzalloc(dev, sizeof(*hwmon->sensors) * nb_sensors, GFP_KERNEL); in cgbc_hwmon_probe_sensors() 125 if (!hwmon->sensors) in cgbc_hwmon_probe_sensors() 128 sensor = hwmon->sensors; in cgbc_hwmon_probe_sensors() 191 hwmon->nb_sensors++; in cgbc_hwmon_probe_sensors() 197 static struct cgbc_hwmon_sensor *cgbc_hwmon_find_sensor(struct cgbc_hwmon_data *hwmon, in cgbc_hwmon_find_sensor() argument [all …]
|
| /linux/drivers/thermal/ |
| H A D | thermal_hwmon.c | 3 * thermal_hwmon.c - Generic Thermal Management hwmon support. 15 #include <linux/hwmon.h> 22 /* hwmon sys I/F */ 23 /* thermal zone devices with the same type share one hwmon device */ 41 struct thermal_hwmon_attr temp_input; /* hwmon sys attr */ 42 struct thermal_hwmon_attr temp_crit; /* hwmon sys attr */ 95 struct thermal_hwmon_device *hwmon; in thermal_hwmon_lookup_by_type() local 98 list_for_each_entry(hwmon, &thermal_hwmon_list, node) { in thermal_hwmon_lookup_by_type() 101 if (!strcmp(hwmon->type, type)) in thermal_hwmon_lookup_by_type() 102 return hwmon; in thermal_hwmon_lookup_by_type() [all …]
|
| /linux/Documentation/ABI/testing/ |
| H A D | sysfs-driver-intel-i915-hwmon | 1 What: /sys/bus/pci/drivers/i915/.../hwmon/hwmon<i>/in0_input 9 What: /sys/bus/pci/drivers/i915/.../hwmon/hwmon<i>/power1_max 23 What: /sys/bus/pci/drivers/i915/.../hwmon/hwmon<i>/power1_rated_max 31 What: /sys/bus/pci/drivers/i915/.../hwmon/hwmon<i>/power1_max_interval 40 What: /sys/bus/pci/drivers/i915/.../hwmon/hwmon<i>/power1_crit 53 What: /sys/bus/pci/drivers/i915/.../hwmon/hwmon<i>/curr1_crit 66 What: /sys/bus/pci/drivers/i915/.../hwmon/hwmon<i>/energy1_input 72 For i915 device level hwmon devices (name "i915") this 74 hwmon devices (name "i915_gtN") this reflects energy input 79 What: /sys/bus/pci/drivers/i915/.../hwmon/hwmon<i>/fan1_input [all …]
|
| H A D | sysfs-platform-dfl-fme | 110 What: /sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/name 114 Description: Read-Only. Read this file to get the name of hwmon device, it 118 'dfl_fme_thermal' thermal hwmon device name 119 'dfl_fme_power' power hwmon device name 122 What: /sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/temp1_input 129 What: /sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/temp1_max 138 What: /sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/temp1_crit 146 What: /sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/temp1_emergency 155 What: /sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/temp1_max_alarm 162 What: /sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/temp1_crit_alarm [all …]
|
| /linux/drivers/net/ethernet/sfc/ |
| H A D | mcdi_mon.c | 9 #include <linux/hwmon.h> 146 struct efx_mcdi_mon *hwmon = efx_mcdi_mon(efx); in efx_mcdi_mon_update() local 151 hwmon->dma_buf.dma_addr); in efx_mcdi_mon_update() 152 MCDI_SET_DWORD(inbuf, READ_SENSORS_EXT_IN_LENGTH, hwmon->dma_buf.len); in efx_mcdi_mon_update() 157 hwmon->last_update = jiffies; in efx_mcdi_mon_update() 165 struct efx_mcdi_mon *hwmon = efx_mcdi_mon(efx); in efx_mcdi_mon_get_entry() local 170 mutex_lock(&hwmon->update_lock); in efx_mcdi_mon_get_entry() 173 if (time_before(jiffies, hwmon->last_update + HZ)) in efx_mcdi_mon_get_entry() 179 *entry = ((efx_dword_t *)hwmon->dma_buf.addr)[index]; in efx_mcdi_mon_get_entry() 181 mutex_unlock(&hwmon->update_lock); in efx_mcdi_mon_get_entry() [all …]
|
| /linux/drivers/net/ethernet/sfc/siena/ |
| H A D | mcdi_mon.c | 9 #include <linux/hwmon.h> 146 struct efx_mcdi_mon *hwmon = efx_mcdi_mon(efx); in efx_mcdi_mon_update() local 151 hwmon->dma_buf.dma_addr); in efx_mcdi_mon_update() 152 MCDI_SET_DWORD(inbuf, READ_SENSORS_EXT_IN_LENGTH, hwmon->dma_buf.len); in efx_mcdi_mon_update() 157 hwmon->last_update = jiffies; in efx_mcdi_mon_update() 165 struct efx_mcdi_mon *hwmon = efx_mcdi_mon(efx); in efx_mcdi_mon_get_entry() local 170 mutex_lock(&hwmon->update_lock); in efx_mcdi_mon_get_entry() 173 if (time_before(jiffies, hwmon->last_update + HZ)) in efx_mcdi_mon_get_entry() 179 *entry = ((efx_dword_t *)hwmon->dma_buf.addr)[index]; in efx_mcdi_mon_get_entry() 181 mutex_unlock(&hwmon->update_lock); in efx_mcdi_mon_get_entry() [all …]
|
| /linux/drivers/net/ethernet/meta/fbnic/ |
| H A D | fbnic_hwmon.c | 4 #include <linux/hwmon.h> 63 fbd->hwmon = hwmon_device_register_with_info(fbd->dev, "fbnic", in fbnic_hwmon_register() 66 if (IS_ERR(fbd->hwmon)) { in fbnic_hwmon_register() 68 "Failed to register hwmon device %pe\n", in fbnic_hwmon_register() 69 fbd->hwmon); in fbnic_hwmon_register() 70 fbd->hwmon = NULL; in fbnic_hwmon_register() 76 if (!IS_REACHABLE(CONFIG_HWMON) || !fbd->hwmon) in fbnic_hwmon_unregister() 79 hwmon_device_unregister(fbd->hwmon); in fbnic_hwmon_unregister() 80 fbd->hwmon = NULL; in fbnic_hwmon_unregister()
|
| /linux/Documentation/devicetree/bindings/hwmon/ |
| H A D | ibm,occ-hwmon.yaml | 4 $id: http://devicetree.org/schemas/hwmon/ibm,occ-hwmon.yaml# 16 through hwmon. 21 - ibm,p9-occ-hwmon 22 - ibm,p10-occ-hwmon 36 hwmon { 37 compatible = "ibm,p10-occ-hwmon";
|
| H A D | iio-hwmon.yaml | 4 $id: http://devicetree.org/schemas/hwmon/iio-hwmon.yaml# 18 const: iio-hwmon 34 iio-hwmon { 35 compatible = "iio-hwmon";
|
| /linux/Documentation/admin-guide/laptops/ |
| H A D | alienware-wmi.rst | 39 - ``force_hwmon=1``: Forces probing for HWMON support 57 - :ref:`HWMON <hwmon>`: 89 HWMON chapter 93 of these features are exposed to user-space through the HWMON interface. 95 The name of the hwmon class device exported by this driver is "alienware_wmi" 100 grep -l "alienware_wmi" /sys/class/hwmon/hwmon*/name | sed 's|/[^/]*$||' 102 Sensor monitoring is done through the standard HWMON interface. Refer to 103 :ref:`sysfs-class-hwmon <abi_file_testing_sysfs_class_hwmon>` for more 115 through the following, custom hwmon sysfs attribute:
|
| /linux/drivers/hwmon/occ/ |
| H A D | Makefile | 2 occ-hwmon-common-objs := common.o sysfs.o 3 occ-p8-hwmon-objs := p8_i2c.o 4 occ-p9-hwmon-objs := p9_sbe.o 6 obj-$(CONFIG_SENSORS_OCC) += occ-hwmon-common.o 7 obj-$(CONFIG_SENSORS_OCC_P8_I2C) += occ-p8-hwmon.o 8 obj-$(CONFIG_SENSORS_OCC_P9_SBE) += occ-p9-hwmon.o
|
| /linux/tools/perf/util/ |
| H A D | hwmon_pmu.h | 14 * As described in Documentation/hwmon/sysfs-interface.rst hwmon events are 100 * Related hwmon files start <type><number> that this key represents. 119 * @item: A hwmon <type><number> may have multiple associated items. 122 * An example of a hwmon filename is "temp1_input". The type is temp for a 135 * hwmon_pmu__new() - Allocate and construct a hwmon PMU. 138 * @hwmon_dir: The path to a hwmon directory. 139 * @sysfs_name: Name of the hwmon sysfs directory like hwmon0. 140 * @name: The contents of the "name" file in the hwmon directory.
|
| /linux/tools/perf/tests/ |
| H A D | hwmon_pmu.c | 63 * /sys/class/hwmon/hwmon<number>/. Give as input a buffer to hold the file in test_pmu_get() 68 const char *test_hwmon_name_nl = "A test hwmon PMU\n"; in test_pmu_get() 69 const char *test_hwmon_name = "A test hwmon PMU"; in test_pmu_get() 70 /* Simulated hwmon items. */ in test_pmu_get() 75 { "temp1_label", "test hwmon event1\n", }, in test_pmu_get() 77 { "temp2_label", "test hwmon event2\n", }, in test_pmu_get() 85 scnprintf(dir, sz, "/tmp/perf-hwmon-pmu-test-XXXXXX"); in test_pmu_get() 97 /* Create the test hwmon directory and give it a name. */ in test_pmu_get() 99 pr_err("Failed to mkdir hwmon director in test_pmu_get() [all...] |
| /linux/arch/arm64/boot/dts/renesas/ |
| H A D | r8a779g3-sparrow-hawk-fan-argon40.dtso | 10 * # Localize hwmon sysfs directory that matches the PWM fan, 12 * r8a779g3-sparrow-hawk$ ls -1 /sys/devices/platform/pwm-fan-ext/hwmon/hwmon?/pwm?_enable 13 * /sys/devices/platform/pwm-fan-ext/hwmon/hwmon0/pwm1_enable 16 * # For details, see Linux Documentation/hwmon/pwm-fan.rst 17 * r8a779g3-sparrow-hawk$ echo 2 > /sys/devices/platform/pwm-fan-ext/hwmon/hwmon0/pwm1_enable 21 * r8a779g3-sparrow-hawk$ echo 101 > /sys/devices/platform/pwm-fan-ext/hwmon/hwmon0/pwm1
|
| /linux/drivers/net/ethernet/mellanox/mlxsw/ |
| H A D | core_hwmon.c | 8 #include <linux/hwmon.h> 46 struct mlxsw_hwmon *hwmon; member 72 struct mlxsw_hwmon *mlxsw_hwmon = mlxsw_hwmon_dev->hwmon; in mlxsw_hwmon_temp_show() 97 struct mlxsw_hwmon *mlxsw_hwmon = mlxsw_hwmon_dev->hwmon; in mlxsw_hwmon_temp_max_show() 122 struct mlxsw_hwmon *mlxsw_hwmon = mlxsw_hwmon_dev->hwmon; in mlxsw_hwmon_temp_rst_store() 159 struct mlxsw_hwmon *mlxsw_hwmon = mlxsw_hwmon_dev->hwmon; in mlxsw_hwmon_fan_rpm_show() 179 struct mlxsw_hwmon *mlxsw_hwmon = mlxsw_hwmon_dev->hwmon; in mlxsw_hwmon_fan_fault_show() 201 struct mlxsw_hwmon *mlxsw_hwmon = mlxsw_hwmon_dev->hwmon; in mlxsw_hwmon_pwm_show() 222 struct mlxsw_hwmon *mlxsw_hwmon = mlxsw_hwmon_dev->hwmon; in mlxsw_hwmon_pwm_store() 249 struct mlxsw_hwmon *mlxsw_hwmon = mlxsw_hwmon_dev->hwmon; in mlxsw_hwmon_module_temp_get() 791 struct mlxsw_hwmon *hwmon = priv; mlxsw_hwmon_got_active() local 839 struct mlxsw_hwmon *hwmon = priv; mlxsw_hwmon_got_inactive() local [all...] |
| /linux/drivers/gpu/drm/nouveau/ |
| H A D | nouveau_hwmon.c | 29 #include <linux/hwmon.h> 30 #include <linux/hwmon-sysfs.h> 671 struct nouveau_hwmon *hwmon; in nouveau_hwmon_init() local 677 NV_DEBUG(drm, "Skipping hwmon registration\n"); in nouveau_hwmon_init() 681 hwmon = drm->hwmon = kzalloc_obj(*hwmon); in nouveau_hwmon_init() 682 if (!hwmon) in nouveau_hwmon_init() 684 hwmon->dev = dev; in nouveau_hwmon_init() 699 NV_ERROR(drm, "Unable to register hwmon device: %d\n", ret); in nouveau_hwmon_init() 703 hwmon->hwmon = hwmon_dev; in nouveau_hwmon_init() 714 struct nouveau_hwmon *hwmon = nouveau_hwmon(dev); in nouveau_hwmon_fini() local [all …]
|
| /linux/Documentation/hwmon/ |
| H A D | hwmon-kernel-api.rst | 12 This document does not describe what a hardware monitoring (hwmon) Driver or 15 then please read the following file: Documentation/hwmon/sysfs-interface.rst. 17 For additional guidelines on how to write and improve hwmon drivers, please 18 also read Documentation/hwmon/submitting-patches.rst. 22 Each hardware monitoring driver must #include <linux/hwmon.h> and, in some 23 cases, <linux/hwmon-sysfs.h>. linux/hwmon.h declares the following 60 hwmon device does not have to be removed explicitly by the removal function. 71 All supported hwmon device registration functions only accept valid device 98 condition) occurs or clears. The parameters are the hwmon device, the sensor 140 The list of hwmon operations is defined as:: [all …]
|