/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/gpu/drm/xe/ |
H A D | xe_hwmon.c | 6 #include <linux/hwmon-sysfs.h> 7 #include <linux/hwmon.h> 63 * SF_* - scale factors for particular quantities according to hwmon spec. 72 * PL*_HWMON_ATTR - mapping of hardware power limits to corresponding hwmon power attribute. 104 * struct xe_hwmon - xe hwmon data structure 107 /** @hwmon_dev: hwmon device for xe */ 129 static int xe_hwmon_pcode_read_power_limit(const struct xe_hwmon *hwmon, u32 attr, int channel, in xe_hwmon_pcode_read_power_limit() argument 132 struct xe_tile *root_tile = xe_device_get_root_tile(hwmon->xe); in xe_hwmon_pcode_read_power_limit() 140 hwmon->boot_power_limit_read ? in xe_hwmon_pcode_read_power_limit() 145 drm_dbg(&hwmon->xe->drm, "read failed ch %d val0 0x%08x, val1 0x%08x, ret %d\n", in xe_hwmon_pcode_read_power_limit() [all …]
|
/linux/drivers/gpu/drm/i915/ |
H A D | i915_hwmon.c | 6 #include <linux/hwmon.h> 7 #include <linux/hwmon-sysfs.h> 21 * SF_* - scale factors for particular quantities according to hwmon spec. 56 struct i915_hwmon *hwmon; member 81 struct i915_hwmon *hwmon = ddat->hwmon; in hwm_locked_with_pm_intel_uncore_rmw() local 86 mutex_lock(&hwmon->hwmon_lock); in hwm_locked_with_pm_intel_uncore_rmw() 90 mutex_unlock(&hwmon->hwmon_lock); in hwm_locked_with_pm_intel_uncore_rmw() 130 * the hwmon API. Using x86_64 128 bit arithmetic (see mul_u64_u32_shr()), 132 * hwmon->scl_shift_energy of 14 bits we have 57 (63 - 20 + 14) bits before 139 struct i915_hwmon *hwmon = ddat->hwmon; in hwm_energy() local [all …]
|
/linux/Documentation/ABI/testing/ |
H A D | sysfs-class-hwmon | 1 What: /sys/class/hwmon/hwmonX/name 12 What: /sys/class/hwmon/hwmonX/label 20 What: /sys/class/hwmon/hwmonX/update_interval 30 What: /sys/class/hwmon/hwmonX/inY_min 38 What: /sys/class/hwmon/hwmonX/inY_lcrit 50 What: /sys/class/hwmon/hwmonX/inY_max 58 What: /sys/class/hwmon/hwmonX/inY_crit 70 What: /sys/class/hwmon/hwmonX/inY_input 92 What: /sys/class/hwmon/hwmonX/inY_average 100 What: /sys/class/hwmon/hwmonX/inY_lowest [all …]
|
H A D | sysfs-driver-intel-xe-hwmon | 1 What: /sys/bus/pci/drivers/xe/.../hwmon/hwmon<i>/power1_max 15 What: /sys/bus/pci/drivers/xe/.../hwmon/hwmon<i>/power1_rated_max 24 What: /sys/bus/pci/drivers/xe/.../hwmon/hwmon<i>/energy1_input 32 What: /sys/bus/pci/drivers/xe/.../hwmon/hwmon<i>/power1_max_interval 41 What: /sys/bus/pci/drivers/xe/.../hwmon/hwmon<i>/power2_max 55 What: /sys/bus/pci/drivers/xe/.../hwmon/hwmon<i>/power2_rated_max 63 What: /sys/bus/pci/drivers/xe/.../hwmon/hwmon<i>/power1_crit 76 What: /sys/bus/pci/drivers/xe/.../hwmon/hwmon<i>/curr1_crit 87 What: /sys/bus/pci/drivers/xe/.../hwmon/hwmon<i>/energy2_input 95 What: /sys/bus/pci/drivers/xe/.../hwmon/hwmon<i>/power2_max_interval [all …]
|
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/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 */ 94 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() 103 return hwmon; in thermal_hwmon_lookup_by_type() [all …]
|
/linux/drivers/hwmon/ |
H A D | nsa320-hwmon.c | 3 * drivers/hwmon/nsa320-hwmon.c 17 #include <linux/hwmon.h> 18 #include <linux/hwmon-sysfs.h> 29 * The Zyxel hwmon MCU is a Holtek HT46R065 that is factory programmed 70 struct nsa320_hwmon *hwmon = dev_get_drvdata(dev); in nsa320_hwmon_update() local 72 mutex_lock(&hwmon->update_lock); in nsa320_hwmon_update() 74 mcu_data = hwmon->mcu_data; in nsa320_hwmon_update() 76 if (time_after(jiffies, hwmon->last_updated + HZ) || mcu_data == 0) { in nsa320_hwmon_update() 77 gpiod_set_value(hwmon->act, 1); in nsa320_hwmon_update() 82 gpiod_set_value(hwmon->clk, 0); in nsa320_hwmon_update() [all …]
|
H A D | da9055-hwmon.c | 3 * HWMON Driver for Dialog DA9055 12 #include <linux/hwmon.h> 13 #include <linux/hwmon-sysfs.h> 55 static int da9055_adc_manual_read(struct da9055_hwmon *hwmon, in da9055_adc_manual_read() argument 62 struct da9055 *da9055 = hwmon->da9055; in da9055_adc_manual_read() 67 mutex_lock(&hwmon->irq_lock); in da9055_adc_manual_read() 77 if (!wait_for_completion_timeout(&hwmon->done, in da9055_adc_manual_read() 102 mutex_unlock(&hwmon->irq_lock); in da9055_adc_manual_read() 108 struct da9055_hwmon *hwmon = irq_data; in da9055_auxadc_irq() local 110 complete(&hwmon->done); in da9055_auxadc_irq() [all …]
|
H A D | lan966x-hwmon.c | 5 #include <linux/hwmon.h> 80 struct lan966x_hwmon *hwmon = dev_get_drvdata(dev); in lan966x_hwmon_read_temp() local 84 ret = regmap_read(hwmon->regmap_pvt, PVT_SENSOR_STAT, &data); in lan966x_hwmon_read_temp() 99 struct lan966x_hwmon *hwmon = dev_get_drvdata(dev); in lan966x_hwmon_read_fan() local 103 ret = regmap_read(hwmon->regmap_fan, FAN_CNT, &data); in lan966x_hwmon_read_fan() 118 struct lan966x_hwmon *hwmon = dev_get_drvdata(dev); in lan966x_hwmon_read_pwm() local 122 ret = regmap_read(hwmon->regmap_fan, FAN_CFG, &data); in lan966x_hwmon_read_pwm() 133 struct lan966x_hwmon *hwmon = dev_get_drvdata(dev); in lan966x_hwmon_read_pwm_freq() local 138 ret = regmap_read(hwmon->regmap_fan, FAN_PWM_FREQ, &data); in lan966x_hwmon_read_pwm_freq() 147 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> 29 static void s5_temp_enable(struct s5_hwmon *hwmon) in s5_temp_enable() argument 31 u32 val = readl(hwmon->base + TEMP_CFG); in s5_temp_enable() 32 u32 clk = clk_get_rate(hwmon->clk) / USEC_PER_SEC; in s5_temp_enable() 38 writel(val, hwmon->base + TEMP_CFG); in s5_temp_enable() 44 struct s5_hwmon *hwmon = dev_get_drvdata(dev); in s5_read() local 50 stat = readl_relaxed(hwmon->base + TEMP_STAT); in s5_read() 61 * have millidegrees as specified by the hwmon sysfs in s5_read() 108 struct s5_hwmon *hwmon; in s5_temp_probe() local 110 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> 32 static void init_pvt(struct as370_hwmon *hwmon) in init_pvt() argument 35 void __iomem *addr = hwmon->base + CTRL; in init_pvt() 51 struct as370_hwmon *hwmon = dev_get_drvdata(dev); in as370_hwmon_read() local 55 val = readl_relaxed(hwmon->base + STS) & BN_MASK; in as370_hwmon_read() 98 struct as370_hwmon *hwmon; in as370_hwmon_probe() local 101 hwmon = devm_kzalloc(dev, sizeof(*hwmon), GFP_KERNEL); in as370_hwmon_probe() 102 if (!hwmon) in as370_hwmon_probe() 105 hwmon->base = devm_platform_ioremap_resource(pdev, 0); in as370_hwmon_probe() 106 if (IS_ERR(hwmon->base)) in as370_hwmon_probe() [all …]
|
H A D | smpro-hwmon.c | 9 #include <linux/hwmon.h> 10 #include <linux/hwmon-sysfs.h> 208 struct smpro_hwmon *hwmon = dev_get_drvdata(dev); in smpro_read_temp() local 214 ret = regmap_read(hwmon->regmap, temperature[channel].reg, &value); in smpro_read_temp() 219 ret = regmap_read(hwmon->regmap, temperature[channel].reg_ext, &value); in smpro_read_temp() 233 struct smpro_hwmon *hwmon = dev_get_drvdata(dev); in smpro_read_in() local 239 ret = regmap_read(hwmon->regmap, voltage[channel].reg, &value); in smpro_read_in() 252 struct smpro_hwmon *hwmon = dev_get_drvdata(dev); in smpro_read_curr() local 258 ret = regmap_read(hwmon->regmap, curr_sensor[channel].reg, &value); in smpro_read_curr() 271 struct smpro_hwmon *hwmon = dev_get_drvdata(dev); in smpro_read_power() local [all …]
|
/linux/arch/arm64/boot/dts/renesas/ |
H A D | r8a779g3-sparrow-hawk-fan-pwm.dtso | 10 * # Localize hwmon sysfs directory that matches the PWM fan, 12 * r8a779g3-sparrow-hawk$ grep -H . /sys/class/hwmon/hwmon?/name 13 * /sys/class/hwmon/hwmon0/name:sensor1_thermal 14 * /sys/class/hwmon/hwmon1/name:sensor2_thermal 15 * /sys/class/hwmon/hwmon2/name:sensor3_thermal 16 * /sys/class/hwmon/hwmon3/name:sensor4_thermal 17 * /sys/class/hwmon/hwmon4/name:pwmfan 21 * # For details, see Linux Documentation/hwmon/pwm-fan.rst 22 * r8a779g3-sparrow-hawk$ echo 2 > /sys/class/hwmon/hwmon4/pwm1_enable 26 * r8a779g3-sparrow-hawk$ echo 101 > /sys/class/hwmon/hwmon4/pwm1 [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/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/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";
|
/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/arch/arm/boot/dts/aspeed/ |
H A D | aspeed-bmc-opp-mowgli.dts | 180 iio-hwmon-12v { 181 compatible = "iio-hwmon"; 185 iio-hwmon-5v { 186 compatible = "iio-hwmon"; 190 iio-hwmon-3v { 191 compatible = "iio-hwmon"; 195 iio-hwmon-vdd { 196 compatible = "iio-hwmon"; 200 iio-hwmon-vcs { 201 compatible = "iio-hwmon"; [all …]
|
/linux/tools/perf/tests/ |
H A D | hwmon_pmu.c | 57 * /sys/class/hwmon/hwmon<number>/. Give as input a buffer to hold the file in test_pmu_get() 62 const char *test_hwmon_name_nl = "A test hwmon PMU\n"; in test_pmu_get() 63 const char *test_hwmon_name = "A test hwmon PMU"; in test_pmu_get() 64 /* Simulated hwmon items. */ in test_pmu_get() 69 { "temp1_label", "test hwmon event1\n", }, in test_pmu_get() 71 { "temp2_label", "test hwmon event2\n", }, in test_pmu_get() 79 scnprintf(dir, sz, "/tmp/perf-hwmon-pmu-test-XXXXXX"); in test_pmu_get() 91 /* Create the test hwmon directory and give it a name. */ in test_pmu_get() 93 pr_err("Failed to mkdir hwmon director in test_pmu_get() [all...] |
/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() [all …]
|