Received: by 2002:a05:6a10:d5a5:0:0:0:0 with SMTP id gn37csp2441968pxb; Fri, 8 Oct 2021 07:55:23 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwwd0bsc5hsiOiYVLozUsiyBoBJVSmMqbCzcdOCE8cTmnjAzdOWVjDJnLADDPKoQbnS49Qw X-Received: by 2002:a50:d50c:: with SMTP id u12mr15648727edi.118.1633704923636; Fri, 08 Oct 2021 07:55:23 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1633704923; cv=none; d=google.com; s=arc-20160816; b=hcVNyKqKKepj+LP/ECUy6g5DdNZQ84BD3DZwn8OI8R7/SrkPCnM+JSn1lekzaaubXG J6A6wHt93SnhzKrVIVBeplA2LlY/dvN2tQmvaWxyEi1/SWArVje0i6zkMbhEFSr9ipNB TFcEvRsFIohb1BHJaQbLRRvENf3heVKFw3p5oLXMsBgDcEqY3MxIwdP9FAo1Dt4fwc1r O4SaUCYl7HyiTDOUQ5lSD+DdKhPNEH34w9nAsect3lvYg3BJLkMWCHJmetdaJMN/NN/N ZFt24l1Lak00xPQ/wxQcNHdHfplyDh6mbYGxLxDDgbTjcuOUXk1DWifFOWACEERVQaTA y2AA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:content-language :in-reply-to:mime-version:user-agent:date:message-id:subject:from :references:cc:to:sender:dkim-signature; bh=/A4OCBBfiXONjLFv86qfj3pHw8NjBMuE2ZOu4O20mU4=; b=FC5iYBSv8lvMEvpJ3LfbJkW2ORKBmqJQQ0l0IFw/6BQZq2jBr0dx9tci1fqshcI4vh o4yjIZghGNC+ymI7nbjcl1FQH9Q48wc3/tNkzRiXOAT7KxuvOKcXxZYWxKZ6yVuCpqgQ nLMaZSMRJHgpZw7xJirOvA+awkc+zEjOlJDg8Kc9ohr7fn6BG+rZOdLB6fLuE9MmmRCw jOyKvWEaLpBcUikbjn1zpWVjVJ1D0H+InFvEp64435hp60r0caOs4NX2SzwNd3KEzcad fJTIKrvbhbqmTNLAMAvl7voJz9vzQTlGxplKJHOJAgiTRF49aap+LOcr2mbq7YEsEAmn BSbA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=Oc6ws07E; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id f5si3256519ejj.587.2021.10.08.07.54.59; Fri, 08 Oct 2021 07:55:23 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=Oc6ws07E; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S242577AbhJHOzV (ORCPT + 99 others); Fri, 8 Oct 2021 10:55:21 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:52614 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S242700AbhJHOzT (ORCPT ); Fri, 8 Oct 2021 10:55:19 -0400 Received: from mail-oi1-x22d.google.com (mail-oi1-x22d.google.com [IPv6:2607:f8b0:4864:20::22d]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id EF0D1C061762; Fri, 8 Oct 2021 07:53:23 -0700 (PDT) Received: by mail-oi1-x22d.google.com with SMTP id s24so14060277oij.8; Fri, 08 Oct 2021 07:53:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=sender:to:cc:references:from:subject:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=/A4OCBBfiXONjLFv86qfj3pHw8NjBMuE2ZOu4O20mU4=; b=Oc6ws07EG0kbKkQsg9OdIdH3rGbIuQoZB4jFY7FZCAmYgcczTB5taSzKgJqT/rtagH DXlh5ems/gxC1C7ZkfjHFPatWlJY9sTKfWDzCQQtLnDKC1XF24zyYGNw0MX+L0YgHNLd vNcD/RYqVsHHzEkbhU816IArbaesTqNwlkzJoQIpd/kfXwGy7i86w3OwNBOaTPdPrJPu l+dcE/KZc4HkYIqg2kAKEw89cgLiSMJj51xDUMKhe/TvUf5p9urkGqcDcTRGmc2i03Vc 0Sm/XoN1Ajc7ln5uVAzZzrDj2dogTxLSdOE538ZoNP+RwMH67kaah0tNPsBJ/ffscqY+ JHHw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:sender:to:cc:references:from:subject:message-id :date:user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=/A4OCBBfiXONjLFv86qfj3pHw8NjBMuE2ZOu4O20mU4=; b=Kj5u0pL7vWq77f5k1ivVV1kT+vZK2LhaONBQyOC7JcpcD7ANrU/6aHtC3tNo53tk+V RYhmkFxbK6lFmtIvCPxxF4DCJK3jVWI6k7OkjUbUyiSJK3G/+RUCwBLemq8eY9IyT3rZ zpZ8osMeDxFV6sMFgYlN28JgcFeR4CSirDQkCkj1IbybWi2/eapruQQTESilZ7/FUWWz /rhSIYOsPfSjgNwR2xnoxokrxVisc6sEz5OnlJ7PVxJmIRxZeLxt3E77PL+79j+qj7gy whiBRsqQcA47eMeIcqu20wBCQ0NcIqTDMhRKi4Vo9aEkXI6C+/w9T1TLtoTgyC9n/ZbY 580w== X-Gm-Message-State: AOAM5322/BWHNzEW2NC8Xcn9l9UlQPmuiizOItOIcdtPpcc05RJcKIt+ KHrHqwI0BbOBU2UCOAGqypJ5rZv1AVo= X-Received: by 2002:aca:7c3:: with SMTP id 186mr8352990oih.60.1633704802091; Fri, 08 Oct 2021 07:53:22 -0700 (PDT) Received: from server.roeck-us.net ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id o8sm600838otk.76.2021.10.08.07.53.20 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 08 Oct 2021 07:53:21 -0700 (PDT) Sender: Guenter Roeck To: Mauro Carvalho Chehab , Linux Doc Mailing List , Greg Kroah-Hartman Cc: Jonathan Corbet , Jean Delvare , linux-hwmon@vger.kernel.org, linux-kernel@vger.kernel.org References: <5f47619ed882b0b8d1c84b56f7ea17bac0854b77.1632994837.git.mchehab+huawei@kernel.org> From: Guenter Roeck Subject: Re: [PATCH v2 2/7] ABI: sysfs-class-hwmon: add ABI documentation for it Message-ID: <2ab1183f-f6f0-5bd5-d389-849c0a9bc214@roeck-us.net> Date: Fri, 8 Oct 2021 07:53:19 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.13.0 MIME-Version: 1.0 In-Reply-To: <5f47619ed882b0b8d1c84b56f7ea17bac0854b77.1632994837.git.mchehab+huawei@kernel.org> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 9/30/21 2:44 AM, Mauro Carvalho Chehab wrote: > Move the ABI attributes documentation from: > Documentation/hwmon/sysfs-interface.rst > The patche moves th documentation; it doesn't add it. That should be reflected in the subject. > in order for it to follow the usual ABI documentation. That > allows script/get_abi.pl to properly handle it. > > Signed-off-by: Mauro Carvalho Chehab > --- > > See [PATCH v2 0/7] at: https://lore.kernel.org/all/cover.1632994837.git.mchehab+huawei@kernel.org/ > > Documentation/ABI/testing/sysfs-class-hwmon | 918 ++++++++++++++++++++ > Documentation/hwmon/sysfs-interface.rst | 596 +------------ > MAINTAINERS | 1 + > 3 files changed, 961 insertions(+), 554 deletions(-) > create mode 100644 Documentation/ABI/testing/sysfs-class-hwmon > > diff --git a/Documentation/ABI/testing/sysfs-class-hwmon b/Documentation/ABI/testing/sysfs-class-hwmon > new file mode 100644 > index 000000000000..ea5a129ae082 > --- /dev/null > +++ b/Documentation/ABI/testing/sysfs-class-hwmon > @@ -0,0 +1,918 @@ > +What: /sys/class/hwmon/hwmonX/name > +Description: > + The chip name. > + This should be a short, lowercase string, not containing > + whitespace, dashes, or the wildcard character '*'. > + This attribute represents the chip name. It is the only > + mandatory attribute. > + I2C devices get this attribute created automatically. The above sentence is obsolete and should be removed. The name attribute is generated automatically for all non-obsolete APIs. > + > + RO > + > +What: /sys/class/hwmon/hwmonX/update_interval > +Description: > + The interval at which the chip will update readings. > + Unit: millisecond > + > + RW > + > + Some devices have a variable update rate or interval. > + This attribute can be used to change it to the desired value. > + > +What: /sys/class/hwmon/hwmonX/inY_min > +Description: > + Voltage min value. > + > + Unit: millivolt > + > + RW > + The range of "Y" gets lost in those definitions. They are still retained in the original file, so maybe tit doesn't matter. It seems a bit incomplete, though. > +What: /sys/class/hwmon/hwmonX/inY_lcrit > +Description: > + Voltage critical min value. > + > + Unit: millivolt > + > + RW > + > + If voltage drops to or below this limit, the system may > + take drastic action such as power down or reset. At the very > + least, it should report a fault. > + > +What: /sys/class/hwmon/hwmonX/inY_max > +Description: > + Voltage max value. > + > + Unit: millivolt > + > + RW > + > +What: /sys/class/hwmon/hwmonX/inY_crit > +Description: > + Voltage critical max value. > + > + Unit: millivolt > + > + RW > + > + If voltage reaches or exceeds this limit, the system may > + take drastic action such as power down or reset. At the very > + least, it should report a fault. > + > +What: /sys/class/hwmon/hwmonX/inY_input > +Description: > + Voltage input value. > + > + Unit: millivolt > + > + RO > + > + Voltage measured on the chip pin. > + > + Actual voltage depends on the scaling resistors on the > + motherboard, as recommended in the chip datasheet. > + > + This varies by chip and by motherboard. > + Because of this variation, values are generally NOT scaled > + by the chip driver, and must be done by the application. > + However, some drivers (notably lm87 and via686a) > + do scale, because of internal resistors built into a chip. > + These drivers will output the actual voltage. Rule of > + thumb: drivers should report the voltage values at the > + "pins" of the chip. > + > +What: /sys/class/hwmon/hwmonX/inY_average > +Description: > + Average voltage > + > + Unit: millivolt > + > + RO > + > +What: /sys/class/hwmon/hwmonX/inY_lowest > +Description: > + Historical minimum voltage > + > + Unit: millivolt > + > + RO > + > +What: /sys/class/hwmon/hwmonX/inY_highest > +Description: > + Historical maximum voltage > + > + Unit: millivolt > + > + RO > + > +What: /sys/class/hwmon/hwmonX/inY_reset_history > +Description: > + Reset inX_lowest and inX_highest > + > + WO > + > +What: /sys/class/hwmon/hwmonX/in_reset_history > +Description: > + Reset inX_lowest and inX_highest for all sensors > + > + WO > + > +What: /sys/class/hwmon/hwmonX/inY_label > +Description: > + Suggested voltage channel label. > + > + Text string > + > + Should only be created if the driver has hints about what > + this voltage channel is being used for, and user-space > + doesn't. In all other cases, the label is provided by > + user-space. > + > + RO > + > +What: /sys/class/hwmon/hwmonX/inY_enable > +Description: > + Enable or disable the sensors. > + > + When disabled the sensor read will return -ENODATA. > + > + - 1: Enable > + - 0: Disable > + > + RW > + > +What: /sys/class/hwmon/hwmonX/cpuY_vid > +Description: > + CPU core reference voltage. > + > + Unit: millivolt > + > + RO > + > + Not always correct. > + > +What: /sys/class/hwmon/hwmonX/vrm > +Description: > + Voltage Regulator Module version number. > + > + RW (but changing it should no more be necessary) > + > + Originally the VRM standard version multiplied by 10, but now > + an arbitrary number, as not all standards have a version > + number. > + > + Affects the way the driver calculates the CPU core reference > + voltage from the vid pins. > + > +What: /sys/class/hwmon/hwmonX/inY_rated_min > +Description: > + Minimum rated voltage. > + > + Unit: millivolt > + > + RO > + > +What: /sys/class/hwmon/hwmonX/inY_rated_max > +Description: > + Maximum rated voltage. > + > + Unit: millivolt > + > + RO > + > +What: /sys/class/hwmon/hwmonX/fanY_min > +Description: > + Fan minimum value > + > + Unit: revolution/min (RPM) > + > + RW > + > +What: /sys/class/hwmon/hwmonX/fanY_max > +Description: > + Fan maximum value > + > + Unit: revolution/min (RPM) > + > + Only rarely supported by the hardware. > + RW > + > +What: /sys/class/hwmon/hwmonX/fanY_input > +Description: > + Fan input value. > + > + Unit: revolution/min (RPM) > + > + RO > + > +What: /sys/class/hwmon/hwmonX/fanY_div > +Description: > + Fan divisor. > + > + Integer value in powers of two (1, 2, 4, 8, 16, 32, 64, 128). > + > + RW > + > + Some chips only support values 1, 2, 4 and 8. > + Note that this is actually an internal clock divisor, which > + affects the measurable speed range, not the read value. > + > +What: /sys/class/hwmon/hwmonX/fanY_pulses > +Description: > + Number of tachometer pulses per fan revolution. > + > + Integer value, typically between 1 and 4. > + > + RW > + > + This value is a characteristic of the fan connected to the > + device's input, so it has to be set in accordance with the fan > + model. > + > + Should only be created if the chip has a register to configure > + the number of pulses. In the absence of such a register (and > + thus attribute) the value assumed by all devices is 2 pulses > + per fan revolution. > + > +What: /sys/class/hwmon/hwmonX/fanY_target > +Description: > + Desired fan speed > + > + Unit: revolution/min (RPM) > + > + RW > + > + Only makes sense if the chip supports closed-loop fan speed > + control based on the measured fan speed. > + > +What: /sys/class/hwmon/hwmonX/fanY_label > +Description: > + Suggested fan channel label. > + > + Text string > + > + Should only be created if the driver has hints about what > + this fan channel is being used for, and user-space doesn't. > + In all other cases, the label is provided by user-space. > + > + RO > + > +What: /sys/class/hwmon/hwmonX/fanY_enable > +Description: > + Enable or disable the sensors. > + > + When disabled the sensor read will return -ENODATA. > + > + - 1: Enable > + - 0: Disable > + > + RW > + > +What: /sys/class/hwmon/hwmonX/pwmY > +Description: > + Pulse width modulation fan control. > + > + Integer value in the range 0 to 255 > + > + RW > + > + 255 is max or 100%. > + > +What: /sys/class/hwmon/hwmonX/pwmY_enable > +Description: > + Fan speed control method: > + > + - 0: no fan speed control (i.e. fan at full speed) > + - 1: manual fan speed control enabled (using `pwmY`) > + - 2+: automatic fan speed control enabled > + > + Check individual chip documentation files for automatic mode > + details. > + > + RW > + > +What: /sys/class/hwmon/hwmonX/pwmY_mode > +Description: > + - 0: DC mode (direct current) > + - 1: PWM mode (pulse-width modulation) > + > + RW > + > +What: /sys/class/hwmon/hwmonX/pwmY_freq > +Description: > + Base PWM frequency in Hz. > + > + Only possibly available when pwmN_mode is PWM, but not always > + present even then. > + > + RW > + > +What: /sys/class/hwmon/hwmonX/pwmY_auto_channels_temp > +Description: > + Select which temperature channels affect this PWM output in > + auto mode. > + > + Bitfield, 1 is temp1, 2 is temp2, 4 is temp3 etc... > + Which values are possible depend on the chip used. > + > + RW > + > +What: /sys/class/hwmon/hwmonX/pwmY_auto_pointZ_pwm > +What: /sys/class/hwmon/hwmonX/pwmY_auto_pointZ_temp > +What: /sys/class/hwmon/hwmonX/pwmY_auto_pointZ_temp_hyst > +Description: > + Define the PWM vs temperature curve. > + > + Number of trip points is chip-dependent. Use this for chips > + which associate trip points to PWM output channels. > + > + RW > + > +What: /sys/class/hwmon/hwmonX/tempY_auto_pointZ_pwm > +What: /sys/class/hwmon/hwmonX/tempY_auto_pointZ_temp > +What: /sys/class/hwmon/hwmonX/tempY_auto_pointZ_temp_hyst > +Description: > + Define the PWM vs temperature curve. > + > + Number of trip points is chip-dependent. Use this for chips > + which associate trip points to temperature channels. > + > + RW > + > +What: /sys/class/hwmon/hwmonX/tempY_type > +Description: > + Sensor type selection. > + > + Integers 1 to 6 > + > + RW > + > + - 1: CPU embedded diode > + - 2: 3904 transistor > + - 3: thermal diode > + - 4: thermistor > + - 5: AMD AMDSI > + - 6: Intel PECI > + > + Not all types are supported by all chips > + > +What: /sys/class/hwmon/hwmonX/tempY_max > +Description: > + Temperature max value. > + > + Unit: millidegree Celsius (or millivolt, see below) > + > + RW > + > +What: /sys/class/hwmon/hwmonX/tempY_min > +Description: > + Temperature min value. > + > + Unit: millidegree Celsius > + > + RW > + > +What: /sys/class/hwmon/hwmonX/tempY_max_hyst > +Description: > + Temperature hysteresis value for max limit. > + > + Unit: millidegree Celsius > + > + Must be reported as an absolute temperature, NOT a delta > + from the max value. > + > + RW > + > +What: /sys/class/hwmon/hwmonX/tempY_min_hyst > +Description: > + Temperature hysteresis value for min limit. > + Unit: millidegree Celsius > + > + Must be reported as an absolute temperature, NOT a delta > + from the min value. > + > + RW > + > +What: /sys/class/hwmon/hwmonX/tempY_input > +Description: > + Temperature input value. > + > + Unit: millidegree Celsius > + > + RO > + > +What: /sys/class/hwmon/hwmonX/tempY_crit > +Description: > + Temperature critical max value, typically greater than > + corresponding temp_max values. > + > + Unit: millidegree Celsius > + > + RW > + > +What: /sys/class/hwmon/hwmonX/tempY_crit_hyst > +Description: > + Temperature hysteresis value for critical limit. > + > + Unit: millidegree Celsius > + > + Must be reported as an absolute temperature, NOT a delta > + from the critical value. > + > + RW > + > +What: /sys/class/hwmon/hwmonX/tempY_emergency > +Description: > + Temperature emergency max value, for chips supporting more than > + two upper temperature limits. Must be equal or greater than > + corresponding temp_crit values. > + > + Unit: millidegree Celsius > + > + RW > + > +What: /sys/class/hwmon/hwmonX/tempY_emergency_hyst > +Description: > + Temperature hysteresis value for emergency limit. > + > + Unit: millidegree Celsius > + > + Must be reported as an absolute temperature, NOT a delta > + from the emergency value. > + > + RW > + > +What: /sys/class/hwmon/hwmonX/tempY_lcrit > +Description: > + Temperature critical min value, typically lower than > + corresponding temp_min values. > + > + Unit: millidegree Celsius > + > + RW > + > +What: /sys/class/hwmon/hwmonX/tempY_lcrit_hyst > +Description: > + Temperature hysteresis value for critical min limit. > + > + Unit: millidegree Celsius > + > + Must be reported as an absolute temperature, NOT a delta > + from the critical min value. > + > + RW > + > +What: /sys/class/hwmon/hwmonX/tempY_offset > +Description: > + Temperature offset which is added to the temperature reading > + by the chip. > + > + Unit: millidegree Celsius > + > + Read/Write value. > + > +What: /sys/class/hwmon/hwmonX/tempY_label > +Description: > + Suggested temperature channel label. > + > + Text string > + > + Should only be created if the driver has hints about what > + this temperature channel is being used for, and user-space > + doesn't. In all other cases, the label is provided by > + user-space. > + > + RO > + > +What: /sys/class/hwmon/hwmonX/tempY_lowest > +Description: > + Historical minimum temperature > + > + Unit: millidegree Celsius > + > + RO > + > +What: /sys/class/hwmon/hwmonX/tempY_highest > +Description: > + Historical maximum temperature > + > + Unit: millidegree Celsius > + > + RO > + > +What: /sys/class/hwmon/hwmonX/tempY_reset_history > +Description: > + Reset temp_lowest and temp_highest > + > + WO > + > +What: /sys/class/hwmon/hwmonX/temp_reset_history > +Description: > + Reset temp_lowest and temp_highest for all sensors > + > + WO > + > +What: /sys/class/hwmon/hwmonX/tempY_enable > +Description: > + Enable or disable the sensors. > + > + When disabled the sensor read will return -ENODATA. > + > + - 1: Enable > + - 0: Disable > + > + RW > + > +What: /sys/class/hwmon/hwmonX/tempY_rated_min > +Description: > + Minimum rated temperature. > + > + Unit: millidegree Celsius > + > + RO > + > +What: /sys/class/hwmon/hwmonX/tempY_rated_max > +Description: > + Maximum rated temperature. > + > + Unit: millidegree Celsius > + > + RO > + > +What: /sys/class/hwmon/hwmonX/currY_max > +Description: > + Current max value > + > + Unit: milliampere > + > + RW > + > +What: /sys/class/hwmon/hwmonX/currY_min > +Description: > + Current min value. > + > + Unit: milliampere > + > + RW > + > +What: /sys/class/hwmon/hwmonX/currY_lcrit > +Description: > + Current critical low value > + > + Unit: milliampere > + > + RW > + > +What: /sys/class/hwmon/hwmonX/currY_crit > +Description: > + Current critical high value. > + > + Unit: milliampere > + > + RW > + > +What: /sys/class/hwmon/hwmonX/currY_input > +Description: > + Current input value > + > + Unit: milliampere > + > + RO > + > +What: /sys/class/hwmon/hwmonX/currY_average > +Description: > + Average current use > + > + Unit: milliampere > + > + RO > + > +What: /sys/class/hwmon/hwmonX/currY_lowest > +Description: > + Historical minimum current > + > + Unit: milliampere > + > + RO > + > +What: /sys/class/hwmon/hwmonX/currY_highest > +Description: > + Historical maximum current > + Unit: milliampere > + RO > + > +What: /sys/class/hwmon/hwmonX/currY_reset_history > +Description: > + Reset currX_lowest and currX_highest > + > + WO > + > +What: /sys/class/hwmon/hwmonX/curr_reset_history > +Description: > + Reset currX_lowest and currX_highest for all sensors > + > + WO > + > +What: /sys/class/hwmon/hwmonX/currY_enable > +Description: > + Enable or disable the sensors. > + > + When disabled the sensor read will return -ENODATA. > + > + - 1: Enable > + - 0: Disable > + > + RW > + > +What: /sys/class/hwmon/hwmonX/currY_rated_min > +Description: > + Minimum rated current. > + > + Unit: milliampere > + > + RO > + > +What: /sys/class/hwmon/hwmonX/currY_rated_max > +Description: > + Maximum rated current. > + > + Unit: milliampere > + > + RO > + > +What: /sys/class/hwmon/hwmonX/powerY_average > +Description: > + Average power use > + > + Unit: microWatt > + > + RO > + > +What: /sys/class/hwmon/hwmonX/powerY_average_interval > +Description: > + Power use averaging interval. A poll > + notification is sent to this file if the > + hardware changes the averaging interval. > + > + Unit: milliseconds > + > + RW > + > +What: /sys/class/hwmon/hwmonX/powerY_average_interval_max > +Description: > + Maximum power use averaging interval > + > + Unit: milliseconds > + > + RO > + > +What: /sys/class/hwmon/hwmonX/powerY_average_interval_min > +Description: > + Minimum power use averaging interval > + > + Unit: milliseconds > + > + RO > + > +What: /sys/class/hwmon/hwmonX/powerY_average_highest > +Description: > + Historical average maximum power use > + > + Unit: microWatt > + > + RO > + > +What: /sys/class/hwmon/hwmonX/powerY_average_lowest > +Description: > + Historical average minimum power use > + > + Unit: microWatt > + > + RO > + > +What: /sys/class/hwmon/hwmonX/powerY_average_max > +Description: > + A poll notification is sent to > + `powerY_average` when power use > + rises above this value. > + > + Unit: microWatt > + > + RW > + > +What: /sys/class/hwmon/hwmonX/powerY_average_min > +Description: > + A poll notification is sent to > + `powerY_average` when power use > + sinks below this value. > + > + Unit: microWatt > + > + RW > + > +What: /sys/class/hwmon/hwmonX/powerY_input > +Description: > + Instantaneous power use > + > + Unit: microWatt > + > + RO > + > +What: /sys/class/hwmon/hwmonX/powerY_input_highest > +Description: > + Historical maximum power use > + > + Unit: microWatt > + > + RO > + > +What: /sys/class/hwmon/hwmonX/powerY_input_lowest > +Description: > + Historical minimum power use > + > + Unit: microWatt > + > + RO > + > +What: /sys/class/hwmon/hwmonX/powerY_reset_history > +Description: > + Reset input_highest, input_lowest, > + average_highest and average_lowest. > + > + WO > + > +What: /sys/class/hwmon/hwmonX/powerY_accuracy > +Description: > + Accuracy of the power meter. > + > + Unit: Percent > + > + RO > + > +What: /sys/class/hwmon/hwmonX/powerY_cap > +Description: > + If power use rises above this limit, the > + system should take action to reduce power use. > + A poll notification is sent to this file if the > + cap is changed by the hardware. The `*_cap` > + files only appear if the cap is known to be > + enforced by hardware. > + > + Unit: microWatt > + > + RW > + > +What: /sys/class/hwmon/hwmonX/powerY_cap_hyst > +Description: > + Margin of hysteresis built around capping and > + notification. > + > + Unit: microWatt > + > + RW > + > +What: /sys/class/hwmon/hwmonX/powerY_cap_max > +Description: > + Maximum cap that can be set. > + > + Unit: microWatt > + > + RO > + > +What: /sys/class/hwmon/hwmonX/powerY_cap_min > +Description: > + Minimum cap that can be set. > + > + Unit: microWatt > + > + RO > + > +What: /sys/class/hwmon/hwmonX/powerY_max > +Description: > + Maximum power. > + > + Unit: microWatt > + > + RW > + > +What: /sys/class/hwmon/hwmonX/powerY_crit > +Description: > + Critical maximum power. > + > + If power rises to or above this limit, the > + system is expected take drastic action to reduce > + power consumption, such as a system shutdown or > + a forced powerdown of some devices. > + > + Unit: microWatt > + > + RW > + > +What: /sys/class/hwmon/hwmonX/powerY_enable > +Description: > + Enable or disable the sensors. > + > + When disabled the sensor read will return > + -ENODATA. > + > + - 1: Enable > + - 0: Disable > + > + RW > + > +What: /sys/class/hwmon/hwmonX/powerY_rated_min > +Description: > + Minimum rated power. > + > + Unit: microWatt > + > + RO > + > +What: /sys/class/hwmon/hwmonX/powerY_rated_max > +Description: > + Maximum rated power. > + > + Unit: microWatt > + > + RO > + > +What: /sys/class/hwmon/hwmonX/energyY_input > +Description: > + Cumulative energy use > + > + Unit: microJoule > + > + RO > + > +What: /sys/class/hwmon/hwmonX/energyY_enable > +Description: > + Enable or disable the sensors. > + > + When disabled the sensor read will return > + -ENODATA. > + > + - 1: Enable > + - 0: Disable > + > + RW > + > +What: /sys/class/hwmon/hwmonX/humidityY_input > +Description: > + Humidity > + > + Unit: milli-percent (per cent mille, pcm) > + > + RO > + > + > +What: /sys/class/hwmon/hwmonX/humidityY_enable > +Description: > + Enable or disable the sensors > + > + When disabled the sensor read will return > + -ENODATA. > + > + - 1: Enable > + - 0: Disable > + > + RW > + > +What: /sys/class/hwmon/hwmonX/humidityY_rated_min > +Description: > + Minimum rated humidity. > + > + Unit: milli-percent (per cent mille, pcm) > + > + RO > + > +What: /sys/class/hwmon/hwmonX/humidityY_rated_max > +Description: > + Maximum rated humidity. > + > + Unit: milli-percent (per cent mille, pcm) > + > + RO > + > + > +What: /sys/class/hwmon/hwmonX/intrusionY_alarm > +Description: > + Chassis intrusion detection > + > + - 0: OK > + - 1: intrusion detected > + > + RW > + > + Contrary to regular alarm flags which clear themselves > + automatically when read, this one sticks until cleared by > + the user. This is done by writing 0 to the file. Writing > + other values is unsupported. > + > +What: /sys/class/hwmon/hwmonX/intrusionY_beep > +Description: > + Chassis intrusion beep > + > + - 0: disable > + - 1: enable > + > + RW > diff --git a/Documentation/hwmon/sysfs-interface.rst b/Documentation/hwmon/sysfs-interface.rst > index 13c5acb72d63..85652a6aaa3e 100644 > --- a/Documentation/hwmon/sysfs-interface.rst > +++ b/Documentation/hwmon/sysfs-interface.rst > @@ -89,6 +89,8 @@ hardware implementation. > All entries (except name) are optional, and should only be created in a > given driver if the chip has the feature. > > +See Documentation/ABI/testing/sysfs-class-hwmon for a complete description > +of the attributes. > > ***************** > Global attributes > @@ -96,22 +98,9 @@ Global attributes > > `name` > The chip name. > - This should be a short, lowercase string, not containing > - whitespace, dashes, or the wildcard character '*'. > - This attribute represents the chip name. It is the only > - mandatory attribute. > - I2C devices get this attribute created automatically. > - > - RO > > `update_interval` > The interval at which the chip will update readings. > - Unit: millisecond > - > - RW > - > - Some devices have a variable update rate or interval. > - This attribute can be used to change it to the desired value. > > > ******** > @@ -121,148 +110,51 @@ Voltages > `in[0-*]_min` > Voltage min value. > > - Unit: millivolt > - > - RW > - > `in[0-*]_lcrit` > Voltage critical min value. > > - Unit: millivolt > - > - RW > - > - If voltage drops to or below this limit, the system may > - take drastic action such as power down or reset. At the very > - least, it should report a fault. > - > `in[0-*]_max` > Voltage max value. > > - Unit: millivolt > - > - RW > - > `in[0-*]_crit` > Voltage critical max value. > > - Unit: millivolt > - > - RW > - > - If voltage reaches or exceeds this limit, the system may > - take drastic action such as power down or reset. At the very > - least, it should report a fault. > - > `in[0-*]_input` > Voltage input value. > > - Unit: millivolt > - > - RO > - > - Voltage measured on the chip pin. > - > - Actual voltage depends on the scaling resistors on the > - motherboard, as recommended in the chip datasheet. > - > - This varies by chip and by motherboard. > - Because of this variation, values are generally NOT scaled > - by the chip driver, and must be done by the application. > - However, some drivers (notably lm87 and via686a) > - do scale, because of internal resistors built into a chip. > - These drivers will output the actual voltage. Rule of > - thumb: drivers should report the voltage values at the > - "pins" of the chip. > - > `in[0-*]_average` > Average voltage > > - Unit: millivolt > - > - RO > - > `in[0-*]_lowest` > Historical minimum voltage > > - Unit: millivolt > - > - RO > - > `in[0-*]_highest` > Historical maximum voltage > > - Unit: millivolt > - > - RO > - > `in[0-*]_reset_history` > Reset inX_lowest and inX_highest > > - WO > - > `in_reset_history` > Reset inX_lowest and inX_highest for all sensors > > - WO > - > `in[0-*]_label` > Suggested voltage channel label. > > - Text string > - > - Should only be created if the driver has hints about what > - this voltage channel is being used for, and user-space > - doesn't. In all other cases, the label is provided by > - user-space. > - > - RO > - > `in[0-*]_enable` > Enable or disable the sensors. > > - When disabled the sensor read will return -ENODATA. > - > - - 1: Enable > - - 0: Disable > - > - RW > - > `cpu[0-*]_vid` > CPU core reference voltage. > > - Unit: millivolt > - > - RO > - > - Not always correct. > - > `vrm` > Voltage Regulator Module version number. > > - RW (but changing it should no more be necessary) > - > - Originally the VRM standard version multiplied by 10, but now > - an arbitrary number, as not all standards have a version > - number. > - > - Affects the way the driver calculates the CPU core reference > - voltage from the vid pins. > - > `in[0-*]_rated_min` > Minimum rated voltage. > > - Unit: millivolt > - > - RO > - > `in[0-*]_rated_max` > Maximum rated voltage. > > - Unit: millivolt > - > - RO > - > Also see the Alarms section for status flags associated with voltages. > > > @@ -273,83 +165,27 @@ Fans > `fan[1-*]_min` > Fan minimum value > > - Unit: revolution/min (RPM) > - > - RW > - > `fan[1-*]_max` > Fan maximum value > > - Unit: revolution/min (RPM) > - > - Only rarely supported by the hardware. > - RW > - > `fan[1-*]_input` > Fan input value. > > - Unit: revolution/min (RPM) > - > - RO > - > `fan[1-*]_div` > Fan divisor. > > - Integer value in powers of two (1, 2, 4, 8, 16, 32, 64, 128). > - > - RW > - > - Some chips only support values 1, 2, 4 and 8. > - Note that this is actually an internal clock divisor, which > - affects the measurable speed range, not the read value. > - > `fan[1-*]_pulses` > Number of tachometer pulses per fan revolution. > > - Integer value, typically between 1 and 4. > - > - RW > - > - This value is a characteristic of the fan connected to the > - device's input, so it has to be set in accordance with the fan > - model. > - > - Should only be created if the chip has a register to configure > - the number of pulses. In the absence of such a register (and > - thus attribute) the value assumed by all devices is 2 pulses > - per fan revolution. > - > `fan[1-*]_target` > Desired fan speed > > - Unit: revolution/min (RPM) > - > - RW > - > - Only makes sense if the chip supports closed-loop fan speed > - control based on the measured fan speed. > - > `fan[1-*]_label` > Suggested fan channel label. > > - Text string > - > - Should only be created if the driver has hints about what > - this fan channel is being used for, and user-space doesn't. > - In all other cases, the label is provided by user-space. > - > - RO > - > `fan[1-*]_enable` > Enable or disable the sensors. > > - When disabled the sensor read will return -ENODATA. > - > - - 1: Enable > - - 0: Disable > - > - RW > - > Also see the Alarms section for status flags associated with fans. > > > @@ -360,63 +196,25 @@ PWM > `pwm[1-*]` > Pulse width modulation fan control. > > - Integer value in the range 0 to 255 > - > - RW > - > - 255 is max or 100%. > - > `pwm[1-*]_enable` > Fan speed control method: > > - - 0: no fan speed control (i.e. fan at full speed) > - - 1: manual fan speed control enabled (using `pwm[1-*]`) > - - 2+: automatic fan speed control enabled > - > - Check individual chip documentation files for automatic mode > - details. > - > - RW > - > `pwm[1-*]_mode` > - - 0: DC mode (direct current) > - - 1: PWM mode (pulse-width modulation) > - > - RW > + direct current or pulse-width modulation. > > `pwm[1-*]_freq` > Base PWM frequency in Hz. > > - Only possibly available when pwmN_mode is PWM, but not always > - present even then. > - > - RW > - > `pwm[1-*]_auto_channels_temp` > Select which temperature channels affect this PWM output in > auto mode. > > - Bitfield, 1 is temp1, 2 is temp2, 4 is temp3 etc... > - Which values are possible depend on the chip used. > - > - RW > - > `pwm[1-*]_auto_point[1-*]_pwm` / `pwm[1-*]_auto_point[1-*]_temp` / `pwm[1-*]_auto_point[1-*]_temp_hyst` > Define the PWM vs temperature curve. > > - Number of trip points is chip-dependent. Use this for chips > - which associate trip points to PWM output channels. > - > - RW > - > `temp[1-*]_auto_point[1-*]_pwm` / `temp[1-*]_auto_point[1-*]_temp` / `temp[1-*]_auto_point[1-*]_temp_hyst` > Define the PWM vs temperature curve. > > - Number of trip points is chip-dependent. Use this for chips > - which associate trip points to temperature channels. > - > - RW > - > There is a third case where trip points are associated to both PWM output > channels and temperature channels: the PWM values are associated to PWM > output channels while the temperature values are associated to temperature > @@ -434,182 +232,70 @@ Temperatures > `temp[1-*]_type` > Sensor type selection. > > - Integers 1 to 6 > - > - RW > - > - - 1: CPU embedded diode > - - 2: 3904 transistor > - - 3: thermal diode > - - 4: thermistor > - - 5: AMD AMDSI > - - 6: Intel PECI > - > - Not all types are supported by all chips > - > `temp[1-*]_max` > Temperature max value. > > - Unit: millidegree Celsius (or millivolt, see below) > - > - RW > - > `temp[1-*]_min` > Temperature min value. > > - Unit: millidegree Celsius > - > - RW > - > `temp[1-*]_max_hyst` > Temperature hysteresis value for max limit. > > - Unit: millidegree Celsius > - > - Must be reported as an absolute temperature, NOT a delta > - from the max value. > - > - RW > - > `temp[1-*]_min_hyst` > Temperature hysteresis value for min limit. > - Unit: millidegree Celsius > - > - Must be reported as an absolute temperature, NOT a delta > - from the min value. > - > - RW > > `temp[1-*]_input` > - Temperature input value. > - > - Unit: millidegree Celsius > - > - RO > + Temperature input value. > > `temp[1-*]_crit` > Temperature critical max value, typically greater than > corresponding temp_max values. > > - Unit: millidegree Celsius > - > - RW > - > `temp[1-*]_crit_hyst` > Temperature hysteresis value for critical limit. > > - Unit: millidegree Celsius > - > - Must be reported as an absolute temperature, NOT a delta > - from the critical value. > - > - RW > - > `temp[1-*]_emergency` > Temperature emergency max value, for chips supporting more than > - two upper temperature limits. Must be equal or greater than > - corresponding temp_crit values. > - > - Unit: millidegree Celsius > - > - RW > + two upper temperature limits. > > `temp[1-*]_emergency_hyst` > Temperature hysteresis value for emergency limit. > > - Unit: millidegree Celsius > - > - Must be reported as an absolute temperature, NOT a delta > - from the emergency value. > - > - RW > - > `temp[1-*]_lcrit` > Temperature critical min value, typically lower than > corresponding temp_min values. > > - Unit: millidegree Celsius > - > - RW > - > `temp[1-*]_lcrit_hyst` > Temperature hysteresis value for critical min limit. > > - Unit: millidegree Celsius > - > - Must be reported as an absolute temperature, NOT a delta > - from the critical min value. > - > - RW > - > `temp[1-*]_offset` > Temperature offset which is added to the temperature reading > by the chip. > > - Unit: millidegree Celsius > - > - Read/Write value. > - > `temp[1-*]_label` > Suggested temperature channel label. > > - Text string > - > - Should only be created if the driver has hints about what > - this temperature channel is being used for, and user-space > - doesn't. In all other cases, the label is provided by > - user-space. > - > - RO > - > `temp[1-*]_lowest` > Historical minimum temperature > > - Unit: millidegree Celsius > - > - RO > - > `temp[1-*]_highest` > Historical maximum temperature > > - Unit: millidegree Celsius > - > - RO > - > `temp[1-*]_reset_history` > Reset temp_lowest and temp_highest > > - WO > - > `temp_reset_history` > Reset temp_lowest and temp_highest for all sensors > > - WO > - > `temp[1-*]_enable` > Enable or disable the sensors. > > - When disabled the sensor read will return -ENODATA. > - > - - 1: Enable > - - 0: Disable > - > - RW > - > `temp[1-*]_rated_min` > Minimum rated temperature. > > - Unit: millidegree Celsius > - > - RO > - > `temp[1-*]_rated_max` > Maximum rated temperature. > > - Unit: millidegree Celsius > - > - RO > - > Some chips measure temperature using external thermistors and an ADC, and > report the temperature measurement as a voltage. Converting this voltage > back to a temperature (or the other way around for limits) requires > @@ -627,58 +313,28 @@ Currents > ******** > > `curr[1-*]_max` > - Current max value > - > - Unit: milliampere > - > - RW > + Current max value. > > `curr[1-*]_min` > Current min value. > > - Unit: milliampere > - > - RW > - > `curr[1-*]_lcrit` > Current critical low value > > - Unit: milliampere > - > - RW > - > `curr[1-*]_crit` > Current critical high value. > > - Unit: milliampere > - > - RW > - > `curr[1-*]_input` > - Current input value > - > - Unit: milliampere > - > - RO > + Current input value. > > `curr[1-*]_average` > - Average current use > - > - Unit: milliampere > - > - RO > + Average current use. > > `curr[1-*]_lowest` > - Historical minimum current > - > - Unit: milliampere > - > - RO > + Historical minimum current. > > `curr[1-*]_highest` > - Historical maximum current > - Unit: milliampere > - RO > + Historical maximum current. > > `curr[1-*]_reset_history` > Reset currX_lowest and currX_highest > @@ -686,34 +342,17 @@ Currents > WO > > `curr_reset_history` > - Reset currX_lowest and currX_highest for all sensors > - > - WO > + Reset currX_lowest and currX_highest for all sensors. > > `curr[1-*]_enable` > Enable or disable the sensors. > > - When disabled the sensor read will return -ENODATA. > - > - - 1: Enable > - - 0: Disable > - > - RW > - > `curr[1-*]_rated_min` > Minimum rated current. > > - Unit: milliampere > - > - RO > - > `curr[1-*]_rated_max` > Maximum rated current. > > - Unit: milliampere > - > - RO > - > Also see the Alarms section for status flags associated with currents. > > ***** > @@ -721,141 +360,62 @@ Power > ***** > > `power[1-*]_average` > - Average power use > - > - Unit: microWatt > - > - RO > + Average power use. > > `power[1-*]_average_interval` > - Power use averaging interval. A poll > - notification is sent to this file if the > - hardware changes the averaging interval. > - > - Unit: milliseconds > - > - RW > + Power use averaging interval. > > `power[1-*]_average_interval_max` > - Maximum power use averaging interval > - > - Unit: milliseconds > - > - RO > + Maximum power use averaging interval. > > `power[1-*]_average_interval_min` > - Minimum power use averaging interval > - > - Unit: milliseconds > - > - RO > + Minimum power use averaging interval. > > `power[1-*]_average_highest` > - Historical average maximum power use > - > - Unit: microWatt > - > - RO > + Historical average maximum power use > > `power[1-*]_average_lowest` > - Historical average minimum power use > - > - Unit: microWatt > - > - RO > + Historical average minimum power use > > `power[1-*]_average_max` > - A poll notification is sent to > - `power[1-*]_average` when power use > - rises above this value. > - > - Unit: microWatt > - > - RW > + A poll notification is sent to `power[1-*]_average` when > + power use rises above this value. > > `power[1-*]_average_min` > - A poll notification is sent to > - `power[1-*]_average` when power use > - sinks below this value. > - > - Unit: microWatt > - > - RW > + A poll notification is sent to `power[1-*]_average` when > + power use sinks below this value. > > `power[1-*]_input` > - Instantaneous power use > - > - Unit: microWatt > - > - RO > + Instantaneous power use. > > `power[1-*]_input_highest` > - Historical maximum power use > - > - Unit: microWatt > - > - RO > + Historical maximum power use > > `power[1-*]_input_lowest` > - Historical minimum power use > - > - Unit: microWatt > - > - RO > + Historical minimum power use. > > `power[1-*]_reset_history` > - Reset input_highest, input_lowest, > - average_highest and average_lowest. > - > - WO > + Reset input_highest, input_lowest, average_highest and > + average_lowest. > > `power[1-*]_accuracy` > - Accuracy of the power meter. > - > - Unit: Percent > - > - RO > + Accuracy of the power meter. > > `power[1-*]_cap` > - If power use rises above this limit, the > - system should take action to reduce power use. > - A poll notification is sent to this file if the > - cap is changed by the hardware. The `*_cap` > - files only appear if the cap is known to be > - enforced by hardware. > - > - Unit: microWatt > - > - RW > + If power use rises above this limit, the > + system should take action to reduce power use. > > `power[1-*]_cap_hyst` > - Margin of hysteresis built around capping and > - notification. > - > - Unit: microWatt > - > - RW > + Margin of hysteresis built around capping and notification. > > `power[1-*]_cap_max` > - Maximum cap that can be set. > - > - Unit: microWatt > - > - RO > + Maximum cap that can be set. > > `power[1-*]_cap_min` > - Minimum cap that can be set. > - > - Unit: microWatt > - > - RO > + Minimum cap that can be set. > > `power[1-*]_max` > - Maximum power. > - > - Unit: microWatt > - > - RW > + Maximum power. > > `power[1-*]_crit` > Critical maximum power. > @@ -923,37 +483,16 @@ Humidity > ******** > > `humidity[1-*]_input` > - Humidity > - > - Unit: milli-percent (per cent mille, pcm) > - > - RO > - > + Humidity. > > `humidity[1-*]_enable` > - Enable or disable the sensors > - > - When disabled the sensor read will return > - -ENODATA. > - > - - 1: Enable > - - 0: Disable > - > - RW > + Enable or disable the sensors. > > `humidity[1-*]_rated_min` > - Minimum rated humidity. > - > - Unit: milli-percent (per cent mille, pcm) > - > - RO > + Minimum rated humidity. > > `humidity[1-*]_rated_max` > - Maximum rated humidity. > - > - Unit: milli-percent (per cent mille, pcm) > - > - RO > + Maximum rated humidity. > > ****** > Alarms > @@ -1004,30 +543,15 @@ supports it. When this boolean has value 1, the measurement for that > channel should not be trusted. > > `fan[1-*]_fault` / `temp[1-*]_fault` > - Input fault condition > - > - - 0: no fault occurred > - - 1: fault condition > - > - RO > + Input fault condition. > > Some chips also offer the possibility to get beeped when an alarm occurs: > > `beep_enable` > - Master beep enable > - > - - 0: no beeps > - - 1: beeps > - > - RW > + Master beep enable. > > `in[0-*]_beep`, `curr[1-*]_beep`, `fan[1-*]_beep`, `temp[1-*]_beep`, > - Channel beep > - > - - 0: disable > - - 1: enable > - > - RW > + Channel beep. > > In theory, a chip could provide per-limit beep masking, but no such chip > was seen so far. > @@ -1039,29 +563,8 @@ for compatibility reasons: > `alarms` > Alarm bitmask. > > - RO > - > - Integer representation of one to four bytes. > - > - A '1' bit means an alarm. > - > - Chips should be programmed for 'comparator' mode so that > - the alarm will 'come back' after you read the register > - if it is still valid. > - > - Generally a direct representation of a chip's internal > - alarm registers; there is no standard for the position > - of individual bits. For this reason, the use of this > - interface file for new drivers is discouraged. Use > - `individual *_alarm` and `*_fault` files instead. > - Bits are defined in kernel/include/sensors.h. > - > `beep_mask` > Bitmask for beep. > - Same format as 'alarms' with the same bit locations, > - use discouraged for the same reason. Use individual > - `*_beep` files instead. > - RW > > > ******************* > @@ -1069,25 +572,10 @@ Intrusion detection > ******************* > > `intrusion[0-*]_alarm` > - Chassis intrusion detection > - > - - 0: OK > - - 1: intrusion detected > - > - RW > - > - Contrary to regular alarm flags which clear themselves > - automatically when read, this one sticks until cleared by > - the user. This is done by writing 0 to the file. Writing > - other values is unsupported. > + Chassis intrusion detection. > > `intrusion[0-*]_beep` > - Chassis intrusion beep > - > - 0: disable > - 1: enable > - > - RW > + Chassis intrusion beep. > > **************************** > Average sample configuration > diff --git a/MAINTAINERS b/MAINTAINERS > index 179eadaebe76..e9fd362ef4d6 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -8274,6 +8274,7 @@ L: linux-hwmon@vger.kernel.org > S: Maintained > W: http://hwmon.wiki.kernel.org/ > T: git git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging.git > +F: Documentation/ABI/testing/sysfs-class-hwmon > F: Documentation/devicetree/bindings/hwmon/ > F: Documentation/hwmon/ > F: drivers/hwmon/ >