From patchwork Thu Jan 17 21:13:21 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Guenter Roeck X-Patchwork-Id: 10769085 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id ADD6F6C2 for ; Thu, 17 Jan 2019 21:13:57 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 9CD4E2A54E for ; Thu, 17 Jan 2019 21:13:57 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 8F9642A55F; Thu, 17 Jan 2019 21:13:57 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id C70BC2A54E for ; Thu, 17 Jan 2019 21:13:56 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728398AbfAQVN4 (ORCPT ); Thu, 17 Jan 2019 16:13:56 -0500 Received: from mail-pl1-f195.google.com ([209.85.214.195]:34199 "EHLO mail-pl1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728383AbfAQVN4 (ORCPT ); Thu, 17 Jan 2019 16:13:56 -0500 Received: by mail-pl1-f195.google.com with SMTP id w4so5313651plz.1 for ; Thu, 17 Jan 2019 13:13:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=RHfKQOjgJwH0nc4uJqM6MZI1r0AFPRP8kS+34YcxbSM=; b=AT39wF7cErtBgcgKJISExwnzRbAgss/qaTCsdtXw94WI7EP1v9+jrVUA4ivkARXSUr YD4tlcZI1k5h+RsI/ezb6KBI+6Xhud+7Hvi0kXLOI+bbJTqMEAHVbV90rhHlLAzVDm80 wDYLO5ryEOpCMm3DTuZks37wX1VTC9QWeOQdG1kBXW678KSFks/jsjLrihE7rym9IUFt jDGjSPDhcYKP3+1nVHFXflKy9OwIJISO8V9OQ/WzPr4QM3rtrsA3wXk+DAMd9ixGxK1z bdBfBI4ZVX01kGgRtB8WNRVSseBid4bQuhy4hxTfBBj3gdCD4FUx/eFG6exiDZlJTy8D ejxQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=RHfKQOjgJwH0nc4uJqM6MZI1r0AFPRP8kS+34YcxbSM=; b=iiKE7/8FCJAxBb3vHFTSwbn3HhDFVpDVU2u122mhuM0djtmGzKdvUKEyUkhNnOL6Bm LR8jNZPlM1c0EwrZKomeW6EBj9chCvbjvszH0UbxfD5O1C6xHUootyYDx3RY+8+xLIGD d47uoBWMfuqQ7ecqsC3KkytfhZufoRSwsR+mzwP0ulPE2jEfhu5aVRHh+qw6V9vExBMw TPJU+cQ9HLW/0M3RtcohQrsNOqEQ5dFXSVVV/dkuWIB9x5KAOundc9tCO9TJs8vs/FOu +YfZMF6OCc693fEC9Lj5eAj9IH/B94VghqF7bBR7Tll0+Sz49tE/pMHfzhyFkVkfmscH sHYQ== X-Gm-Message-State: AJcUukdqMvTzo70EQZWcee8Uy+DMNqBItD9cQUEDrek+bGy+XzLFtXLZ bpXCHVuxXKM7+mVvbXJoaiGfXioH X-Google-Smtp-Source: ALg8bN7ga0e637atIRoGn6A7pYUwthX7+lnr8ZvqU3wg2jdExSO7MmnAaZ99BXXRixflwm+XyIr+bw== X-Received: by 2002:a17:902:9887:: with SMTP id s7mr16118584plp.199.1547759634666; Thu, 17 Jan 2019 13:13:54 -0800 (PST) Received: from localhost ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id o189sm4649734pfg.117.2019.01.17.13.13.53 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Jan 2019 13:13:54 -0800 (PST) From: Guenter Roeck To: Hardware Monitoring Cc: Jean Delvare , Guenter Roeck Subject: [PATCH 01/29] hwmon: (gl518sm) Use permission specific SENSOR[_DEVICE]_ATTR variants Date: Thu, 17 Jan 2019 13:13:21 -0800 Message-Id: <1547759629-23007-2-git-send-email-linux@roeck-us.net> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1547759629-23007-1-git-send-email-linux@roeck-us.net> References: <1547759629-23007-1-git-send-email-linux@roeck-us.net> Sender: linux-hwmon-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-hwmon@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Use SENSOR[_DEVICE]_ATTR[_2]_{RO,RW,WO} to simplify the source code, to improve readbility, and to reduce the chance of inconsistencies. Also replace any remaining S_ in the driver with octal values. The conversion was done automatically with coccinelle. The semantic patches and the scripts used to generate this commit log are available at https://github.com/groeck/coccinelle-patches/hwmon/. This patch does not introduce functional changes. It was verified by compiling the old and new files and comparing text and data sizes. Signed-off-by: Guenter Roeck --- drivers/hwmon/gl518sm.c | 120 ++++++++++++++++++++++++------------------------ 1 file changed, 59 insertions(+), 61 deletions(-) diff --git a/drivers/hwmon/gl518sm.c b/drivers/hwmon/gl518sm.c index b267510daeb2..b7e453298409 100644 --- a/drivers/hwmon/gl518sm.c +++ b/drivers/hwmon/gl518sm.c @@ -264,7 +264,7 @@ show(RAW, alarms, alarms); show(BOOL, beep_enable, beep_enable); show(BEEP_MASK, beep_mask, beep_mask); -static ssize_t show_fan_input(struct device *dev, +static ssize_t fan_input_show(struct device *dev, struct device_attribute *attr, char *buf) { int nr = to_sensor_dev_attr(attr)->index; @@ -273,8 +273,8 @@ static ssize_t show_fan_input(struct device *dev, DIV_FROM_REG(data->fan_div[nr]))); } -static ssize_t show_fan_min(struct device *dev, - struct device_attribute *attr, char *buf) +static ssize_t fan_min_show(struct device *dev, struct device_attribute *attr, + char *buf) { int nr = to_sensor_dev_attr(attr)->index; struct gl518_data *data = gl518_update_device(dev); @@ -282,8 +282,8 @@ static ssize_t show_fan_min(struct device *dev, DIV_FROM_REG(data->fan_div[nr]))); } -static ssize_t show_fan_div(struct device *dev, - struct device_attribute *attr, char *buf) +static ssize_t fan_div_show(struct device *dev, struct device_attribute *attr, + char *buf) { int nr = to_sensor_dev_attr(attr)->index; struct gl518_data *data = gl518_update_device(dev); @@ -350,8 +350,9 @@ set_high(IN, in_max3, voltage_max[3], GL518_REG_VIN3_LIMIT); set_bits(BOOL, beep_enable, beep_enable, GL518_REG_CONF, 0x04, 2); set(BEEP_MASK, beep_mask, beep_mask, GL518_REG_ALARM); -static ssize_t set_fan_min(struct device *dev, struct device_attribute *attr, - const char *buf, size_t count) +static ssize_t fan_min_store(struct device *dev, + struct device_attribute *attr, const char *buf, + size_t count) { struct gl518_data *data = dev_get_drvdata(dev); struct i2c_client *client = data->client; @@ -383,8 +384,9 @@ static ssize_t set_fan_min(struct device *dev, struct device_attribute *attr, return count; } -static ssize_t set_fan_div(struct device *dev, struct device_attribute *attr, - const char *buf, size_t count) +static ssize_t fan_div_store(struct device *dev, + struct device_attribute *attr, const char *buf, + size_t count) { struct gl518_data *data = dev_get_drvdata(dev); struct i2c_client *client = data->client; @@ -427,40 +429,36 @@ static ssize_t set_fan_div(struct device *dev, struct device_attribute *attr, return count; } -static DEVICE_ATTR(temp1_input, S_IRUGO, show_temp_input1, NULL); -static DEVICE_ATTR(temp1_max, S_IWUSR|S_IRUGO, show_temp_max1, set_temp_max1); -static DEVICE_ATTR(temp1_max_hyst, S_IWUSR|S_IRUGO, - show_temp_hyst1, set_temp_hyst1); -static DEVICE_ATTR(fan1_auto, S_IWUSR|S_IRUGO, show_fan_auto1, set_fan_auto1); -static SENSOR_DEVICE_ATTR(fan1_input, S_IRUGO, show_fan_input, NULL, 0); -static SENSOR_DEVICE_ATTR(fan2_input, S_IRUGO, show_fan_input, NULL, 1); -static SENSOR_DEVICE_ATTR(fan1_min, S_IWUSR|S_IRUGO, - show_fan_min, set_fan_min, 0); -static SENSOR_DEVICE_ATTR(fan2_min, S_IWUSR|S_IRUGO, - show_fan_min, set_fan_min, 1); -static SENSOR_DEVICE_ATTR(fan1_div, S_IWUSR|S_IRUGO, - show_fan_div, set_fan_div, 0); -static SENSOR_DEVICE_ATTR(fan2_div, S_IWUSR|S_IRUGO, - show_fan_div, set_fan_div, 1); -static DEVICE_ATTR(in0_input, S_IRUGO, show_in_input0, NULL); -static DEVICE_ATTR(in1_input, S_IRUGO, show_in_input1, NULL); -static DEVICE_ATTR(in2_input, S_IRUGO, show_in_input2, NULL); -static DEVICE_ATTR(in3_input, S_IRUGO, show_in_input3, NULL); -static DEVICE_ATTR(in0_min, S_IWUSR|S_IRUGO, show_in_min0, set_in_min0); -static DEVICE_ATTR(in1_min, S_IWUSR|S_IRUGO, show_in_min1, set_in_min1); -static DEVICE_ATTR(in2_min, S_IWUSR|S_IRUGO, show_in_min2, set_in_min2); -static DEVICE_ATTR(in3_min, S_IWUSR|S_IRUGO, show_in_min3, set_in_min3); -static DEVICE_ATTR(in0_max, S_IWUSR|S_IRUGO, show_in_max0, set_in_max0); -static DEVICE_ATTR(in1_max, S_IWUSR|S_IRUGO, show_in_max1, set_in_max1); -static DEVICE_ATTR(in2_max, S_IWUSR|S_IRUGO, show_in_max2, set_in_max2); -static DEVICE_ATTR(in3_max, S_IWUSR|S_IRUGO, show_in_max3, set_in_max3); -static DEVICE_ATTR(alarms, S_IRUGO, show_alarms, NULL); -static DEVICE_ATTR(beep_enable, S_IWUSR|S_IRUGO, - show_beep_enable, set_beep_enable); -static DEVICE_ATTR(beep_mask, S_IWUSR|S_IRUGO, - show_beep_mask, set_beep_mask); - -static ssize_t show_alarm(struct device *dev, struct device_attribute *attr, +static DEVICE_ATTR(temp1_input, 0444, show_temp_input1, NULL); +static DEVICE_ATTR(temp1_max, 0644, show_temp_max1, set_temp_max1); +static DEVICE_ATTR(temp1_max_hyst, 0644, + show_temp_hyst1, set_temp_hyst1); +static DEVICE_ATTR(fan1_auto, 0644, show_fan_auto1, set_fan_auto1); +static SENSOR_DEVICE_ATTR_RO(fan1_input, fan_input, 0); +static SENSOR_DEVICE_ATTR_RO(fan2_input, fan_input, 1); +static SENSOR_DEVICE_ATTR_RW(fan1_min, fan_min, 0); +static SENSOR_DEVICE_ATTR_RW(fan2_min, fan_min, 1); +static SENSOR_DEVICE_ATTR_RW(fan1_div, fan_div, 0); +static SENSOR_DEVICE_ATTR_RW(fan2_div, fan_div, 1); +static DEVICE_ATTR(in0_input, 0444, show_in_input0, NULL); +static DEVICE_ATTR(in1_input, 0444, show_in_input1, NULL); +static DEVICE_ATTR(in2_input, 0444, show_in_input2, NULL); +static DEVICE_ATTR(in3_input, 0444, show_in_input3, NULL); +static DEVICE_ATTR(in0_min, 0644, show_in_min0, set_in_min0); +static DEVICE_ATTR(in1_min, 0644, show_in_min1, set_in_min1); +static DEVICE_ATTR(in2_min, 0644, show_in_min2, set_in_min2); +static DEVICE_ATTR(in3_min, 0644, show_in_min3, set_in_min3); +static DEVICE_ATTR(in0_max, 0644, show_in_max0, set_in_max0); +static DEVICE_ATTR(in1_max, 0644, show_in_max1, set_in_max1); +static DEVICE_ATTR(in2_max, 0644, show_in_max2, set_in_max2); +static DEVICE_ATTR(in3_max, 0644, show_in_max3, set_in_max3); +static DEVICE_ATTR(alarms, 0444, show_alarms, NULL); +static DEVICE_ATTR(beep_enable, 0644, + show_beep_enable, set_beep_enable); +static DEVICE_ATTR(beep_mask, 0644, + show_beep_mask, set_beep_mask); + +static ssize_t alarm_show(struct device *dev, struct device_attribute *attr, char *buf) { int bitnr = to_sensor_dev_attr(attr)->index; @@ -468,24 +466,24 @@ static ssize_t show_alarm(struct device *dev, struct device_attribute *attr, return sprintf(buf, "%u\n", (data->alarms >> bitnr) & 1); } -static SENSOR_DEVICE_ATTR(in0_alarm, S_IRUGO, show_alarm, NULL, 0); -static SENSOR_DEVICE_ATTR(in1_alarm, S_IRUGO, show_alarm, NULL, 1); -static SENSOR_DEVICE_ATTR(in2_alarm, S_IRUGO, show_alarm, NULL, 2); -static SENSOR_DEVICE_ATTR(in3_alarm, S_IRUGO, show_alarm, NULL, 3); -static SENSOR_DEVICE_ATTR(temp1_alarm, S_IRUGO, show_alarm, NULL, 4); -static SENSOR_DEVICE_ATTR(fan1_alarm, S_IRUGO, show_alarm, NULL, 5); -static SENSOR_DEVICE_ATTR(fan2_alarm, S_IRUGO, show_alarm, NULL, 6); +static SENSOR_DEVICE_ATTR_RO(in0_alarm, alarm, 0); +static SENSOR_DEVICE_ATTR_RO(in1_alarm, alarm, 1); +static SENSOR_DEVICE_ATTR_RO(in2_alarm, alarm, 2); +static SENSOR_DEVICE_ATTR_RO(in3_alarm, alarm, 3); +static SENSOR_DEVICE_ATTR_RO(temp1_alarm, alarm, 4); +static SENSOR_DEVICE_ATTR_RO(fan1_alarm, alarm, 5); +static SENSOR_DEVICE_ATTR_RO(fan2_alarm, alarm, 6); -static ssize_t show_beep(struct device *dev, struct device_attribute *attr, - char *buf) +static ssize_t beep_show(struct device *dev, struct device_attribute *attr, + char *buf) { int bitnr = to_sensor_dev_attr(attr)->index; struct gl518_data *data = gl518_update_device(dev); return sprintf(buf, "%u\n", (data->beep_mask >> bitnr) & 1); } -static ssize_t set_beep(struct device *dev, struct device_attribute *attr, - const char *buf, size_t count) +static ssize_t beep_store(struct device *dev, struct device_attribute *attr, + const char *buf, size_t count) { struct gl518_data *data = dev_get_drvdata(dev); struct i2c_client *client = data->client; @@ -511,13 +509,13 @@ static ssize_t set_beep(struct device *dev, struct device_attribute *attr, return count; } -static SENSOR_DEVICE_ATTR(in0_beep, S_IRUGO|S_IWUSR, show_beep, set_beep, 0); -static SENSOR_DEVICE_ATTR(in1_beep, S_IRUGO|S_IWUSR, show_beep, set_beep, 1); -static SENSOR_DEVICE_ATTR(in2_beep, S_IRUGO|S_IWUSR, show_beep, set_beep, 2); -static SENSOR_DEVICE_ATTR(in3_beep, S_IRUGO|S_IWUSR, show_beep, set_beep, 3); -static SENSOR_DEVICE_ATTR(temp1_beep, S_IRUGO|S_IWUSR, show_beep, set_beep, 4); -static SENSOR_DEVICE_ATTR(fan1_beep, S_IRUGO|S_IWUSR, show_beep, set_beep, 5); -static SENSOR_DEVICE_ATTR(fan2_beep, S_IRUGO|S_IWUSR, show_beep, set_beep, 6); +static SENSOR_DEVICE_ATTR_RW(in0_beep, beep, 0); +static SENSOR_DEVICE_ATTR_RW(in1_beep, beep, 1); +static SENSOR_DEVICE_ATTR_RW(in2_beep, beep, 2); +static SENSOR_DEVICE_ATTR_RW(in3_beep, beep, 3); +static SENSOR_DEVICE_ATTR_RW(temp1_beep, beep, 4); +static SENSOR_DEVICE_ATTR_RW(fan1_beep, beep, 5); +static SENSOR_DEVICE_ATTR_RW(fan2_beep, beep, 6); static struct attribute *gl518_attributes[] = { &dev_attr_in3_input.attr, From patchwork Thu Jan 17 21:13:22 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Guenter Roeck X-Patchwork-Id: 10769087 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id B62B96C2 for ; Thu, 17 Jan 2019 21:13:59 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id A504B2A54E for ; Thu, 17 Jan 2019 21:13:59 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 98B5B2A55F; Thu, 17 Jan 2019 21:13:59 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 8D9882A54E for ; Thu, 17 Jan 2019 21:13:58 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728410AbfAQVN6 (ORCPT ); Thu, 17 Jan 2019 16:13:58 -0500 Received: from mail-pf1-f195.google.com ([209.85.210.195]:43471 "EHLO mail-pf1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728383AbfAQVN6 (ORCPT ); Thu, 17 Jan 2019 16:13:58 -0500 Received: by mail-pf1-f195.google.com with SMTP id w73so5415762pfk.10 for ; Thu, 17 Jan 2019 13:13:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=myDqLJR9fFGAynRH40kLa+Jnj40olR/hxdibz5nHa5M=; b=NeZ7c6+OrXxLcejxaNnbuSczZ0/BJSfamgP6Eh/HMf+YYtbYEdCBdFAogy3qDX6LoW cJTadlDQjaADyvEmPAuCNsooUANnQfBxHWKja/CArKhy08+O4UesbsWJoCeH0yRBFPld 4LDlDySw4E48iJXyk2jKbWFMydDNqOLEQMKjBEsBk+GPjYkzDgR7dbX0Tp4VvVS/a9L2 4z79adc8W6JYJJwADgMHEOhqdxhRDUeokRbhtI8iyWS1IBiSJMBoQdAxG79hChYgx1b/ tw99bM25m+rFSAqN9lhvmBqi2o7ws9u8RJGJaoIImEiFXurGLqnDVK0GI1RuSA9m+BGF E5oA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=myDqLJR9fFGAynRH40kLa+Jnj40olR/hxdibz5nHa5M=; b=kFQ7MWUAFSLrYQVG2uM/Qx5e6YSh/JQNEPDCcoXztroBcgnql9BmXO8CGShxN43Sn/ J75uIyrfZdzE8FqeLv0SGRUjHmTqIGAB17jtgMxjDjo49lwOP66a2xmgByoqr94g2tsH VTGbRWO9zNqK+EdgASUrYce8JNl/3qWte2msqhGfJruKngBEpwbWHU+k1ZZ9SsMC8qrr yT8byI7WSnNwn96ecFlWyN9C10bDM4zGV88uPJOm1l+JaDnfP/3PJr6n1zno6DkOeUKi xeRhRt+BtToQqfhp/HcQr/9w38mDeFW3I4IiUxAgBlHErbkg4/uwARXa+c9N9LSArrar zYEQ== X-Gm-Message-State: AJcUukcP1AFbOt7WVCvxW05hdsNRFkTA79gRsgD8jpd9RaulVfYPAYfC nZNCaGhVNFtptCJmCQjkruPtlgke X-Google-Smtp-Source: ALg8bN6NAYx6ia7hfZ+hxxcqu3ZoZ/mM9Ig7oQ3E876UxF2pj67MfvIHbIBnBwjoDkHdSdK6wF8JVQ== X-Received: by 2002:a63:f615:: with SMTP id m21mr15223684pgh.428.1547759636299; Thu, 17 Jan 2019 13:13:56 -0800 (PST) Received: from localhost ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id e24sm3345280pfi.153.2019.01.17.13.13.55 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Jan 2019 13:13:55 -0800 (PST) From: Guenter Roeck To: Hardware Monitoring Cc: Jean Delvare , Guenter Roeck Subject: [PATCH 02/29] hwmon: (gl520sm) Use permission specific SENSOR[_DEVICE]_ATTR variants Date: Thu, 17 Jan 2019 13:13:22 -0800 Message-Id: <1547759629-23007-3-git-send-email-linux@roeck-us.net> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1547759629-23007-1-git-send-email-linux@roeck-us.net> References: <1547759629-23007-1-git-send-email-linux@roeck-us.net> Sender: linux-hwmon-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-hwmon@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Use SENSOR[_DEVICE]_ATTR[_2]_{RO,RW,WO} to simplify the source code, to improve readbility, and to reduce the chance of inconsistencies. Also replace any remaining S_ in the driver with octal values. The conversion was done automatically with coccinelle. The semantic patches and the scripts used to generate this commit log are available at https://github.com/groeck/coccinelle-patches/hwmon/. This patch does not introduce functional changes. It was verified by compiling the old and new files and comparing text and data sizes. Signed-off-by: Guenter Roeck --- drivers/hwmon/gl520sm.c | 184 ++++++++++++++++++++++-------------------------- 1 file changed, 85 insertions(+), 99 deletions(-) diff --git a/drivers/hwmon/gl520sm.c b/drivers/hwmon/gl520sm.c index 4ff32ee67fb6..7d430ad955fe 100644 --- a/drivers/hwmon/gl520sm.c +++ b/drivers/hwmon/gl520sm.c @@ -216,8 +216,8 @@ static DEVICE_ATTR_RO(cpu0_vid); #define IN_CLAMP(val) clamp_val(val, 0, 255 * 19) #define IN_TO_REG(val) DIV_ROUND_CLOSEST(IN_CLAMP(val), 19) -static ssize_t get_in_input(struct device *dev, struct device_attribute *attr, - char *buf) +static ssize_t in_input_show(struct device *dev, + struct device_attribute *attr, char *buf) { int n = to_sensor_dev_attr(attr)->index; struct gl520_data *data = gl520_update_device(dev); @@ -229,8 +229,8 @@ static ssize_t get_in_input(struct device *dev, struct device_attribute *attr, return sprintf(buf, "%d\n", IN_FROM_REG(r)); } -static ssize_t get_in_min(struct device *dev, struct device_attribute *attr, - char *buf) +static ssize_t in_min_show(struct device *dev, struct device_attribute *attr, + char *buf) { int n = to_sensor_dev_attr(attr)->index; struct gl520_data *data = gl520_update_device(dev); @@ -242,8 +242,8 @@ static ssize_t get_in_min(struct device *dev, struct device_attribute *attr, return sprintf(buf, "%d\n", IN_FROM_REG(r)); } -static ssize_t get_in_max(struct device *dev, struct device_attribute *attr, - char *buf) +static ssize_t in_max_show(struct device *dev, struct device_attribute *attr, + char *buf) { int n = to_sensor_dev_attr(attr)->index; struct gl520_data *data = gl520_update_device(dev); @@ -255,8 +255,8 @@ static ssize_t get_in_max(struct device *dev, struct device_attribute *attr, return sprintf(buf, "%d\n", IN_FROM_REG(r)); } -static ssize_t set_in_min(struct device *dev, struct device_attribute *attr, - const char *buf, size_t count) +static ssize_t in_min_store(struct device *dev, struct device_attribute *attr, + const char *buf, size_t count) { struct gl520_data *data = dev_get_drvdata(dev); struct i2c_client *client = data->client; @@ -289,8 +289,8 @@ static ssize_t set_in_min(struct device *dev, struct device_attribute *attr, return count; } -static ssize_t set_in_max(struct device *dev, struct device_attribute *attr, - const char *buf, size_t count) +static ssize_t in_max_store(struct device *dev, struct device_attribute *attr, + const char *buf, size_t count) { struct gl520_data *data = dev_get_drvdata(dev); struct i2c_client *client = data->client; @@ -323,31 +323,21 @@ static ssize_t set_in_max(struct device *dev, struct device_attribute *attr, return count; } -static SENSOR_DEVICE_ATTR(in0_input, S_IRUGO, get_in_input, NULL, 0); -static SENSOR_DEVICE_ATTR(in1_input, S_IRUGO, get_in_input, NULL, 1); -static SENSOR_DEVICE_ATTR(in2_input, S_IRUGO, get_in_input, NULL, 2); -static SENSOR_DEVICE_ATTR(in3_input, S_IRUGO, get_in_input, NULL, 3); -static SENSOR_DEVICE_ATTR(in4_input, S_IRUGO, get_in_input, NULL, 4); -static SENSOR_DEVICE_ATTR(in0_min, S_IRUGO | S_IWUSR, - get_in_min, set_in_min, 0); -static SENSOR_DEVICE_ATTR(in1_min, S_IRUGO | S_IWUSR, - get_in_min, set_in_min, 1); -static SENSOR_DEVICE_ATTR(in2_min, S_IRUGO | S_IWUSR, - get_in_min, set_in_min, 2); -static SENSOR_DEVICE_ATTR(in3_min, S_IRUGO | S_IWUSR, - get_in_min, set_in_min, 3); -static SENSOR_DEVICE_ATTR(in4_min, S_IRUGO | S_IWUSR, - get_in_min, set_in_min, 4); -static SENSOR_DEVICE_ATTR(in0_max, S_IRUGO | S_IWUSR, - get_in_max, set_in_max, 0); -static SENSOR_DEVICE_ATTR(in1_max, S_IRUGO | S_IWUSR, - get_in_max, set_in_max, 1); -static SENSOR_DEVICE_ATTR(in2_max, S_IRUGO | S_IWUSR, - get_in_max, set_in_max, 2); -static SENSOR_DEVICE_ATTR(in3_max, S_IRUGO | S_IWUSR, - get_in_max, set_in_max, 3); -static SENSOR_DEVICE_ATTR(in4_max, S_IRUGO | S_IWUSR, - get_in_max, set_in_max, 4); +static SENSOR_DEVICE_ATTR_RO(in0_input, in_input, 0); +static SENSOR_DEVICE_ATTR_RO(in1_input, in_input, 1); +static SENSOR_DEVICE_ATTR_RO(in2_input, in_input, 2); +static SENSOR_DEVICE_ATTR_RO(in3_input, in_input, 3); +static SENSOR_DEVICE_ATTR_RO(in4_input, in_input, 4); +static SENSOR_DEVICE_ATTR_RW(in0_min, in_min, 0); +static SENSOR_DEVICE_ATTR_RW(in1_min, in_min, 1); +static SENSOR_DEVICE_ATTR_RW(in2_min, in_min, 2); +static SENSOR_DEVICE_ATTR_RW(in3_min, in_min, 3); +static SENSOR_DEVICE_ATTR_RW(in4_min, in_min, 4); +static SENSOR_DEVICE_ATTR_RW(in0_max, in_max, 0); +static SENSOR_DEVICE_ATTR_RW(in1_max, in_max, 1); +static SENSOR_DEVICE_ATTR_RW(in2_max, in_max, 2); +static SENSOR_DEVICE_ATTR_RW(in3_max, in_max, 3); +static SENSOR_DEVICE_ATTR_RW(in4_max, in_max, 4); #define DIV_FROM_REG(val) (1 << (val)) #define FAN_FROM_REG(val, div) ((val) == 0 ? 0 : (480000 / ((val) << (div)))) @@ -359,8 +349,8 @@ static SENSOR_DEVICE_ATTR(in4_max, S_IRUGO | S_IWUSR, DIV_ROUND_CLOSEST(480000, \ FAN_CLAMP(val, div) << (div))) -static ssize_t get_fan_input(struct device *dev, struct device_attribute *attr, - char *buf) +static ssize_t fan_input_show(struct device *dev, + struct device_attribute *attr, char *buf) { int n = to_sensor_dev_attr(attr)->index; struct gl520_data *data = gl520_update_device(dev); @@ -369,8 +359,8 @@ static ssize_t get_fan_input(struct device *dev, struct device_attribute *attr, data->fan_div[n])); } -static ssize_t get_fan_min(struct device *dev, struct device_attribute *attr, - char *buf) +static ssize_t fan_min_show(struct device *dev, struct device_attribute *attr, + char *buf) { int n = to_sensor_dev_attr(attr)->index; struct gl520_data *data = gl520_update_device(dev); @@ -379,8 +369,8 @@ static ssize_t get_fan_min(struct device *dev, struct device_attribute *attr, data->fan_div[n])); } -static ssize_t get_fan_div(struct device *dev, struct device_attribute *attr, - char *buf) +static ssize_t fan_div_show(struct device *dev, struct device_attribute *attr, + char *buf) { int n = to_sensor_dev_attr(attr)->index; struct gl520_data *data = gl520_update_device(dev); @@ -395,8 +385,9 @@ static ssize_t fan1_off_show(struct device *dev, return sprintf(buf, "%d\n", data->fan_off); } -static ssize_t set_fan_min(struct device *dev, struct device_attribute *attr, - const char *buf, size_t count) +static ssize_t fan_min_store(struct device *dev, + struct device_attribute *attr, const char *buf, + size_t count) { struct gl520_data *data = dev_get_drvdata(dev); struct i2c_client *client = data->client; @@ -434,8 +425,9 @@ static ssize_t set_fan_min(struct device *dev, struct device_attribute *attr, return count; } -static ssize_t set_fan_div(struct device *dev, struct device_attribute *attr, - const char *buf, size_t count) +static ssize_t fan_div_store(struct device *dev, + struct device_attribute *attr, const char *buf, + size_t count) { struct gl520_data *data = dev_get_drvdata(dev); struct i2c_client *client = data->client; @@ -508,24 +500,20 @@ static ssize_t fan1_off_store(struct device *dev, return count; } -static SENSOR_DEVICE_ATTR(fan1_input, S_IRUGO, get_fan_input, NULL, 0); -static SENSOR_DEVICE_ATTR(fan2_input, S_IRUGO, get_fan_input, NULL, 1); -static SENSOR_DEVICE_ATTR(fan1_min, S_IRUGO | S_IWUSR, - get_fan_min, set_fan_min, 0); -static SENSOR_DEVICE_ATTR(fan2_min, S_IRUGO | S_IWUSR, - get_fan_min, set_fan_min, 1); -static SENSOR_DEVICE_ATTR(fan1_div, S_IRUGO | S_IWUSR, - get_fan_div, set_fan_div, 0); -static SENSOR_DEVICE_ATTR(fan2_div, S_IRUGO | S_IWUSR, - get_fan_div, set_fan_div, 1); +static SENSOR_DEVICE_ATTR_RO(fan1_input, fan_input, 0); +static SENSOR_DEVICE_ATTR_RO(fan2_input, fan_input, 1); +static SENSOR_DEVICE_ATTR_RW(fan1_min, fan_min, 0); +static SENSOR_DEVICE_ATTR_RW(fan2_min, fan_min, 1); +static SENSOR_DEVICE_ATTR_RW(fan1_div, fan_div, 0); +static SENSOR_DEVICE_ATTR_RW(fan2_div, fan_div, 1); static DEVICE_ATTR_RW(fan1_off); #define TEMP_FROM_REG(val) (((val) - 130) * 1000) #define TEMP_CLAMP(val) clamp_val(val, -130000, 125000) #define TEMP_TO_REG(val) (DIV_ROUND_CLOSEST(TEMP_CLAMP(val), 1000) + 130) -static ssize_t get_temp_input(struct device *dev, struct device_attribute *attr, - char *buf) +static ssize_t temp_input_show(struct device *dev, + struct device_attribute *attr, char *buf) { int n = to_sensor_dev_attr(attr)->index; struct gl520_data *data = gl520_update_device(dev); @@ -533,8 +521,8 @@ static ssize_t get_temp_input(struct device *dev, struct device_attribute *attr, return sprintf(buf, "%d\n", TEMP_FROM_REG(data->temp_input[n])); } -static ssize_t get_temp_max(struct device *dev, struct device_attribute *attr, - char *buf) +static ssize_t temp_max_show(struct device *dev, + struct device_attribute *attr, char *buf) { int n = to_sensor_dev_attr(attr)->index; struct gl520_data *data = gl520_update_device(dev); @@ -542,8 +530,8 @@ static ssize_t get_temp_max(struct device *dev, struct device_attribute *attr, return sprintf(buf, "%d\n", TEMP_FROM_REG(data->temp_max[n])); } -static ssize_t get_temp_max_hyst(struct device *dev, - struct device_attribute *attr, char *buf) +static ssize_t temp_max_hyst_show(struct device *dev, + struct device_attribute *attr, char *buf) { int n = to_sensor_dev_attr(attr)->index; struct gl520_data *data = gl520_update_device(dev); @@ -551,8 +539,9 @@ static ssize_t get_temp_max_hyst(struct device *dev, return sprintf(buf, "%d\n", TEMP_FROM_REG(data->temp_max_hyst[n])); } -static ssize_t set_temp_max(struct device *dev, struct device_attribute *attr, - const char *buf, size_t count) +static ssize_t temp_max_store(struct device *dev, + struct device_attribute *attr, const char *buf, + size_t count) { struct gl520_data *data = dev_get_drvdata(dev); struct i2c_client *client = data->client; @@ -571,8 +560,9 @@ static ssize_t set_temp_max(struct device *dev, struct device_attribute *attr, return count; } -static ssize_t set_temp_max_hyst(struct device *dev, struct device_attribute - *attr, const char *buf, size_t count) +static ssize_t temp_max_hyst_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t count) { struct gl520_data *data = dev_get_drvdata(dev); struct i2c_client *client = data->client; @@ -592,16 +582,12 @@ static ssize_t set_temp_max_hyst(struct device *dev, struct device_attribute return count; } -static SENSOR_DEVICE_ATTR(temp1_input, S_IRUGO, get_temp_input, NULL, 0); -static SENSOR_DEVICE_ATTR(temp2_input, S_IRUGO, get_temp_input, NULL, 1); -static SENSOR_DEVICE_ATTR(temp1_max, S_IRUGO | S_IWUSR, - get_temp_max, set_temp_max, 0); -static SENSOR_DEVICE_ATTR(temp2_max, S_IRUGO | S_IWUSR, - get_temp_max, set_temp_max, 1); -static SENSOR_DEVICE_ATTR(temp1_max_hyst, S_IRUGO | S_IWUSR, - get_temp_max_hyst, set_temp_max_hyst, 0); -static SENSOR_DEVICE_ATTR(temp2_max_hyst, S_IRUGO | S_IWUSR, - get_temp_max_hyst, set_temp_max_hyst, 1); +static SENSOR_DEVICE_ATTR_RO(temp1_input, temp_input, 0); +static SENSOR_DEVICE_ATTR_RO(temp2_input, temp_input, 1); +static SENSOR_DEVICE_ATTR_RW(temp1_max, temp_max, 0); +static SENSOR_DEVICE_ATTR_RW(temp2_max, temp_max, 1); +static SENSOR_DEVICE_ATTR_RW(temp1_max_hyst, temp_max_hyst, 0); +static SENSOR_DEVICE_ATTR_RW(temp2_max_hyst, temp_max_hyst, 1); static ssize_t alarms_show(struct device *dev, struct device_attribute *attr, char *buf) @@ -674,8 +660,8 @@ static DEVICE_ATTR_RO(alarms); static DEVICE_ATTR_RW(beep_enable); static DEVICE_ATTR_RW(beep_mask); -static ssize_t get_alarm(struct device *dev, struct device_attribute *attr, - char *buf) +static ssize_t alarm_show(struct device *dev, struct device_attribute *attr, + char *buf) { int bit_nr = to_sensor_dev_attr(attr)->index; struct gl520_data *data = gl520_update_device(dev); @@ -683,18 +669,18 @@ static ssize_t get_alarm(struct device *dev, struct device_attribute *attr, return sprintf(buf, "%d\n", (data->alarms >> bit_nr) & 1); } -static SENSOR_DEVICE_ATTR(in0_alarm, S_IRUGO, get_alarm, NULL, 0); -static SENSOR_DEVICE_ATTR(in1_alarm, S_IRUGO, get_alarm, NULL, 1); -static SENSOR_DEVICE_ATTR(in2_alarm, S_IRUGO, get_alarm, NULL, 2); -static SENSOR_DEVICE_ATTR(in3_alarm, S_IRUGO, get_alarm, NULL, 3); -static SENSOR_DEVICE_ATTR(temp1_alarm, S_IRUGO, get_alarm, NULL, 4); -static SENSOR_DEVICE_ATTR(fan1_alarm, S_IRUGO, get_alarm, NULL, 5); -static SENSOR_DEVICE_ATTR(fan2_alarm, S_IRUGO, get_alarm, NULL, 6); -static SENSOR_DEVICE_ATTR(temp2_alarm, S_IRUGO, get_alarm, NULL, 7); -static SENSOR_DEVICE_ATTR(in4_alarm, S_IRUGO, get_alarm, NULL, 7); +static SENSOR_DEVICE_ATTR_RO(in0_alarm, alarm, 0); +static SENSOR_DEVICE_ATTR_RO(in1_alarm, alarm, 1); +static SENSOR_DEVICE_ATTR_RO(in2_alarm, alarm, 2); +static SENSOR_DEVICE_ATTR_RO(in3_alarm, alarm, 3); +static SENSOR_DEVICE_ATTR_RO(temp1_alarm, alarm, 4); +static SENSOR_DEVICE_ATTR_RO(fan1_alarm, alarm, 5); +static SENSOR_DEVICE_ATTR_RO(fan2_alarm, alarm, 6); +static SENSOR_DEVICE_ATTR_RO(temp2_alarm, alarm, 7); +static SENSOR_DEVICE_ATTR_RO(in4_alarm, alarm, 7); -static ssize_t get_beep(struct device *dev, struct device_attribute *attr, - char *buf) +static ssize_t beep_show(struct device *dev, struct device_attribute *attr, + char *buf) { int bitnr = to_sensor_dev_attr(attr)->index; struct gl520_data *data = gl520_update_device(dev); @@ -702,8 +688,8 @@ static ssize_t get_beep(struct device *dev, struct device_attribute *attr, return sprintf(buf, "%d\n", (data->beep_mask >> bitnr) & 1); } -static ssize_t set_beep(struct device *dev, struct device_attribute *attr, - const char *buf, size_t count) +static ssize_t beep_store(struct device *dev, struct device_attribute *attr, + const char *buf, size_t count) { struct gl520_data *data = dev_get_drvdata(dev); struct i2c_client *client = data->client; @@ -729,15 +715,15 @@ static ssize_t set_beep(struct device *dev, struct device_attribute *attr, return count; } -static SENSOR_DEVICE_ATTR(in0_beep, S_IRUGO | S_IWUSR, get_beep, set_beep, 0); -static SENSOR_DEVICE_ATTR(in1_beep, S_IRUGO | S_IWUSR, get_beep, set_beep, 1); -static SENSOR_DEVICE_ATTR(in2_beep, S_IRUGO | S_IWUSR, get_beep, set_beep, 2); -static SENSOR_DEVICE_ATTR(in3_beep, S_IRUGO | S_IWUSR, get_beep, set_beep, 3); -static SENSOR_DEVICE_ATTR(temp1_beep, S_IRUGO | S_IWUSR, get_beep, set_beep, 4); -static SENSOR_DEVICE_ATTR(fan1_beep, S_IRUGO | S_IWUSR, get_beep, set_beep, 5); -static SENSOR_DEVICE_ATTR(fan2_beep, S_IRUGO | S_IWUSR, get_beep, set_beep, 6); -static SENSOR_DEVICE_ATTR(temp2_beep, S_IRUGO | S_IWUSR, get_beep, set_beep, 7); -static SENSOR_DEVICE_ATTR(in4_beep, S_IRUGO | S_IWUSR, get_beep, set_beep, 7); +static SENSOR_DEVICE_ATTR_RW(in0_beep, beep, 0); +static SENSOR_DEVICE_ATTR_RW(in1_beep, beep, 1); +static SENSOR_DEVICE_ATTR_RW(in2_beep, beep, 2); +static SENSOR_DEVICE_ATTR_RW(in3_beep, beep, 3); +static SENSOR_DEVICE_ATTR_RW(temp1_beep, beep, 4); +static SENSOR_DEVICE_ATTR_RW(fan1_beep, beep, 5); +static SENSOR_DEVICE_ATTR_RW(fan2_beep, beep, 6); +static SENSOR_DEVICE_ATTR_RW(temp2_beep, beep, 7); +static SENSOR_DEVICE_ATTR_RW(in4_beep, beep, 7); static struct attribute *gl520_attributes[] = { &dev_attr_cpu0_vid.attr, From patchwork Thu Jan 17 21:13:23 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Guenter Roeck X-Patchwork-Id: 10769089 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 55B9F14E5 for ; Thu, 17 Jan 2019 21:14:00 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 45E7E2A54E for ; Thu, 17 Jan 2019 21:14:00 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 3A2412A568; Thu, 17 Jan 2019 21:14:00 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id DFBCE2A54E for ; Thu, 17 Jan 2019 21:13:59 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728383AbfAQVN7 (ORCPT ); Thu, 17 Jan 2019 16:13:59 -0500 Received: from mail-pg1-f194.google.com ([209.85.215.194]:37937 "EHLO mail-pg1-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728423AbfAQVN7 (ORCPT ); Thu, 17 Jan 2019 16:13:59 -0500 Received: by mail-pg1-f194.google.com with SMTP id g189so4984287pgc.5 for ; Thu, 17 Jan 2019 13:13:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=NJpNqq64eEzbIb8eTYq6UYm5HaPjjboRj3G0Q9w0oDY=; b=FwecOEntYYy181ITr1BLg+Sdln1fv6y8VBMmOa5w3h4VfnnySWR2mL4IGU3kBCbG9E TO8Zm1hgky0aMPfE8pMUnaYRszNj0iTCnJreASw41L3TVtPKbDRMAPxl/5LYiRVUsFcY 8ysbeqzdWuqG3zXYgTxMnLdsZuCqcLg8ZXYym293nPURM3NTSa+gaZlUSu/hS8t+cFBd ejEj3FpZv0MhHrmtheK5fn8+zyM6oiH6vdW+UuTJwBYyjOa7ySO5Uy9nP0DpT7psrjWk TQiZWq8NCXsSsI8Qw7yeo3MPDzpgeLtBmX3kYfMZme2+t4ONL0xOF05EyKs3JBcEOq5Y fZIQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=NJpNqq64eEzbIb8eTYq6UYm5HaPjjboRj3G0Q9w0oDY=; b=bm47TuQnhVAVqGjoiDXQ4jeMKHGVw2TiSCIyFKgurj+PMDxTehkOia1R2HKVd41Gd7 C0SGlhrW4EyZIpCkdwhZ7Is4K91xh4+Ftzu08CKLteox64ibgnrETiyNVwiyBsM5M1cT YajalhRNkRMMKe+1TlFQqOY+ydu01Z2ysGs5JLQPHntnEwQixJTEZqZjEc8JVayvvfRr 1lyHcn6CHF35nKEnY7TeKfIDxknQc8HX5DQqjSJviLVUqkXKDEuuiEYklZjuuGOpxoyP NeMYjCjhPYFdyTmSZcvA3wm/nRN65RmGOrTM3CNPuFpzavyxMODuM36npgqB0NuV3Kl0 Sv3A== X-Gm-Message-State: AJcUukeGlmZgA4ca8p+hIVm3QZLoYGaF0P260c2MpMTIuDjDSRIMQ5PY w9ZT97G13+wyvDDpdE5ev1QlHoip X-Google-Smtp-Source: ALg8bN7UOJUUr20lAkd24NWwqqKyg+L6Yihjv/+dawM2XFbqQl9h274swzp8epBfo/Pdqtcb/TyLnA== X-Received: by 2002:a62:18ce:: with SMTP id 197mr17077866pfy.88.1547759638189; Thu, 17 Jan 2019 13:13:58 -0800 (PST) Received: from localhost ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id i2sm4063854pfi.66.2019.01.17.13.13.57 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Jan 2019 13:13:57 -0800 (PST) From: Guenter Roeck To: Hardware Monitoring Cc: Jean Delvare , Guenter Roeck Subject: [PATCH 03/29] hwmon: (gpio-fan) Replace S_ with octal values Date: Thu, 17 Jan 2019 13:13:23 -0800 Message-Id: <1547759629-23007-4-git-send-email-linux@roeck-us.net> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1547759629-23007-1-git-send-email-linux@roeck-us.net> References: <1547759629-23007-1-git-send-email-linux@roeck-us.net> Sender: linux-hwmon-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-hwmon@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Replace S_ with octal values. The conversion was done automatically with coccinelle. The semantic patches and the scripts used to generate this commit log are available at https://github.com/groeck/coccinelle-patches/hwmon/. This patch does not introduce functional changes. It was verified by compiling the old and new files and comparing text and data sizes. Signed-off-by: Guenter Roeck --- drivers/hwmon/gpio-fan.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/hwmon/gpio-fan.c b/drivers/hwmon/gpio-fan.c index a3974cddef07..f1bf67aca9e8 100644 --- a/drivers/hwmon/gpio-fan.c +++ b/drivers/hwmon/gpio-fan.c @@ -307,7 +307,7 @@ static DEVICE_ATTR_RO(pwm1_mode); static DEVICE_ATTR_RO(fan1_min); static DEVICE_ATTR_RO(fan1_max); static DEVICE_ATTR_RO(fan1_input); -static DEVICE_ATTR(fan1_target, S_IRUGO | S_IWUSR, fan1_input_show, set_rpm); +static DEVICE_ATTR(fan1_target, 0644, fan1_input_show, set_rpm); static umode_t gpio_fan_is_visible(struct kobject *kobj, struct attribute *attr, int index) From patchwork Thu Jan 17 21:13:24 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Guenter Roeck X-Patchwork-Id: 10769091 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 94F3C13BF for ; Thu, 17 Jan 2019 21:14:02 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 8494D2A55F for ; Thu, 17 Jan 2019 21:14:02 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 78FD62A568; Thu, 17 Jan 2019 21:14:02 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 00D982A562 for ; Thu, 17 Jan 2019 21:14:02 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728499AbfAQVOB (ORCPT ); Thu, 17 Jan 2019 16:14:01 -0500 Received: from mail-pf1-f193.google.com ([209.85.210.193]:37052 "EHLO mail-pf1-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728423AbfAQVOB (ORCPT ); Thu, 17 Jan 2019 16:14:01 -0500 Received: by mail-pf1-f193.google.com with SMTP id y126so5433239pfb.4 for ; Thu, 17 Jan 2019 13:14:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=XzmEbjJ9SrLOSfx72f+gzjC2ZZN3Tm0oTCEI/4/BANk=; b=NgkbrG+NQvMG3e7etpzZYxopi1CRYA/1fRBwhNWZd33Xi4szzuVS+uThLF4YlQb4M5 6bZ+xcKBQE3TDV9Sf7DuxmW2W9QWdYTbPU5PccBj9nwaC1hVKuiyd2VkgI32F+IlP046 lzX7YIzN2mEXE5IAEIZDjK+JC6Z5/xelSPqjm/nl0gTxXe2iNKSC+Qe6dPfctcEX+VuY ACXDW5AmFI4zSVtk3a8mfsL2+aZiVNElhFQ1z3EoQpEL+cNiW6+0WTa/etg+wE0BdHD0 1GUh438BMSmEX09aAfvRoHjOb1BZO7vmZez8n70KBEM3CbncdviIggp8BFfqo6cMHCBh jeQw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=XzmEbjJ9SrLOSfx72f+gzjC2ZZN3Tm0oTCEI/4/BANk=; b=pELd+9QGH3G1iM9wFDCC8Qa5UQw4d2pur2DFWYubzRmtRHQSeCMFoX8tgPZkZh9g9I ip1KEa2X3lfs4GWLqE1xL3Od7IwG5cez3ryj3qTUmw24Gh3KpqBMICreoUqpcALrpLwn OYx+fP07xEEAxg2AYejn7cMJd3RzqK/VCQ3pTvglBPgu5M+UF+w8ThPjjh645QPZTcBx 5WKn6x6o37kFgeNUva9TLdnNDZTbbc112L3x1AqsYCskvAgzpiXGs3mfwQLL+DZfaeSb KfU9rM76Ft/rTpILUz/O8U9hn5pAAFx0Lexq7tMxhxja3GbwLIkcaBUDbNSq1c1XXJdn /Cnw== X-Gm-Message-State: AJcUukfK4J10e4mTl4h6CrnfeuciHPM9izhIRYmwgrWGNgN9rgX38/bD 9102Yyb/u2vkmDvBUORcweqGzTLW X-Google-Smtp-Source: ALg8bN7xNo/2EZqppvXKBNtLU2wo2iMKud+KyVUPuZLZNypeib+tIvNOKbbhoS1P1C3qgU0AXhx6kQ== X-Received: by 2002:a63:2d82:: with SMTP id t124mr14875594pgt.260.1547759640118; Thu, 17 Jan 2019 13:14:00 -0800 (PST) Received: from localhost ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id i2sm4063895pfi.66.2019.01.17.13.13.58 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Jan 2019 13:13:59 -0800 (PST) From: Guenter Roeck To: Hardware Monitoring Cc: Jean Delvare , Guenter Roeck Subject: [PATCH 04/29] hwmon: (hih6130) Use permission specific SENSOR[_DEVICE]_ATTR variants Date: Thu, 17 Jan 2019 13:13:24 -0800 Message-Id: <1547759629-23007-5-git-send-email-linux@roeck-us.net> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1547759629-23007-1-git-send-email-linux@roeck-us.net> References: <1547759629-23007-1-git-send-email-linux@roeck-us.net> Sender: linux-hwmon-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-hwmon@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Use SENSOR[_DEVICE]_ATTR[_2]_{RO,RW,WO} to simplify the source code, to improve readbility, and to reduce the chance of inconsistencies. Also replace any remaining S_ in the driver with octal values. The conversion was done automatically with coccinelle. The semantic patches and the scripts used to generate this commit log are available at https://github.com/groeck/coccinelle-patches/hwmon/. This patch does not introduce functional changes. It was verified by compiling the old and new files and comparing text and data sizes. Signed-off-by: Guenter Roeck --- drivers/hwmon/hih6130.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/drivers/hwmon/hih6130.c b/drivers/hwmon/hih6130.c index de1b50ddc740..d167fcfec765 100644 --- a/drivers/hwmon/hih6130.c +++ b/drivers/hwmon/hih6130.c @@ -171,7 +171,7 @@ static int hih6130_update_measurements(struct device *dev) * Will be called on read access to temp1_input sysfs attribute. * Returns number of bytes written into buffer, negative errno on error. */ -static ssize_t hih6130_show_temperature(struct device *dev, +static ssize_t hih6130_temperature_show(struct device *dev, struct device_attribute *attr, char *buf) { @@ -193,7 +193,7 @@ static ssize_t hih6130_show_temperature(struct device *dev, * Will be called on read access to humidity1_input sysfs attribute. * Returns number of bytes written into buffer, negative errno on error. */ -static ssize_t hih6130_show_humidity(struct device *dev, +static ssize_t hih6130_humidity_show(struct device *dev, struct device_attribute *attr, char *buf) { struct hih6130 *hih6130 = dev_get_drvdata(dev); @@ -206,10 +206,8 @@ static ssize_t hih6130_show_humidity(struct device *dev, } /* sysfs attributes */ -static SENSOR_DEVICE_ATTR(temp1_input, S_IRUGO, hih6130_show_temperature, - NULL, 0); -static SENSOR_DEVICE_ATTR(humidity1_input, S_IRUGO, hih6130_show_humidity, - NULL, 0); +static SENSOR_DEVICE_ATTR_RO(temp1_input, hih6130_temperature, 0); +static SENSOR_DEVICE_ATTR_RO(humidity1_input, hih6130_humidity, 0); static struct attribute *hih6130_attrs[] = { &sensor_dev_attr_temp1_input.dev_attr.attr, From patchwork Thu Jan 17 21:13:25 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Guenter Roeck X-Patchwork-Id: 10769093 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 5929213BF for ; Thu, 17 Jan 2019 21:14:04 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 4A2B92A55C for ; Thu, 17 Jan 2019 21:14:04 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 3DD362A54E; Thu, 17 Jan 2019 21:14:04 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id DC7EB2A54E for ; Thu, 17 Jan 2019 21:14:03 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728015AbfAQVOD (ORCPT ); Thu, 17 Jan 2019 16:14:03 -0500 Received: from mail-pf1-f194.google.com ([209.85.210.194]:36564 "EHLO mail-pf1-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728423AbfAQVOD (ORCPT ); Thu, 17 Jan 2019 16:14:03 -0500 Received: by mail-pf1-f194.google.com with SMTP id b85so5430857pfc.3 for ; Thu, 17 Jan 2019 13:14:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=CT1+kRC4VwRMFA1xZkie/rNeNrNqzRZm/8vOUITrQys=; b=Te56lHHp+0ADr1u1RJFRwDtcdIC3S4fGjQ2/+nRIJIEaCHcd8qtqbTp0FhCtjPEwlA Xkt9ZNGPaxncDBdzhZb0kTpFhyi1qe8pC8HSZH4BZyh+hoWuqb0GeOf8czttVUDkhUTW yj9M9ar2qRGExL9e3vArF9gXgdxwyyC1O86n2i+5JGpQ//6x834rtUiV022PW6FGvBMC FP4lF3gjTtUtZKa12NmU0VNOMFW/KpmDjO0hin5L/cXwiFiQnI67RjypsYRt0pInYowo XTARdlhzv6DVkdwVb81NyMD01yFRtkQfHnIlc4fhfP1+uuKm91jVHh44FiHYlSlval8S GyCg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=CT1+kRC4VwRMFA1xZkie/rNeNrNqzRZm/8vOUITrQys=; b=R4Ic/xzFrS8N8pGWLyRsGfLWnmHSpmB6TV847UJOPierbXHOt/o30RnXdc57uuB5j+ 0tFuy19d5jDTaWmAXJZvXYKtWWEBguxpEa40MGhL76PVrtGMxpH8BzBPc1+CgbdWddH5 0AB+plwK+SxBbSC0sLt+t6+lIM8KBhR5CX83VrD1mD48x8lqy/UWD2x4dE6PL4XrkwvZ n8UOB8D5yaYj3zem5RnGOF1LQol5H4qlG/lZ7pwbfy1AjeWjnDARtOYYqfcMvhWxnuq2 wHRVgKxRSxHErJxb3BUtHzu08Q9I1lfz6Dzl0nP9TaAD3PF8gLDoghnBR0UUu5Hrhnlk x9hQ== X-Gm-Message-State: AJcUuke7PqIIs4p0WzO0x62NiQS4o59IxKLkRHGXDKYAO/WVeGuHp9Iq fkywo6fMwEGL4VJ16eO46Xy6q4Vb X-Google-Smtp-Source: ALg8bN5isKcNImPccgAESGyDhQGSQ8AXqfTtdheGpZkRggjnmkcx8m7IGlLYd007UhGKy1J8z0RymQ== X-Received: by 2002:a63:6906:: with SMTP id e6mr14695225pgc.144.1547759641996; Thu, 17 Jan 2019 13:14:01 -0800 (PST) Received: from localhost ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id p77sm6010298pfi.85.2019.01.17.13.14.00 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Jan 2019 13:14:01 -0800 (PST) From: Guenter Roeck To: Hardware Monitoring Cc: Jean Delvare , Guenter Roeck Subject: [PATCH 05/29] hwmon: (hwmon) Replace S_ with octal values Date: Thu, 17 Jan 2019 13:13:25 -0800 Message-Id: <1547759629-23007-6-git-send-email-linux@roeck-us.net> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1547759629-23007-1-git-send-email-linux@roeck-us.net> References: <1547759629-23007-1-git-send-email-linux@roeck-us.net> Sender: linux-hwmon-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-hwmon@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Replace S_ with octal values. The conversion was done automatically with coccinelle. The semantic patches and the scripts used to generate this commit log are available at https://github.com/groeck/coccinelle-patches/hwmon/. This patch does not introduce functional changes. It was verified by compiling the old and new files and comparing text and data sizes. Signed-off-by: Guenter Roeck --- drivers/hwmon/hwmon.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/hwmon/hwmon.c b/drivers/hwmon/hwmon.c index 36ed50d4b276..c22dc1e07911 100644 --- a/drivers/hwmon/hwmon.c +++ b/drivers/hwmon/hwmon.c @@ -278,10 +278,10 @@ static struct attribute *hwmon_genattr(struct device *dev, if (!mode) return ERR_PTR(-ENOENT); - if ((mode & S_IRUGO) && ((is_string && !ops->read_string) || + if ((mode & 0444) && ((is_string && !ops->read_string) || (!is_string && !ops->read))) return ERR_PTR(-EINVAL); - if ((mode & S_IWUGO) && !ops->write) + if ((mode & 0222) && !ops->write) return ERR_PTR(-EINVAL); hattr = devm_kzalloc(dev, sizeof(*hattr), GFP_KERNEL); From patchwork Thu Jan 17 21:13:26 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Guenter Roeck X-Patchwork-Id: 10769095 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id B38146C2 for ; Thu, 17 Jan 2019 21:14:05 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id A3A4C2A54E for ; Thu, 17 Jan 2019 21:14:05 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 9865B2A55F; Thu, 17 Jan 2019 21:14:05 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 3BBC32A54E for ; Thu, 17 Jan 2019 21:14:05 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728423AbfAQVOF (ORCPT ); Thu, 17 Jan 2019 16:14:05 -0500 Received: from mail-pf1-f195.google.com ([209.85.210.195]:46791 "EHLO mail-pf1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728286AbfAQVOE (ORCPT ); Thu, 17 Jan 2019 16:14:04 -0500 Received: by mail-pf1-f195.google.com with SMTP id c73so5409584pfe.13 for ; Thu, 17 Jan 2019 13:14:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=48LmfwR+pLchJCu5bEeWFFVbtD0D/VnUkQL7IQD9lb4=; b=K/rpbUHYbXMzi4fxhT/xg2K65fwp0x+2iHEBKsnofmGKLtudd/ea0WEHdwzFeCozAL PMG0h10NKLni6JthhI4fxoUW5nED7S0n4DqUyI39JJUb0o3vFVIlYjy5hGQ2cU+6Udfg AR/p0ED/U5PQymDzkQjdtTUgmOk/Ug+LoXP7pJiD6TkPrqk5gEhNU1Kfmzgh/mB6VSAo MasKIhlsCIps3Ct7BUx2AiAxFuikMscAcdlY/hfOe8Q9Bfe6AS7rKIR8MR+XGWQUZ3uv 9V/gT3bIsPXtCHBDJzwCWZDUD1OBylXCjG8p5Ibk9Eq+i9i0MswaHJKC2AiAEUu38nVa ZoZA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=48LmfwR+pLchJCu5bEeWFFVbtD0D/VnUkQL7IQD9lb4=; b=lLQAhv4VosVyHx/mamvrqILFTHOXcfvULZkvNtDuc+Q9pfWMGicHJt/h/SBSeztmWK TSen8Iel26n0li9pt92NaLV7sQ5M4X3PA0+ojOj5Sm+RMPl1x5dCVwO57LTzU9lcotEJ CNFR0U0s6JSc35io748u1fy0grzFLfWjvHUCef9HBJJYy8PexCQtXefHrDhoZHXR5uDd 8q3coKlcjNJjyg2UQ0ZLCB8drA6GWpuq3104JVw19NOrLzIFuULhyN4Sv940qXe76j+B YaW/OvbkV4F6GLtYsiu4WFMCTwwNwsJ3OJ3B6Pu3027h+JWL3WptJSm3vCC6QD2xs806 l8oA== X-Gm-Message-State: AJcUukcUiyiJhUW6WwhUeMQlg5PZRs/9MpTDvLInuzQEk4GfpqMQneWY RtNX8Smny9wprsKjAH/1mhu1A7/r X-Google-Smtp-Source: ALg8bN4bUzqdG4/abNZSWrW46WgRTY5HIS6utDfOVVgQNF2XdTyK31GMe29ejZU3z7JS0CG03l9nSA== X-Received: by 2002:a63:40c6:: with SMTP id n189mr14603054pga.355.1547759643642; Thu, 17 Jan 2019 13:14:03 -0800 (PST) Received: from localhost ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id w10sm3413319pgi.81.2019.01.17.13.14.02 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Jan 2019 13:14:03 -0800 (PST) From: Guenter Roeck To: Hardware Monitoring Cc: Jean Delvare , Guenter Roeck Subject: [PATCH 06/29] hwmon: (i5500_temp) Use permission specific SENSOR[_DEVICE]_ATTR variants Date: Thu, 17 Jan 2019 13:13:26 -0800 Message-Id: <1547759629-23007-7-git-send-email-linux@roeck-us.net> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1547759629-23007-1-git-send-email-linux@roeck-us.net> References: <1547759629-23007-1-git-send-email-linux@roeck-us.net> Sender: linux-hwmon-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-hwmon@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Use SENSOR[_DEVICE]_ATTR[_2]_{RO,RW,WO} to simplify the source code, to improve readbility, and to reduce the chance of inconsistencies. Also replace any remaining S_ in the driver with octal values. The conversion was done automatically with coccinelle. The semantic patches and the scripts used to generate this commit log are available at https://github.com/groeck/coccinelle-patches/hwmon/. This patch does not introduce functional changes. It was verified by compiling the old and new files and comparing text and data sizes. Signed-off-by: Guenter Roeck --- drivers/hwmon/i5500_temp.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/drivers/hwmon/i5500_temp.c b/drivers/hwmon/i5500_temp.c index 400e0675a90b..a51038c6597d 100644 --- a/drivers/hwmon/i5500_temp.c +++ b/drivers/hwmon/i5500_temp.c @@ -58,7 +58,7 @@ static ssize_t temp1_input_show(struct device *dev, return sprintf(buf, "%ld\n", temp); } -static ssize_t show_thresh(struct device *dev, +static ssize_t thresh_show(struct device *dev, struct device_attribute *devattr, char *buf) { struct pci_dev *pdev = to_pci_dev(dev->parent); @@ -72,7 +72,7 @@ static ssize_t show_thresh(struct device *dev, return sprintf(buf, "%ld\n", temp); } -static ssize_t show_alarm(struct device *dev, +static ssize_t alarm_show(struct device *dev, struct device_attribute *devattr, char *buf) { struct pci_dev *pdev = to_pci_dev(dev->parent); @@ -84,11 +84,11 @@ static ssize_t show_alarm(struct device *dev, } static DEVICE_ATTR_RO(temp1_input); -static SENSOR_DEVICE_ATTR(temp1_crit, S_IRUGO, show_thresh, NULL, 0xE2); -static SENSOR_DEVICE_ATTR(temp1_max_hyst, S_IRUGO, show_thresh, NULL, 0xEC); -static SENSOR_DEVICE_ATTR(temp1_max, S_IRUGO, show_thresh, NULL, 0xEE); -static SENSOR_DEVICE_ATTR(temp1_crit_alarm, S_IRUGO, show_alarm, NULL, 0); -static SENSOR_DEVICE_ATTR(temp1_max_alarm, S_IRUGO, show_alarm, NULL, 1); +static SENSOR_DEVICE_ATTR_RO(temp1_crit, thresh, 0xE2); +static SENSOR_DEVICE_ATTR_RO(temp1_max_hyst, thresh, 0xEC); +static SENSOR_DEVICE_ATTR_RO(temp1_max, thresh, 0xEE); +static SENSOR_DEVICE_ATTR_RO(temp1_crit_alarm, alarm, 0); +static SENSOR_DEVICE_ATTR_RO(temp1_max_alarm, alarm, 1); static struct attribute *i5500_temp_attrs[] = { &dev_attr_temp1_input.attr, From patchwork Thu Jan 17 21:13:27 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Guenter Roeck X-Patchwork-Id: 10769097 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id ADA1E13BF for ; Thu, 17 Jan 2019 21:14:07 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 9DBFF2A54E for ; Thu, 17 Jan 2019 21:14:07 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 927092A55F; Thu, 17 Jan 2019 21:14:07 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id F19472A54E for ; Thu, 17 Jan 2019 21:14:06 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728436AbfAQVOG (ORCPT ); Thu, 17 Jan 2019 16:14:06 -0500 Received: from mail-pf1-f195.google.com ([209.85.210.195]:44504 "EHLO mail-pf1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728286AbfAQVOG (ORCPT ); Thu, 17 Jan 2019 16:14:06 -0500 Received: by mail-pf1-f195.google.com with SMTP id u6so5416599pfh.11 for ; Thu, 17 Jan 2019 13:14:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=JVs2+vUWrbs1sUEGMyhyGuVRYb9oTyBLjoe+e8rENr0=; b=ftJUvApkD4Zdy3sSZzow3osJuAGQYUHhwgbXHRrIlTj0zDOxiCwDdTLEM0lGDR4sut ebUcqB/+wf+Tylkkq1PwUjdKPri4nByMRvB7o2bhobGrXquc/eP73PUVlC+/WFjZgQQj UHyt0OeBRGYfIR1yP1HhQyMRWSgImaeeoFumfHzKwrDbspguzCRNbIRAu67L2YNNGoep p8wKeiuW4rXWZpJrTeknAhVIoU8sb8tkhjyrtTrpHoLALiCub7rab++tC1NCbiWib/9l 3D682ZfOT83XOY3MdvLIo4kwyRj2UGXtvUSSccRCSkj9B+908gTVHliU1BhBckux8xY2 wnyQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=JVs2+vUWrbs1sUEGMyhyGuVRYb9oTyBLjoe+e8rENr0=; b=OcS36IImsHyfFfxSySQawS0rff+IZTtEoOOVuk9zEGwgcLb0+LhCcfTz3XTL+uKnKv JR4mDZ8rvncGP1nEOBfjQvaoUfHR8KTErIjGLySjP4/Dcx3W8oWNdDXuqjqeA0dOl+TJ g7WbToZxeiJVlDoy4fmx8kBX3An5zVZl6TnPsvG5oy6TVY4klZa7Xtg822ptNkrJyg2O 94ttL1Ut/BQAwsxErIiiBhYfoEdv3RWfsAH0EReiWif/vZIo6CYC4xB5rj8pzXvAfIki Y8WDwSeeWTIw06KwEpuo/p8ARplt889p1OTnqLlr1ptk+hlnH8tMm8eOF6nnCvAuKv8z HqFA== X-Gm-Message-State: AJcUukcsiqIo6WBcamGHjqw1A3t70YEqB5Tsoxnk+duWZwJ/fZEyqAgR uqOOUKsl5FztdzWp9Yas5J88I6iX X-Google-Smtp-Source: ALg8bN4fvldp1KZz6iUMFJOU3Nx98XC1HMqNw2f+S2cLjOXCWA8PL1qRXtEqbHDWc/qjo/eAEh195g== X-Received: by 2002:a63:5402:: with SMTP id i2mr14630604pgb.79.1547759645377; Thu, 17 Jan 2019 13:14:05 -0800 (PST) Received: from localhost ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id w185sm3754858pfb.135.2019.01.17.13.14.04 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Jan 2019 13:14:04 -0800 (PST) From: Guenter Roeck To: Hardware Monitoring Cc: Jean Delvare , Guenter Roeck Subject: [PATCH 07/29] hwmon: (i5k_amb) Replace S_ with octal values Date: Thu, 17 Jan 2019 13:13:27 -0800 Message-Id: <1547759629-23007-8-git-send-email-linux@roeck-us.net> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1547759629-23007-1-git-send-email-linux@roeck-us.net> References: <1547759629-23007-1-git-send-email-linux@roeck-us.net> Sender: linux-hwmon-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-hwmon@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Replace S_ with octal values. The conversion was done automatically with coccinelle. The semantic patches and the scripts used to generate this commit log are available at https://github.com/groeck/coccinelle-patches/hwmon/. This patch does not introduce functional changes. It was verified by compiling the old and new files and comparing text and data sizes. Signed-off-by: Guenter Roeck --- drivers/hwmon/i5k_amb.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/drivers/hwmon/i5k_amb.c b/drivers/hwmon/i5k_amb.c index a4edc43dd060..2cf73d8eec1c 100644 --- a/drivers/hwmon/i5k_amb.c +++ b/drivers/hwmon/i5k_amb.c @@ -296,7 +296,7 @@ static int i5k_amb_hwmon_init(struct platform_device *pdev) snprintf(iattr->name, AMB_SYSFS_NAME_LEN, "temp%d_label", d); iattr->s_attr.dev_attr.attr.name = iattr->name; - iattr->s_attr.dev_attr.attr.mode = S_IRUGO; + iattr->s_attr.dev_attr.attr.mode = 0444; iattr->s_attr.dev_attr.show = show_label; iattr->s_attr.index = k; sysfs_attr_init(&iattr->s_attr.dev_attr.attr); @@ -311,7 +311,7 @@ static int i5k_amb_hwmon_init(struct platform_device *pdev) snprintf(iattr->name, AMB_SYSFS_NAME_LEN, "temp%d_input", d); iattr->s_attr.dev_attr.attr.name = iattr->name; - iattr->s_attr.dev_attr.attr.mode = S_IRUGO; + iattr->s_attr.dev_attr.attr.mode = 0444; iattr->s_attr.dev_attr.show = show_amb_temp; iattr->s_attr.index = k; sysfs_attr_init(&iattr->s_attr.dev_attr.attr); @@ -326,7 +326,7 @@ static int i5k_amb_hwmon_init(struct platform_device *pdev) snprintf(iattr->name, AMB_SYSFS_NAME_LEN, "temp%d_min", d); iattr->s_attr.dev_attr.attr.name = iattr->name; - iattr->s_attr.dev_attr.attr.mode = S_IWUSR | S_IRUGO; + iattr->s_attr.dev_attr.attr.mode = 0644; iattr->s_attr.dev_attr.show = show_amb_min; iattr->s_attr.dev_attr.store = store_amb_min; iattr->s_attr.index = k; @@ -342,7 +342,7 @@ static int i5k_amb_hwmon_init(struct platform_device *pdev) snprintf(iattr->name, AMB_SYSFS_NAME_LEN, "temp%d_mid", d); iattr->s_attr.dev_attr.attr.name = iattr->name; - iattr->s_attr.dev_attr.attr.mode = S_IWUSR | S_IRUGO; + iattr->s_attr.dev_attr.attr.mode = 0644; iattr->s_attr.dev_attr.show = show_amb_mid; iattr->s_attr.dev_attr.store = store_amb_mid; iattr->s_attr.index = k; @@ -358,7 +358,7 @@ static int i5k_amb_hwmon_init(struct platform_device *pdev) snprintf(iattr->name, AMB_SYSFS_NAME_LEN, "temp%d_max", d); iattr->s_attr.dev_attr.attr.name = iattr->name; - iattr->s_attr.dev_attr.attr.mode = S_IWUSR | S_IRUGO; + iattr->s_attr.dev_attr.attr.mode = 0644; iattr->s_attr.dev_attr.show = show_amb_max; iattr->s_attr.dev_attr.store = store_amb_max; iattr->s_attr.index = k; @@ -374,7 +374,7 @@ static int i5k_amb_hwmon_init(struct platform_device *pdev) snprintf(iattr->name, AMB_SYSFS_NAME_LEN, "temp%d_alarm", d); iattr->s_attr.dev_attr.attr.name = iattr->name; - iattr->s_attr.dev_attr.attr.mode = S_IRUGO; + iattr->s_attr.dev_attr.attr.mode = 0444; iattr->s_attr.dev_attr.show = show_amb_alarm; iattr->s_attr.index = k; sysfs_attr_init(&iattr->s_attr.dev_attr.attr); From patchwork Thu Jan 17 21:13:28 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Guenter Roeck X-Patchwork-Id: 10769099 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id DFE8A13BF for ; Thu, 17 Jan 2019 21:14:09 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id D10CD2A54E for ; Thu, 17 Jan 2019 21:14:09 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id C4F5A2A55F; Thu, 17 Jan 2019 21:14:09 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 52FDC2A56F for ; Thu, 17 Jan 2019 21:14:09 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727883AbfAQVOJ (ORCPT ); Thu, 17 Jan 2019 16:14:09 -0500 Received: from mail-pf1-f193.google.com ([209.85.210.193]:36568 "EHLO mail-pf1-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728286AbfAQVOI (ORCPT ); Thu, 17 Jan 2019 16:14:08 -0500 Received: by mail-pf1-f193.google.com with SMTP id b85so5430969pfc.3 for ; Thu, 17 Jan 2019 13:14:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=3mfvptKLMXXOXnUrtUJCLdQCIJ95XewVum4lyMbK3m4=; b=VFSNVcOrQ83bm1OI6TJUFp+t51pK0Tsj+EauGeK/qvWI3O6QsqA7sDzIg2WMDE+xvj +1nbjmVBFkmcXE8fjEUeXk7TLxJmFtHUHLNqg8Gi8/5KvOtnaNCVtwwurEZSUohuPgsz cmBtl8YNzRX6upZixcCv3hOzpvZPVaicSd8ILlu58PKwDUWH9hE5RcYgfG9zrGQhiM+W 3XcaWMQ92tuQYsFHEToewbCvSzekvBBpkwh1vLnqnsJ09nkJNmzjsCl+QmlXKLTTywYS uId0iLFvfCaZuWCUEhehwPiG9II2GxllMAd/6k3Q+eyq2aGPkA7jlF/RyOXCN0aYzvKp isYA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=3mfvptKLMXXOXnUrtUJCLdQCIJ95XewVum4lyMbK3m4=; b=AwZCXdV2DfrVKQkfBmeXqWZzZHZ9UF/IH1e6EnxF60fGXCxzKrU9RJ+i4kowbx82HI a56cDVFKDNsfsJpYe7L3vJmCunHKdkNHGE84k0zdvwEhYO/IpiyBMd2aXXZmbKgCCGne xwHoIpRjqAB5C/eOkM5mB0JpSC55QSbiXCpnXpZ0GHk5lLHlQXHuytUzrSzhzdn0KFlu ZM68a2kF7DxsheuMm31XVspczFMwCsWAGdv01HeWH/MPDE1wmY9dLRcMmEesahbZ47/A ePgpyHob0c70a4cw+xWRzwCEMAoc2mX+32YBGw5/ovzuQRM1IwxnmXV6sq22t/7DLIoP 6iMQ== X-Gm-Message-State: AJcUukeT6J7Nu7xX6T4O4RhoS0tXp1tfRPiQPvrVXx0dljicqQeTLL+t fBbCLamgWOzKjDqZOTCakBdohIbJ X-Google-Smtp-Source: ALg8bN5chrvxcVoBiLmqbBbZMDs1lwp1pX/mCFH7RRtgPZUckQNTfxTrYGUtv/Oqy6QFldmmbIvLUQ== X-Received: by 2002:a63:cf48:: with SMTP id b8mr15191753pgj.17.1547759647090; Thu, 17 Jan 2019 13:14:07 -0800 (PST) Received: from localhost ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id r1sm3638980pgo.17.2019.01.17.13.14.06 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Jan 2019 13:14:06 -0800 (PST) From: Guenter Roeck To: Hardware Monitoring Cc: Jean Delvare , Guenter Roeck Subject: [PATCH 08/29] hwmon: (ibmaem) Use permission specific SENSOR[_DEVICE]_ATTR variants Date: Thu, 17 Jan 2019 13:13:28 -0800 Message-Id: <1547759629-23007-9-git-send-email-linux@roeck-us.net> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1547759629-23007-1-git-send-email-linux@roeck-us.net> References: <1547759629-23007-1-git-send-email-linux@roeck-us.net> Sender: linux-hwmon-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-hwmon@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Use SENSOR[_DEVICE]_ATTR[_2]_{RO,RW,WO} to simplify the source code, to improve readbility, and to reduce the chance of inconsistencies. Also replace any remaining S_ in the driver with octal values. The conversion was done automatically with coccinelle. The semantic patches and the scripts used to generate this commit log are available at https://github.com/groeck/coccinelle-patches/hwmon/. This patch does not introduce functional changes. It was verified by compiling the old and new files and comparing text and data sizes. Signed-off-by: Guenter Roeck --- drivers/hwmon/ibmaem.c | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/drivers/hwmon/ibmaem.c b/drivers/hwmon/ibmaem.c index 9e92673f6913..db63c1295cb2 100644 --- a/drivers/hwmon/ibmaem.c +++ b/drivers/hwmon/ibmaem.c @@ -813,25 +813,24 @@ static void aem_bmc_gone(int iface) /* sysfs support functions */ /* AEM device name */ -static ssize_t show_name(struct device *dev, struct device_attribute *devattr, +static ssize_t name_show(struct device *dev, struct device_attribute *devattr, char *buf) { struct aem_data *data = dev_get_drvdata(dev); return sprintf(buf, "%s%d\n", DRVNAME, data->ver_major); } -static SENSOR_DEVICE_ATTR(name, S_IRUGO, show_name, NULL, 0); +static SENSOR_DEVICE_ATTR_RO(name, name, 0); /* AEM device version */ -static ssize_t show_version(struct device *dev, - struct device_attribute *devattr, - char *buf) +static ssize_t version_show(struct device *dev, + struct device_attribute *devattr, char *buf) { struct aem_data *data = dev_get_drvdata(dev); return sprintf(buf, "%d.%d\n", data->ver_major, data->ver_minor); } -static SENSOR_DEVICE_ATTR(version, S_IRUGO, show_version, NULL, 0); +static SENSOR_DEVICE_ATTR_RO(version, version, 0); /* Display power use */ static ssize_t aem_show_power(struct device *dev, @@ -931,7 +930,7 @@ static int aem_register_sensors(struct aem_data *data, while (ro->label) { sysfs_attr_init(&sensors->dev_attr.attr); sensors->dev_attr.attr.name = ro->label; - sensors->dev_attr.attr.mode = S_IRUGO; + sensors->dev_attr.attr.mode = 0444; sensors->dev_attr.show = ro->show; sensors->index = ro->index; @@ -948,7 +947,7 @@ static int aem_register_sensors(struct aem_data *data, while (rw->label) { sysfs_attr_init(&sensors->dev_attr.attr); sensors->dev_attr.attr.name = rw->label; - sensors->dev_attr.attr.mode = S_IRUGO | S_IWUSR; + sensors->dev_attr.attr.mode = 0644; sensors->dev_attr.show = rw->show; sensors->dev_attr.store = rw->set; sensors->index = rw->index; From patchwork Thu Jan 17 21:13:29 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Guenter Roeck X-Patchwork-Id: 10769101 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id A75B46C2 for ; Thu, 17 Jan 2019 21:14:10 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 946D12A54E for ; Thu, 17 Jan 2019 21:14:10 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 868B32A55F; Thu, 17 Jan 2019 21:14:10 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 240742A54E for ; Thu, 17 Jan 2019 21:14:10 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728534AbfAQVOK (ORCPT ); Thu, 17 Jan 2019 16:14:10 -0500 Received: from mail-pl1-f193.google.com ([209.85.214.193]:38862 "EHLO mail-pl1-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728286AbfAQVOJ (ORCPT ); Thu, 17 Jan 2019 16:14:09 -0500 Received: by mail-pl1-f193.google.com with SMTP id e5so5302665plb.5 for ; Thu, 17 Jan 2019 13:14:09 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=J1pLXu5NklQ5Cb5PVVzVAM6/wdnwaHWdgnwAP9Klmm4=; b=Qj22x0KLDe5YEYKmKLqZBRcLS7TCwK6Rh55WJaL6jtdF9ESj/ODmUafVy4dcu0v/Kp QFy8NYIWi2pJl/Bc2511cWDFB4/fn4g5v010LEnsI9heBAt2d5woY0iiIGdNtpzknoM4 UYyiEFOP3gfLu2ahIo64qnhRO33rmQ7puyYp+eX4viKTjYGRzbXLR8wzv4Rrif3Tsdaf EWbw+f6v9KmhM1W5lxo6HCeg/+wxXrebHUjitAblIvojnLE9Y6jbW2IPLx67eWhJcJHZ /+UsXXL8lyeYQooZvr9uaf0oEab5Pzc6OhlrNspD7E0ndLMNaABd+RhVYWuoS7+r4P+w 2YNw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=J1pLXu5NklQ5Cb5PVVzVAM6/wdnwaHWdgnwAP9Klmm4=; b=BTBfqE6+UfGLe+okLHa/WPNyat5Wf3vJ8H8f8D98uIthVa6txdOG66ZBNbDQY3+KiT A+tuXmPwhGNCvaqfSIOwYtOPCxCpGwivmf2g1RTMLzbTJuXaoqeRe7+BJbb+VaYRIbw0 xVcDkOZ0FmzdozZW7pxxWnTQ+fSHJqIaqIhXxeXwTCYZO+qZw3GI5L5Dv2NdWim2sIw4 lcZ6J8BX9+HSIQrKNukFPzW/YHfvQJ/6O6fZyoPPUEZ2eM37OZe4gstm8dlWDVIrbRlO m72NQUp4lGhmcwJvK7bjOrpbezRZQSuMzE3t3x4jjNyxvJBTSFEru6H4qhTn5/gLNr1J WfQw== X-Gm-Message-State: AJcUukdZCJvnHzpdjkNFL/0Y08HQ1vJswG8RTPqv4sIYxF6wrTnyO4fK NvTKRxJ5awZs1KDKE+eTS47t/fUA X-Google-Smtp-Source: ALg8bN6v5HP9P5g0JsWcKJ8dksCxIqDfDpkAH+LuxcUghy1F1ZXSkC56o1ZQnaX6R0jjrazsEWVDzg== X-Received: by 2002:a17:902:820f:: with SMTP id x15mr15913324pln.224.1547759648719; Thu, 17 Jan 2019 13:14:08 -0800 (PST) Received: from localhost ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id d129sm5466658pfc.31.2019.01.17.13.14.07 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Jan 2019 13:14:08 -0800 (PST) From: Guenter Roeck To: Hardware Monitoring Cc: Jean Delvare , Guenter Roeck Subject: [PATCH 09/29] hwmon: (ibmpex) Use permission specific SENSOR[_DEVICE]_ATTR variants Date: Thu, 17 Jan 2019 13:13:29 -0800 Message-Id: <1547759629-23007-10-git-send-email-linux@roeck-us.net> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1547759629-23007-1-git-send-email-linux@roeck-us.net> References: <1547759629-23007-1-git-send-email-linux@roeck-us.net> Sender: linux-hwmon-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-hwmon@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Use SENSOR[_DEVICE]_ATTR[_2]_{RO,RW,WO} to simplify the source code, to improve readbility, and to reduce the chance of inconsistencies. Also replace any remaining S_ in the driver with octal values. The conversion was done automatically with coccinelle. The semantic patches and the scripts used to generate this commit log are available at https://github.com/groeck/coccinelle-patches/hwmon/. This patch does not introduce functional changes. It was verified by compiling the old and new files and comparing text and data sizes. Signed-off-by: Guenter Roeck --- drivers/hwmon/ibmpex.c | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/drivers/hwmon/ibmpex.c b/drivers/hwmon/ibmpex.c index bb17a29af64c..5fd70faf0d16 100644 --- a/drivers/hwmon/ibmpex.c +++ b/drivers/hwmon/ibmpex.c @@ -269,12 +269,12 @@ static struct ibmpex_bmc_data *get_bmc_data(int iface) return NULL; } -static ssize_t show_name(struct device *dev, struct device_attribute *devattr, +static ssize_t name_show(struct device *dev, struct device_attribute *devattr, char *buf) { return sprintf(buf, "%s\n", DRVNAME); } -static SENSOR_DEVICE_ATTR(name, S_IRUGO, show_name, NULL, 0); +static SENSOR_DEVICE_ATTR_RO(name, name, 0); static ssize_t ibmpex_show_sensor(struct device *dev, struct device_attribute *devattr, @@ -289,10 +289,9 @@ static ssize_t ibmpex_show_sensor(struct device *dev, data->sensors[attr->index].values[attr->nr] * mult); } -static ssize_t ibmpex_reset_high_low(struct device *dev, +static ssize_t ibmpex_high_low_store(struct device *dev, struct device_attribute *devattr, - const char *buf, - size_t count) + const char *buf, size_t count) { struct ibmpex_bmc_data *data = dev_get_drvdata(dev); @@ -301,8 +300,7 @@ static ssize_t ibmpex_reset_high_low(struct device *dev, return count; } -static SENSOR_DEVICE_ATTR(reset_high_low, S_IWUSR, NULL, - ibmpex_reset_high_low, 0); +static SENSOR_DEVICE_ATTR_WO(reset_high_low, ibmpex_high_low, 0); static int is_power_sensor(const char *sensor_id, int len) { @@ -358,7 +356,7 @@ static int create_sensor(struct ibmpex_bmc_data *data, int type, sysfs_attr_init(&data->sensors[sensor].attr[func].dev_attr.attr); data->sensors[sensor].attr[func].dev_attr.attr.name = n; - data->sensors[sensor].attr[func].dev_attr.attr.mode = S_IRUGO; + data->sensors[sensor].attr[func].dev_attr.attr.mode = 0444; data->sensors[sensor].attr[func].dev_attr.show = ibmpex_show_sensor; data->sensors[sensor].attr[func].index = sensor; data->sensors[sensor].attr[func].nr = func; From patchwork Thu Jan 17 21:13:30 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Guenter Roeck X-Patchwork-Id: 10769103 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 7206913BF for ; Thu, 17 Jan 2019 21:14:12 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 63DF12A54E for ; Thu, 17 Jan 2019 21:14:12 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 583102A55F; Thu, 17 Jan 2019 21:14:12 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 0CE932A54E for ; Thu, 17 Jan 2019 21:14:12 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728286AbfAQVOL (ORCPT ); Thu, 17 Jan 2019 16:14:11 -0500 Received: from mail-pf1-f196.google.com ([209.85.210.196]:46800 "EHLO mail-pf1-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728239AbfAQVOL (ORCPT ); Thu, 17 Jan 2019 16:14:11 -0500 Received: by mail-pf1-f196.google.com with SMTP id c73so5409714pfe.13 for ; Thu, 17 Jan 2019 13:14:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=Q1kfYMjdHJIxVh9BATerwSZ4HvNLxcWi+3DRF4UQLmI=; b=nYNNYGzZUasjNgbbNnDAT2xe8maeELxIrDj/gw7f+d5wnyRsuh2eTgf6owxtSN8gyh 4N/CZvPSwOaipuTxhy08BR68jjzwQhGSsLBIVCrFUg6qYTNErNblidBPsvWrijEnCyZF lnmImJzXSRC3bJbOmKaEom2J87AjYjlwQ0U7VPiyKeuwxPvVfP6Tf1gfkCxJMbfILXgy ViEK49Uqcq5tAZ6nb9EVdi2sAiIc69BiBM1kALTlUVdfvpniBuMS7KoWFnHiAy3X4RnM lMujiP8J/cR6VosHCFVftSJNyDvrYJxLQ08L641kADZnIjmQDJ5O/fottz6e4VhHCdDL kyKQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=Q1kfYMjdHJIxVh9BATerwSZ4HvNLxcWi+3DRF4UQLmI=; b=e6KasNPqttRSm3KfhsEc5XtFONTyEC5zj5Zp7UTAfV0xHmvHF0PxVbERxufvnLxbH/ Sybiuz6HM58SJgKM2ZlYWfNpuyLZtjIaeZVRYEQ26/CJC4nGvxjrAe+ZA0lNgR06+Jb+ eTO8vvmZtA/wKRMPyyQNDc1U0+2bAGdjY9R+x1W1fcEhXBmy/0WgjXCyodaMrtaHvLH2 HTpNPFMN2j9Cf4+JcYQPmxxdhAWxlaZA8BRXjutqPbEUALQN/sD9L0VbTvVMy/5beiH/ BdowbCU4kmwcG7HZmbl1O9d3GRpBTRRfTVdJC0nHr+coltMnh+Eet+0VNoWaYye1y1Sf 1X9A== X-Gm-Message-State: AJcUukdijCV9o+AocrqhQ6ihbPw5CimhbOElhUifwakJfTS/52zFbyWe 2EtJY6GzasEaxR+A+HPszm8glmRG X-Google-Smtp-Source: ALg8bN4afgxvjVTG0DLlnbA39V8O7bPscHAcgVPpM66UnqDk+r+wJBLB0ixNpWJhZmFu0FKAv+XV4Q== X-Received: by 2002:a62:931a:: with SMTP id b26mr17198502pfe.65.1547759650305; Thu, 17 Jan 2019 13:14:10 -0800 (PST) Received: from localhost ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id t90sm4968302pfj.23.2019.01.17.13.14.09 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Jan 2019 13:14:09 -0800 (PST) From: Guenter Roeck To: Hardware Monitoring Cc: Jean Delvare , Guenter Roeck Subject: [PATCH 10/29] hwmon: (iio_hwmon) Replace S_ with octal values Date: Thu, 17 Jan 2019 13:13:30 -0800 Message-Id: <1547759629-23007-11-git-send-email-linux@roeck-us.net> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1547759629-23007-1-git-send-email-linux@roeck-us.net> References: <1547759629-23007-1-git-send-email-linux@roeck-us.net> Sender: linux-hwmon-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-hwmon@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Replace S_ with octal values. The conversion was done automatically with coccinelle. The semantic patches and the scripts used to generate this commit log are available at https://github.com/groeck/coccinelle-patches/hwmon/. This patch does not introduce functional changes. It was verified by compiling the old and new files and comparing text and data sizes. Signed-off-by: Guenter Roeck --- drivers/hwmon/iio_hwmon.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/hwmon/iio_hwmon.c b/drivers/hwmon/iio_hwmon.c index eed66e533ee2..5c3c08449de7 100644 --- a/drivers/hwmon/iio_hwmon.c +++ b/drivers/hwmon/iio_hwmon.c @@ -129,7 +129,7 @@ static int iio_hwmon_probe(struct platform_device *pdev) return -ENOMEM; a->dev_attr.show = iio_hwmon_read_val; - a->dev_attr.attr.mode = S_IRUGO; + a->dev_attr.attr.mode = 0444; a->index = i; st->attrs[i] = &a->dev_attr.attr; } From patchwork Thu Jan 17 21:13:31 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Guenter Roeck X-Patchwork-Id: 10769105 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 7C0AE13BF for ; Thu, 17 Jan 2019 21:14:14 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 6C6EA2A54E for ; Thu, 17 Jan 2019 21:14:14 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 5F3A72A55F; Thu, 17 Jan 2019 21:14:14 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 988AD2A54E for ; Thu, 17 Jan 2019 21:14:13 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728544AbfAQVON (ORCPT ); Thu, 17 Jan 2019 16:14:13 -0500 Received: from mail-pl1-f195.google.com ([209.85.214.195]:39927 "EHLO mail-pl1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728239AbfAQVON (ORCPT ); Thu, 17 Jan 2019 16:14:13 -0500 Received: by mail-pl1-f195.google.com with SMTP id 101so5297940pld.6 for ; Thu, 17 Jan 2019 13:14:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=9JqaKgiveE4F5YM/uK1rASqgM9lKuUgqKdKnKdrCd0I=; b=SzR2noyM7zPVxLN2IUpaIY7qYIWtKdae3W6eWfxph46LFkwbq5oHrX3e2Dg5CLVk/R nvu/BHh4lblfUIVRVubO9L7aLSPOlYnBzIcmNGIKIk8tgZUNMCzjH1hsqJKaavd3LWu/ qpskWg9UZoyx63dGLTjtgSOezjgr+J7qnwSPm/xqvikI0x289pOFAh25Aed84FDLa49U SrlToND86+xS6dlk5a8mi+/DVa61T1jwzkQPMHAhJ3lWjmfcL6/QsnqEXKcgTWJreu98 M9zE3BRGpZf13bMZtgDsgybfcBsC8P6ErrMvU6fErr4LwaWyernpTg0kR3szl3/IaEqV l5wA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=9JqaKgiveE4F5YM/uK1rASqgM9lKuUgqKdKnKdrCd0I=; b=lcRXeK0cC8za5vhxzezwQFC0+AN+Al37YMogwJsmz7O2s5Za9swVrvmTNQ+P4/o3lV iM66+FwRbAkePmwybHaCAsbGzRLou3W3V0eG4jObCiwA6Um8zt7I90wi0ImYxpes+18h DVe6RLLDNupXGI4cq0r8jrWAtK6pZeQhJRRoC+00Dyqyqkvd7GqmkvW+mOBpPEtQNq3Q 95xEoUDz7a7KJ1cgS5tyBhANMwYfC/GonHSjDbfW7y8Ppx1YRjRDZxfjPtk8DF2YCq04 yRGiZ0NQwnf5UT/NSF/a592LBzwy8FCLfc955gbwmYjH+gfgJI7PGAf+kREys2CeBibW 1aQA== X-Gm-Message-State: AJcUukeUcFDEsWR39IYpIQB4RrUwXf1153ZVBdgoyzjHnHvjBkNasHfB VccZJVgfab9R4sdqwn2ZUlkytpzN X-Google-Smtp-Source: ALg8bN4DAaXx7/L/yrQUvUI03rS1UR/Lgltz6RRR6wwF0jh/rHYD5euLOG8DllMsNwCglMtlIOVNcw== X-Received: by 2002:a17:902:9f89:: with SMTP id g9mr16588815plq.214.1547759651853; Thu, 17 Jan 2019 13:14:11 -0800 (PST) Received: from localhost ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id s9sm5264094pgl.88.2019.01.17.13.14.11 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Jan 2019 13:14:11 -0800 (PST) From: Guenter Roeck To: Hardware Monitoring Cc: Jean Delvare , Guenter Roeck Subject: [PATCH 11/29] hwmon: (ina209) Use permission specific SENSOR[_DEVICE]_ATTR variants Date: Thu, 17 Jan 2019 13:13:31 -0800 Message-Id: <1547759629-23007-12-git-send-email-linux@roeck-us.net> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1547759629-23007-1-git-send-email-linux@roeck-us.net> References: <1547759629-23007-1-git-send-email-linux@roeck-us.net> Sender: linux-hwmon-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-hwmon@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Use SENSOR[_DEVICE]_ATTR[_2]_{RO,RW,WO} to simplify the source code, to improve readbility, and to reduce the chance of inconsistencies. Also replace any remaining S_ in the driver with octal values. The conversion was done automatically with coccinelle. The semantic patches and the scripts used to generate this commit log are available at https://github.com/groeck/coccinelle-patches/hwmon/. This patch does not introduce functional changes. It was verified by compiling the old and new files and comparing text and data sizes. Signed-off-by: Guenter Roeck --- drivers/hwmon/ina209.c | 151 +++++++++++++++++++++---------------------------- 1 file changed, 65 insertions(+), 86 deletions(-) diff --git a/drivers/hwmon/ina209.c b/drivers/hwmon/ina209.c index aa0768ce8aea..e3854463db84 100644 --- a/drivers/hwmon/ina209.c +++ b/drivers/hwmon/ina209.c @@ -230,9 +230,9 @@ static u16 ina209_reg_from_interval(u16 config, long interval) return (config & 0xf807) | (adc << 3) | (adc << 7); } -static ssize_t ina209_set_interval(struct device *dev, - struct device_attribute *da, - const char *buf, size_t count) +static ssize_t ina209_interval_store(struct device *dev, + struct device_attribute *da, + const char *buf, size_t count) { struct ina209_data *data = ina209_update_device(dev); long val; @@ -257,7 +257,7 @@ static ssize_t ina209_set_interval(struct device *dev, return count; } -static ssize_t ina209_show_interval(struct device *dev, +static ssize_t ina209_interval_show(struct device *dev, struct device_attribute *da, char *buf) { struct ina209_data *data = dev_get_drvdata(dev); @@ -279,10 +279,9 @@ static u16 ina209_reset_history_regs[] = { INA209_POWER_PEAK }; -static ssize_t ina209_reset_history(struct device *dev, +static ssize_t ina209_history_store(struct device *dev, struct device_attribute *da, - const char *buf, - size_t count) + const char *buf, size_t count) { struct sensor_device_attribute *attr = to_sensor_dev_attr(da); struct ina209_data *data = dev_get_drvdata(dev); @@ -306,10 +305,9 @@ static ssize_t ina209_reset_history(struct device *dev, return count; } -static ssize_t ina209_set_value(struct device *dev, - struct device_attribute *da, - const char *buf, - size_t count) +static ssize_t ina209_value_store(struct device *dev, + struct device_attribute *da, + const char *buf, size_t count) { struct ina209_data *data = ina209_update_device(dev); struct sensor_device_attribute *attr = to_sensor_dev_attr(da); @@ -337,9 +335,8 @@ static ssize_t ina209_set_value(struct device *dev, return count; } -static ssize_t ina209_show_value(struct device *dev, - struct device_attribute *da, - char *buf) +static ssize_t ina209_value_show(struct device *dev, + struct device_attribute *da, char *buf) { struct sensor_device_attribute *attr = to_sensor_dev_attr(da); struct ina209_data *data = ina209_update_device(dev); @@ -352,9 +349,8 @@ static ssize_t ina209_show_value(struct device *dev, return snprintf(buf, PAGE_SIZE, "%ld\n", val); } -static ssize_t ina209_show_alarm(struct device *dev, - struct device_attribute *da, - char *buf) +static ssize_t ina209_alarm_show(struct device *dev, + struct device_attribute *da, char *buf) { struct sensor_device_attribute *attr = to_sensor_dev_attr(da); struct ina209_data *data = ina209_update_device(dev); @@ -374,82 +370,65 @@ static ssize_t ina209_show_alarm(struct device *dev, } /* Shunt voltage, history, limits, alarms */ -static SENSOR_DEVICE_ATTR(in0_input, S_IRUGO, ina209_show_value, NULL, - INA209_SHUNT_VOLTAGE); -static SENSOR_DEVICE_ATTR(in0_input_highest, S_IRUGO, ina209_show_value, NULL, - INA209_SHUNT_VOLTAGE_POS_PEAK); -static SENSOR_DEVICE_ATTR(in0_input_lowest, S_IRUGO, ina209_show_value, NULL, - INA209_SHUNT_VOLTAGE_NEG_PEAK); -static SENSOR_DEVICE_ATTR(in0_reset_history, S_IWUSR, NULL, - ina209_reset_history, (1 << 0) | (1 << 1)); -static SENSOR_DEVICE_ATTR(in0_max, S_IRUGO | S_IWUSR, ina209_show_value, - ina209_set_value, INA209_SHUNT_VOLTAGE_POS_WARN); -static SENSOR_DEVICE_ATTR(in0_min, S_IRUGO | S_IWUSR, ina209_show_value, - ina209_set_value, INA209_SHUNT_VOLTAGE_NEG_WARN); -static SENSOR_DEVICE_ATTR(in0_crit_max, S_IRUGO | S_IWUSR, ina209_show_value, - ina209_set_value, INA209_CRITICAL_DAC_POS); -static SENSOR_DEVICE_ATTR(in0_crit_min, S_IRUGO | S_IWUSR, ina209_show_value, - ina209_set_value, INA209_CRITICAL_DAC_NEG); - -static SENSOR_DEVICE_ATTR(in0_min_alarm, S_IRUGO, ina209_show_alarm, NULL, - 1 << 11); -static SENSOR_DEVICE_ATTR(in0_max_alarm, S_IRUGO, ina209_show_alarm, NULL, - 1 << 12); -static SENSOR_DEVICE_ATTR(in0_crit_min_alarm, S_IRUGO, ina209_show_alarm, NULL, - 1 << 6); -static SENSOR_DEVICE_ATTR(in0_crit_max_alarm, S_IRUGO, ina209_show_alarm, NULL, - 1 << 7); +static SENSOR_DEVICE_ATTR_RO(in0_input, ina209_value, INA209_SHUNT_VOLTAGE); +static SENSOR_DEVICE_ATTR_RO(in0_input_highest, ina209_value, + INA209_SHUNT_VOLTAGE_POS_PEAK); +static SENSOR_DEVICE_ATTR_RO(in0_input_lowest, ina209_value, + INA209_SHUNT_VOLTAGE_NEG_PEAK); +static SENSOR_DEVICE_ATTR_WO(in0_reset_history, ina209_history, + (1 << 0) | (1 << 1)); +static SENSOR_DEVICE_ATTR_RW(in0_max, ina209_value, + INA209_SHUNT_VOLTAGE_POS_WARN); +static SENSOR_DEVICE_ATTR_RW(in0_min, ina209_value, + INA209_SHUNT_VOLTAGE_NEG_WARN); +static SENSOR_DEVICE_ATTR_RW(in0_crit_max, ina209_value, + INA209_CRITICAL_DAC_POS); +static SENSOR_DEVICE_ATTR_RW(in0_crit_min, ina209_value, + INA209_CRITICAL_DAC_NEG); + +static SENSOR_DEVICE_ATTR_RO(in0_min_alarm, ina209_alarm, 1 << 11); +static SENSOR_DEVICE_ATTR_RO(in0_max_alarm, ina209_alarm, 1 << 12); +static SENSOR_DEVICE_ATTR_RO(in0_crit_min_alarm, ina209_alarm, 1 << 6); +static SENSOR_DEVICE_ATTR_RO(in0_crit_max_alarm, ina209_alarm, 1 << 7); /* Bus voltage, history, limits, alarms */ -static SENSOR_DEVICE_ATTR(in1_input, S_IRUGO, ina209_show_value, NULL, - INA209_BUS_VOLTAGE); -static SENSOR_DEVICE_ATTR(in1_input_highest, S_IRUGO, ina209_show_value, NULL, - INA209_BUS_VOLTAGE_MAX_PEAK); -static SENSOR_DEVICE_ATTR(in1_input_lowest, S_IRUGO, ina209_show_value, NULL, - INA209_BUS_VOLTAGE_MIN_PEAK); -static SENSOR_DEVICE_ATTR(in1_reset_history, S_IWUSR, NULL, - ina209_reset_history, (1 << 2) | (1 << 3)); -static SENSOR_DEVICE_ATTR(in1_max, S_IRUGO | S_IWUSR, ina209_show_value, - ina209_set_value, INA209_BUS_VOLTAGE_OVER_WARN); -static SENSOR_DEVICE_ATTR(in1_min, S_IRUGO | S_IWUSR, ina209_show_value, - ina209_set_value, INA209_BUS_VOLTAGE_UNDER_WARN); -static SENSOR_DEVICE_ATTR(in1_crit_max, S_IRUGO | S_IWUSR, ina209_show_value, - ina209_set_value, INA209_BUS_VOLTAGE_OVER_LIMIT); -static SENSOR_DEVICE_ATTR(in1_crit_min, S_IRUGO | S_IWUSR, ina209_show_value, - ina209_set_value, INA209_BUS_VOLTAGE_UNDER_LIMIT); - -static SENSOR_DEVICE_ATTR(in1_min_alarm, S_IRUGO, ina209_show_alarm, NULL, - 1 << 14); -static SENSOR_DEVICE_ATTR(in1_max_alarm, S_IRUGO, ina209_show_alarm, NULL, - 1 << 15); -static SENSOR_DEVICE_ATTR(in1_crit_min_alarm, S_IRUGO, ina209_show_alarm, NULL, - 1 << 9); -static SENSOR_DEVICE_ATTR(in1_crit_max_alarm, S_IRUGO, ina209_show_alarm, NULL, - 1 << 10); +static SENSOR_DEVICE_ATTR_RO(in1_input, ina209_value, INA209_BUS_VOLTAGE); +static SENSOR_DEVICE_ATTR_RO(in1_input_highest, ina209_value, + INA209_BUS_VOLTAGE_MAX_PEAK); +static SENSOR_DEVICE_ATTR_RO(in1_input_lowest, ina209_value, + INA209_BUS_VOLTAGE_MIN_PEAK); +static SENSOR_DEVICE_ATTR_WO(in1_reset_history, ina209_history, + (1 << 2) | (1 << 3)); +static SENSOR_DEVICE_ATTR_RW(in1_max, ina209_value, + INA209_BUS_VOLTAGE_OVER_WARN); +static SENSOR_DEVICE_ATTR_RW(in1_min, ina209_value, + INA209_BUS_VOLTAGE_UNDER_WARN); +static SENSOR_DEVICE_ATTR_RW(in1_crit_max, ina209_value, + INA209_BUS_VOLTAGE_OVER_LIMIT); +static SENSOR_DEVICE_ATTR_RW(in1_crit_min, ina209_value, + INA209_BUS_VOLTAGE_UNDER_LIMIT); + +static SENSOR_DEVICE_ATTR_RO(in1_min_alarm, ina209_alarm, 1 << 14); +static SENSOR_DEVICE_ATTR_RO(in1_max_alarm, ina209_alarm, 1 << 15); +static SENSOR_DEVICE_ATTR_RO(in1_crit_min_alarm, ina209_alarm, 1 << 9); +static SENSOR_DEVICE_ATTR_RO(in1_crit_max_alarm, ina209_alarm, 1 << 10); /* Power */ -static SENSOR_DEVICE_ATTR(power1_input, S_IRUGO, ina209_show_value, NULL, - INA209_POWER); -static SENSOR_DEVICE_ATTR(power1_input_highest, S_IRUGO, ina209_show_value, - NULL, INA209_POWER_PEAK); -static SENSOR_DEVICE_ATTR(power1_reset_history, S_IWUSR, NULL, - ina209_reset_history, 1 << 4); -static SENSOR_DEVICE_ATTR(power1_max, S_IRUGO | S_IWUSR, ina209_show_value, - ina209_set_value, INA209_POWER_WARN); -static SENSOR_DEVICE_ATTR(power1_crit, S_IRUGO | S_IWUSR, ina209_show_value, - ina209_set_value, INA209_POWER_OVER_LIMIT); - -static SENSOR_DEVICE_ATTR(power1_max_alarm, S_IRUGO, ina209_show_alarm, NULL, - 1 << 13); -static SENSOR_DEVICE_ATTR(power1_crit_alarm, S_IRUGO, ina209_show_alarm, NULL, - 1 << 8); +static SENSOR_DEVICE_ATTR_RO(power1_input, ina209_value, INA209_POWER); +static SENSOR_DEVICE_ATTR_RO(power1_input_highest, ina209_value, + INA209_POWER_PEAK); +static SENSOR_DEVICE_ATTR_WO(power1_reset_history, ina209_history, 1 << 4); +static SENSOR_DEVICE_ATTR_RW(power1_max, ina209_value, INA209_POWER_WARN); +static SENSOR_DEVICE_ATTR_RW(power1_crit, ina209_value, + INA209_POWER_OVER_LIMIT); + +static SENSOR_DEVICE_ATTR_RO(power1_max_alarm, ina209_alarm, 1 << 13); +static SENSOR_DEVICE_ATTR_RO(power1_crit_alarm, ina209_alarm, 1 << 8); /* Current */ -static SENSOR_DEVICE_ATTR(curr1_input, S_IRUGO, ina209_show_value, NULL, - INA209_CURRENT); +static SENSOR_DEVICE_ATTR_RO(curr1_input, ina209_value, INA209_CURRENT); -static SENSOR_DEVICE_ATTR(update_interval, S_IRUGO | S_IWUSR, - ina209_show_interval, ina209_set_interval, 0); +static SENSOR_DEVICE_ATTR_RW(update_interval, ina209_interval, 0); /* * Finally, construct an array of pointers to members of the above objects, From patchwork Thu Jan 17 21:13:32 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Guenter Roeck X-Patchwork-Id: 10769107 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 7A6346C2 for ; Thu, 17 Jan 2019 21:14:15 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 6AA682A54E for ; Thu, 17 Jan 2019 21:14:15 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 5F5D62A562; Thu, 17 Jan 2019 21:14:15 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id EFAD52A55C for ; Thu, 17 Jan 2019 21:14:14 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728586AbfAQVOO (ORCPT ); Thu, 17 Jan 2019 16:14:14 -0500 Received: from mail-pl1-f195.google.com ([209.85.214.195]:43344 "EHLO mail-pl1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728239AbfAQVOO (ORCPT ); Thu, 17 Jan 2019 16:14:14 -0500 Received: by mail-pl1-f195.google.com with SMTP id gn14so5292066plb.10 for ; Thu, 17 Jan 2019 13:14:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=n/Pp1+zP6m/fErFOGL/q6Rat/sAFCAVvW1CTO5SoMx4=; b=AhpyVeefrtQP3x+kxNvhWWhv9WanRVDfuw64WDCiiv7LpxLyDtz3ytPvAeusxlnrpG WVyRqNy4FCwixe7cFLmeKx6DF/BfOecn462J2ajZalbRD8rsj0ExBjWn+az/SA18NlmT VVLdQp0EQwFpLmZrNfKVlp940HXJvj9m9TDDunCqS1ByDagV61w2GRopXf9OSXWQM2rZ 0NfImUCKL5dmUD3x74vFFtice7HO3n5WWf6+wlzA6u4Ym3fNInUd7eLYxPUMbqa3hx+T PxowrEfRak1CRUoZCD0WQ7+CFtIeFENLH6O/RZLUXDiedvsz2zS5Z8rKWn3vfkUx33Rm dV9Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=n/Pp1+zP6m/fErFOGL/q6Rat/sAFCAVvW1CTO5SoMx4=; b=Hsx/0pmi3pMKPO/v9IJ2BrwLhflYUjBORL2Y2xTIzVlbr9gDigFNO1/RSy3TJjqiGT kjaUQJQ/7gcSE9F8tq6G/QWCdRws7Kkd40qtVG20xywJrfI35hz9a/U4Cn+jUyiqkLTP zqeymv0VnlwAUG8N88ZXaifEenJkzr+UJOMABPtdnNn4n/H1OKkbv1LHSGpwDvE8UoA1 a4S4SnSbhU3doyu5RWLJ39dEhlZZdh6pocTD7jYUz7EMO+kh+MnE8XQpXA88fhPjtdPD Yx2fxq2NMdc2uz+iKXX/EcJT+tEWy319TLPv00/mQXnaR3clt80Jid+/LIfvxVpBBKqj 9sUQ== X-Gm-Message-State: AJcUukfubtkuQFIH9xilTOpyAMX6GFetuE0nNp/3LBXo3eTKYwI0h6YW eMNxjogvXOCN0A1auoQyL3vsOjES X-Google-Smtp-Source: ALg8bN5/KdKZTzU7cZjFlk9V/7XF/9O/ToZmuLwP1uEhtulyRB7dXN2EDGkuUTin3kVaZALsq0KToQ== X-Received: by 2002:a17:902:968d:: with SMTP id n13mr16758391plp.109.1547759653414; Thu, 17 Jan 2019 13:14:13 -0800 (PST) Received: from localhost ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id t13sm2917996pgr.42.2019.01.17.13.14.12 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Jan 2019 13:14:12 -0800 (PST) From: Guenter Roeck To: Hardware Monitoring Cc: Jean Delvare , Guenter Roeck Subject: [PATCH 12/29] hwmon: (ina3221) Use permission specific SENSOR[_DEVICE]_ATTR variants Date: Thu, 17 Jan 2019 13:13:32 -0800 Message-Id: <1547759629-23007-13-git-send-email-linux@roeck-us.net> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1547759629-23007-1-git-send-email-linux@roeck-us.net> References: <1547759629-23007-1-git-send-email-linux@roeck-us.net> Sender: linux-hwmon-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-hwmon@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Use SENSOR[_DEVICE]_ATTR[_2]_{RO,RW,WO} to simplify the source code, to improve readbility, and to reduce the chance of inconsistencies. Also replace any remaining S_ in the driver with octal values. The conversion was done automatically with coccinelle. The semantic patches and the scripts used to generate this commit log are available at https://github.com/groeck/coccinelle-patches/hwmon/. This patch does not introduce functional changes. It was verified by compiling the old and new files and comparing text and data sizes. Signed-off-by: Guenter Roeck --- drivers/hwmon/ina3221.c | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/drivers/hwmon/ina3221.c b/drivers/hwmon/ina3221.c index e90ccac8bebb..f157214b3b83 100644 --- a/drivers/hwmon/ina3221.c +++ b/drivers/hwmon/ina3221.c @@ -499,7 +499,7 @@ static const struct hwmon_chip_info ina3221_chip_info = { }; /* Extra attribute groups */ -static ssize_t ina3221_show_shunt(struct device *dev, +static ssize_t ina3221_shunt_show(struct device *dev, struct device_attribute *attr, char *buf) { struct sensor_device_attribute *sd_attr = to_sensor_dev_attr(attr); @@ -510,9 +510,9 @@ static ssize_t ina3221_show_shunt(struct device *dev, return snprintf(buf, PAGE_SIZE, "%d\n", input->shunt_resistor); } -static ssize_t ina3221_set_shunt(struct device *dev, - struct device_attribute *attr, - const char *buf, size_t count) +static ssize_t ina3221_shunt_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t count) { struct sensor_device_attribute *sd_attr = to_sensor_dev_attr(attr); struct ina3221_data *ina = dev_get_drvdata(dev); @@ -533,12 +533,9 @@ static ssize_t ina3221_set_shunt(struct device *dev, } /* shunt resistance */ -static SENSOR_DEVICE_ATTR(shunt1_resistor, S_IRUGO | S_IWUSR, - ina3221_show_shunt, ina3221_set_shunt, INA3221_CHANNEL1); -static SENSOR_DEVICE_ATTR(shunt2_resistor, S_IRUGO | S_IWUSR, - ina3221_show_shunt, ina3221_set_shunt, INA3221_CHANNEL2); -static SENSOR_DEVICE_ATTR(shunt3_resistor, S_IRUGO | S_IWUSR, - ina3221_show_shunt, ina3221_set_shunt, INA3221_CHANNEL3); +static SENSOR_DEVICE_ATTR_RW(shunt1_resistor, ina3221_shunt, INA3221_CHANNEL1); +static SENSOR_DEVICE_ATTR_RW(shunt2_resistor, ina3221_shunt, INA3221_CHANNEL2); +static SENSOR_DEVICE_ATTR_RW(shunt3_resistor, ina3221_shunt, INA3221_CHANNEL3); static struct attribute *ina3221_attrs[] = { &sensor_dev_attr_shunt1_resistor.dev_attr.attr, From patchwork Thu Jan 17 21:13:33 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Guenter Roeck X-Patchwork-Id: 10769109 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 36F596C2 for ; Thu, 17 Jan 2019 21:14:17 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 280B42A54E for ; Thu, 17 Jan 2019 21:14:17 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 1C6172A562; Thu, 17 Jan 2019 21:14:17 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id A34DE2A54E for ; Thu, 17 Jan 2019 21:14:16 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728616AbfAQVOQ (ORCPT ); Thu, 17 Jan 2019 16:14:16 -0500 Received: from mail-pf1-f195.google.com ([209.85.210.195]:42275 "EHLO mail-pf1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728239AbfAQVOQ (ORCPT ); Thu, 17 Jan 2019 16:14:16 -0500 Received: by mail-pf1-f195.google.com with SMTP id 64so5418296pfr.9 for ; Thu, 17 Jan 2019 13:14:15 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=PA8GWM/K4dIKjKGhukpRdaZ/hJk5CH5KPvEqNLsNmm4=; b=ug7HM7um0Q2j6mpT0/Ee46jCcB02kAclWyWUp+BDzksCoG9/tWHXMIrAs2bdfXQlu+ y3q0PdHcrWFkWF8AUklBugLtSciKuc4zEn3CAibHCsvFQ12egLzM3SSfIHIQXRnrS3WG PNC6qwcaBcTpyp8AYZYa9FhjH7bnJTQGltTM4tEJqjLj/tqpsSsSUxdzIvRp3r3xOwhi 6KTxSf1K58GrK6DVfGSnaDeirTaO+lc6uCdxt8kZ6pDK5rY9Bxr+ae/eqb1M88BmbZtF pN38AEYyw8O0DOBuEQ3wO17pTmfwdFHnMbTphZ1go+jIQE8ydZfOtbB5TseHlsVqtq07 rX8g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=PA8GWM/K4dIKjKGhukpRdaZ/hJk5CH5KPvEqNLsNmm4=; b=b+I1oiTn0tyzgoQ1JuRDsmlUfi29eMfSIlsFgaM1n5yuGnZ+QS+YQR/uqzyxzPj0zy x1RGeZCuA8Aj51E5DEhEPWdkGliRDCL5wPRBJH6OAqwjnYJlLX1j7sejyp+5ALnSXGsa 5AxO1MDdAYeU6tuRLbuWcL5VI8+sDeKITf2BIK9Vv2peU3ynYBORTsYnkjS7JwqPlD9V zfXLeeU7ws4E36cyf/Q1vVNhotfGgxekJi0xZ6EHJJqgW6W0NlbtmI0uqWmcx36oCJd0 7I85AEu2XpbXKKbAZEcegEeDyGHhyNvjN4sm+bQEp2PTZFi8rMhhQe7Xl6RQmRUxcpLO z6aQ== X-Gm-Message-State: AJcUukfdOHLAS28rSamo1TUkN2zvOmDInl0gHEKeeFKcmblOFC6klWX9 U88rmoqaYEKcIRe9R54yo6A7gTA+ X-Google-Smtp-Source: ALg8bN4+26eXdu+EKUage1b8tb4bE969RvA5cLVUmNZcLOENaw5vDcPfWQUkERxfRX+yzcXNz6+uzg== X-Received: by 2002:a63:60cf:: with SMTP id u198mr14933363pgb.323.1547759655062; Thu, 17 Jan 2019 13:14:15 -0800 (PST) Received: from localhost ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id i5sm5191473pfg.34.2019.01.17.13.14.14 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Jan 2019 13:14:14 -0800 (PST) From: Guenter Roeck To: Hardware Monitoring Cc: Jean Delvare , Guenter Roeck Subject: [PATCH 13/29] hwmon: (jc42) Replace S_ with octal values Date: Thu, 17 Jan 2019 13:13:33 -0800 Message-Id: <1547759629-23007-14-git-send-email-linux@roeck-us.net> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1547759629-23007-1-git-send-email-linux@roeck-us.net> References: <1547759629-23007-1-git-send-email-linux@roeck-us.net> Sender: linux-hwmon-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-hwmon@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Replace S_ with octal values. The conversion was done automatically with coccinelle. The semantic patches and the scripts used to generate this commit log are available at https://github.com/groeck/coccinelle-patches/hwmon/. This patch does not introduce functional changes. It was verified by compiling the old and new files and comparing text and data sizes. Signed-off-by: Guenter Roeck --- drivers/hwmon/jc42.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/hwmon/jc42.c b/drivers/hwmon/jc42.c index e5234f953a6d..4fa482ae0eb5 100644 --- a/drivers/hwmon/jc42.c +++ b/drivers/hwmon/jc42.c @@ -390,21 +390,21 @@ static umode_t jc42_is_visible(const void *_data, enum hwmon_sensor_types type, { const struct jc42_data *data = _data; unsigned int config = data->config; - umode_t mode = S_IRUGO; + umode_t mode = 0444; switch (attr) { case hwmon_temp_min: case hwmon_temp_max: if (!(config & JC42_CFG_EVENT_LOCK)) - mode |= S_IWUSR; + mode |= 0200; break; case hwmon_temp_crit: if (!(config & JC42_CFG_TCRIT_LOCK)) - mode |= S_IWUSR; + mode |= 0200; break; case hwmon_temp_crit_hyst: if (!(config & (JC42_CFG_EVENT_LOCK | JC42_CFG_TCRIT_LOCK))) - mode |= S_IWUSR; + mode |= 0200; break; case hwmon_temp_input: case hwmon_temp_max_hyst: From patchwork Thu Jan 17 21:13:34 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Guenter Roeck X-Patchwork-Id: 10769111 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id A294C13BF for ; Thu, 17 Jan 2019 21:14:18 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 918862A65D for ; Thu, 17 Jan 2019 21:14:18 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 855DF2A7AF; Thu, 17 Jan 2019 21:14:18 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 29EBE2A65D for ; Thu, 17 Jan 2019 21:14:18 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728635AbfAQVOR (ORCPT ); Thu, 17 Jan 2019 16:14:17 -0500 Received: from mail-pf1-f194.google.com ([209.85.210.194]:39990 "EHLO mail-pf1-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728239AbfAQVOR (ORCPT ); Thu, 17 Jan 2019 16:14:17 -0500 Received: by mail-pf1-f194.google.com with SMTP id i12so5423232pfo.7 for ; Thu, 17 Jan 2019 13:14:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=AC83hBLGGI6zUHe+/xgoKgROla3H+am1sQBuu6A4cyc=; b=YfC/fglqPfBCgwj0PU1FijEE26jonhe4INREBdiWtT7QeEdab4RA12zj0L34aqMomC wmkVoGhPAMzlogmk4tRNP8nV3zrXJ4f5DGPgqa0gU7Oqq/X919Ewj8r0t480JuAKUGJu dKOAnOQ6CRMTDXXOWLuK+x5cphbA8/j5LDVdGx9TKh+idGXlYQjlEMtoCsKVsj+B2VUY OBOuxPgUjm5qZW58EH421Blf/PNLtX+VIozxNVjKnHiwcxKGV6+baL8REgoIyCmOqM2u yV6YvmT1LLHthQ8JB1D+ONgoJ+9JktRsz0EwwUB7bepOgFkbrbEqrl+lofxXPVxTmSZA +lMw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=AC83hBLGGI6zUHe+/xgoKgROla3H+am1sQBuu6A4cyc=; b=g6+44/OLiWGTeQvV1Fbx8jwMT8zhA3iQmMZ8kbzBSyz+WlEuLVMGvblirHq492U0hp PO1CE6KFiMwf3yyZeEDEzPR87W/Ff6Me4lcFpwi/UIzvt74U6X9sMSRMBeJ/u2GqFYuc 4aq/GRlW6LJ8AxX6KRXozU/NsLxdfpKQXCI3inZ/fIVhtZ3ePP2dv/H7xniO/jYlyjCc mDysIw4PL/j7J9GzMj0jjEb0/NkQ1ES5IDhRy0sfO8DSMXiU6eLDbYrTsgXEkTnV2x09 LhTy+9A1xCreOGdPD9dly0wXI7rp4tEaEbQEElkAPRIedCmH/IaDGBW2qJaQ/RObEEe1 bsaQ== X-Gm-Message-State: AJcUukdu/11VfWs2cuzOv5D6jnrbf7owcaE5arQkxylc5hPa2MowKSmt glqsdDmvNlxmR8XMODrTgAFgMC8q X-Google-Smtp-Source: ALg8bN4ur71/ow06nsuITp6cFILJXiJY6dkCbqloZhOnuOa/qNs82v7ebawSOlkJYActOv6X9XJdpw== X-Received: by 2002:a62:a99:: with SMTP id 25mr16297314pfk.121.1547759656821; Thu, 17 Jan 2019 13:14:16 -0800 (PST) Received: from localhost ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id o84sm6326267pfi.172.2019.01.17.13.14.15 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Jan 2019 13:14:16 -0800 (PST) From: Guenter Roeck To: Hardware Monitoring Cc: Jean Delvare , Guenter Roeck , Rudolf Marek Subject: [PATCH 14/29] hwmon: (k8temp) Use permission specific SENSOR[_DEVICE]_ATTR variants Date: Thu, 17 Jan 2019 13:13:34 -0800 Message-Id: <1547759629-23007-15-git-send-email-linux@roeck-us.net> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1547759629-23007-1-git-send-email-linux@roeck-us.net> References: <1547759629-23007-1-git-send-email-linux@roeck-us.net> Sender: linux-hwmon-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-hwmon@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Use SENSOR[_DEVICE]_ATTR[_2]_{RO,RW,WO} to simplify the source code, to improve readbility, and to reduce the chance of inconsistencies. Also replace any remaining S_ in the driver with octal values. The conversion was done automatically with coccinelle. The semantic patches and the scripts used to generate this commit log are available at https://github.com/groeck/coccinelle-patches/hwmon/. This patch does not introduce functional changes. It was verified by compiling the old and new files and comparing text and data sizes. Cc: Rudolf Marek Signed-off-by: Guenter Roeck --- drivers/hwmon/k8temp.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/drivers/hwmon/k8temp.c b/drivers/hwmon/k8temp.c index e59f9113fb93..93a5d51f3c6d 100644 --- a/drivers/hwmon/k8temp.c +++ b/drivers/hwmon/k8temp.c @@ -109,8 +109,8 @@ static ssize_t name_show(struct device *dev, struct device_attribute } -static ssize_t show_temp(struct device *dev, - struct device_attribute *devattr, char *buf) +static ssize_t temp_show(struct device *dev, struct device_attribute *devattr, + char *buf) { struct sensor_device_attribute_2 *attr = to_sensor_dev_attr_2(devattr); @@ -129,10 +129,10 @@ static ssize_t show_temp(struct device *dev, /* core, place */ -static SENSOR_DEVICE_ATTR_2(temp1_input, S_IRUGO, show_temp, NULL, 0, 0); -static SENSOR_DEVICE_ATTR_2(temp2_input, S_IRUGO, show_temp, NULL, 0, 1); -static SENSOR_DEVICE_ATTR_2(temp3_input, S_IRUGO, show_temp, NULL, 1, 0); -static SENSOR_DEVICE_ATTR_2(temp4_input, S_IRUGO, show_temp, NULL, 1, 1); +static SENSOR_DEVICE_ATTR_2_RO(temp1_input, temp, 0, 0); +static SENSOR_DEVICE_ATTR_2_RO(temp2_input, temp, 0, 1); +static SENSOR_DEVICE_ATTR_2_RO(temp3_input, temp, 1, 0); +static SENSOR_DEVICE_ATTR_2_RO(temp4_input, temp, 1, 1); static DEVICE_ATTR_RO(name); static const struct pci_device_id k8temp_ids[] = { From patchwork Thu Jan 17 21:13:35 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Guenter Roeck X-Patchwork-Id: 10769113 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id AF07413BF for ; Thu, 17 Jan 2019 21:14:21 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 9F7342A65D for ; Thu, 17 Jan 2019 21:14:21 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 930502A7AF; Thu, 17 Jan 2019 21:14:21 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id EFB9F2A65D for ; Thu, 17 Jan 2019 21:14:20 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728648AbfAQVOU (ORCPT ); Thu, 17 Jan 2019 16:14:20 -0500 Received: from mail-pg1-f196.google.com ([209.85.215.196]:34488 "EHLO mail-pg1-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728239AbfAQVOU (ORCPT ); Thu, 17 Jan 2019 16:14:20 -0500 Received: by mail-pg1-f196.google.com with SMTP id j10so5000898pga.1 for ; Thu, 17 Jan 2019 13:14:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=Ak5yQqZYBwnhl/i08+TDEwF23NtB8vOPcOlwQevEnqQ=; b=QS8NvAghpMPlZym8JonA9A6J5MM/Usn0W2RyrsTwp6Zpjc4Q3B0FnAgj4OosOnPVvW gENKVopsfbrjcVz8Xxg7Lr6ojv52niOPgQnze0Gx2LqHYQ6b6fabMBgUVEq43CXpVxCZ PFTkMaTCDv8ObtThR5bAKVbTH+DSZnfFBuM3CyCFELRuCFPF9XhgahDdVKtBpbSBqxIC GACwpu5IECxxN9kDwQyghFA3xsnAFp529UE1cPSvftYmICgeyOtDUQQ9MB6d22I7WjQ+ OvEf2bmZUzVkeSkgPp8IOEYPNdwwYulQOZF7RniU3l92l5k90OYaJt78zsmBFwCp0JlT 3xLw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=Ak5yQqZYBwnhl/i08+TDEwF23NtB8vOPcOlwQevEnqQ=; b=WnU6Ol8SJGwicTVebHTSwbjM94RPwKH0hzZkh/GDPVys1giLDk5I2s8MRyWIpVMSlF cpPZ3/YL+LLizeZPtImcVD7T7JiWyyb2qu4n7wqXRT9rUcfS9Dj0VAiR9//zVgqLNr3v qcv0GXJGs6b2UGkrcUGgD1oHc0OU5Dd8rIZpKOeeczkRQtkU4wuwBFaxj+KE55ol34Gw wGoycOj/qqawEMMRRqc9cB+73y6669oezP75s2b0+M2oxKhZOV2w/XFC5NwuglvTggk3 zyfjkOrz0pn20gzvjY3WI0fNiJHEFHrJ6hN/arpqLNoeoP/PIUA99FkfHZdA65u05Uss aSZA== X-Gm-Message-State: AJcUukcdECQipFSbDBftrfKRhV/iqCuWJwnLqNTVmFxPWZJ6xRHLaMXf uzJsXzyyj3olIItzT7XE/LzrZOHY X-Google-Smtp-Source: ALg8bN7KqoDPAW5VwWgQxebVk23OVCvt5NCifaKf07cZTuOjohfLZTGY16F+81SXGQ+2Wf10Fe70qw== X-Received: by 2002:a62:c583:: with SMTP id j125mr16662591pfg.37.1547759658407; Thu, 17 Jan 2019 13:14:18 -0800 (PST) Received: from localhost ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id e9sm3487504pff.5.2019.01.17.13.14.17 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Jan 2019 13:14:17 -0800 (PST) From: Guenter Roeck To: Hardware Monitoring Cc: Jean Delvare , Guenter Roeck Subject: [PATCH 15/29] hwmon: (lineage-pem) Use permission specific SENSOR[_DEVICE]_ATTR variants Date: Thu, 17 Jan 2019 13:13:35 -0800 Message-Id: <1547759629-23007-16-git-send-email-linux@roeck-us.net> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1547759629-23007-1-git-send-email-linux@roeck-us.net> References: <1547759629-23007-1-git-send-email-linux@roeck-us.net> Sender: linux-hwmon-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-hwmon@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Use SENSOR[_DEVICE]_ATTR[_2]_{RO,RW,WO} to simplify the source code, to improve readbility, and to reduce the chance of inconsistencies. Also replace any remaining S_ in the driver with octal values. The conversion was done automatically with coccinelle. The semantic patches and the scripts used to generate this commit log are available at https://github.com/groeck/coccinelle-patches/hwmon/. This patch does not introduce functional changes. It was verified by compiling the old and new files and comparing text and data sizes. Signed-off-by: Guenter Roeck --- drivers/hwmon/lineage-pem.c | 77 +++++++++++++++++++-------------------------- 1 file changed, 33 insertions(+), 44 deletions(-) diff --git a/drivers/hwmon/lineage-pem.c b/drivers/hwmon/lineage-pem.c index 84d791bdb62d..d470295760e2 100644 --- a/drivers/hwmon/lineage-pem.c +++ b/drivers/hwmon/lineage-pem.c @@ -282,8 +282,8 @@ static long pem_get_fan(u8 *data, int len, int index) * Show boolean, either a fault or an alarm. * .nr points to the register, .index is the bit mask to check */ -static ssize_t pem_show_bool(struct device *dev, - struct device_attribute *da, char *buf) +static ssize_t pem_bool_show(struct device *dev, struct device_attribute *da, + char *buf) { struct sensor_device_attribute_2 *attr = to_sensor_dev_attr_2(da); struct pem_data *data = pem_update_device(dev); @@ -296,7 +296,7 @@ static ssize_t pem_show_bool(struct device *dev, return snprintf(buf, PAGE_SIZE, "%d\n", !!status); } -static ssize_t pem_show_data(struct device *dev, struct device_attribute *da, +static ssize_t pem_data_show(struct device *dev, struct device_attribute *da, char *buf) { struct sensor_device_attribute *attr = to_sensor_dev_attr(da); @@ -312,7 +312,7 @@ static ssize_t pem_show_data(struct device *dev, struct device_attribute *da, return snprintf(buf, PAGE_SIZE, "%ld\n", value); } -static ssize_t pem_show_input(struct device *dev, struct device_attribute *da, +static ssize_t pem_input_show(struct device *dev, struct device_attribute *da, char *buf) { struct sensor_device_attribute *attr = to_sensor_dev_attr(da); @@ -328,7 +328,7 @@ static ssize_t pem_show_input(struct device *dev, struct device_attribute *da, return snprintf(buf, PAGE_SIZE, "%ld\n", value); } -static ssize_t pem_show_fan(struct device *dev, struct device_attribute *da, +static ssize_t pem_fan_show(struct device *dev, struct device_attribute *da, char *buf) { struct sensor_device_attribute *attr = to_sensor_dev_attr(da); @@ -345,53 +345,42 @@ static ssize_t pem_show_fan(struct device *dev, struct device_attribute *da, } /* Voltages */ -static SENSOR_DEVICE_ATTR(in1_input, S_IRUGO, pem_show_data, NULL, - PEM_DATA_VOUT_LSB); -static SENSOR_DEVICE_ATTR_2(in1_alarm, S_IRUGO, pem_show_bool, NULL, - PEM_DATA_ALARM_1, ALRM1_VOUT_OUT_LIMIT); -static SENSOR_DEVICE_ATTR_2(in1_crit_alarm, S_IRUGO, pem_show_bool, NULL, - PEM_DATA_ALARM_1, ALRM1_OV_VOLT_SHUTDOWN); -static SENSOR_DEVICE_ATTR(in2_input, S_IRUGO, pem_show_input, NULL, - PEM_INPUT_VOLTAGE); -static SENSOR_DEVICE_ATTR_2(in2_alarm, S_IRUGO, pem_show_bool, NULL, - PEM_DATA_ALARM_1, - ALRM1_VIN_OUT_LIMIT | ALRM1_PRIMARY_FAULT); +static SENSOR_DEVICE_ATTR_RO(in1_input, pem_data, PEM_DATA_VOUT_LSB); +static SENSOR_DEVICE_ATTR_2_RO(in1_alarm, pem_bool, PEM_DATA_ALARM_1, + ALRM1_VOUT_OUT_LIMIT); +static SENSOR_DEVICE_ATTR_2_RO(in1_crit_alarm, pem_bool, PEM_DATA_ALARM_1, + ALRM1_OV_VOLT_SHUTDOWN); +static SENSOR_DEVICE_ATTR_RO(in2_input, pem_input, PEM_INPUT_VOLTAGE); +static SENSOR_DEVICE_ATTR_2_RO(in2_alarm, pem_bool, PEM_DATA_ALARM_1, + ALRM1_VIN_OUT_LIMIT | ALRM1_PRIMARY_FAULT); /* Currents */ -static SENSOR_DEVICE_ATTR(curr1_input, S_IRUGO, pem_show_data, NULL, - PEM_DATA_CURRENT); -static SENSOR_DEVICE_ATTR_2(curr1_alarm, S_IRUGO, pem_show_bool, NULL, - PEM_DATA_ALARM_1, ALRM1_VIN_OVERCURRENT); +static SENSOR_DEVICE_ATTR_RO(curr1_input, pem_data, PEM_DATA_CURRENT); +static SENSOR_DEVICE_ATTR_2_RO(curr1_alarm, pem_bool, PEM_DATA_ALARM_1, + ALRM1_VIN_OVERCURRENT); /* Power */ -static SENSOR_DEVICE_ATTR(power1_input, S_IRUGO, pem_show_input, NULL, - PEM_INPUT_POWER_LSB); -static SENSOR_DEVICE_ATTR_2(power1_alarm, S_IRUGO, pem_show_bool, NULL, - PEM_DATA_ALARM_1, ALRM1_POWER_LIMIT); +static SENSOR_DEVICE_ATTR_RO(power1_input, pem_input, PEM_INPUT_POWER_LSB); +static SENSOR_DEVICE_ATTR_2_RO(power1_alarm, pem_bool, PEM_DATA_ALARM_1, + ALRM1_POWER_LIMIT); /* Fans */ -static SENSOR_DEVICE_ATTR(fan1_input, S_IRUGO, pem_show_fan, NULL, - PEM_FAN_FAN1); -static SENSOR_DEVICE_ATTR(fan2_input, S_IRUGO, pem_show_fan, NULL, - PEM_FAN_FAN2); -static SENSOR_DEVICE_ATTR(fan3_input, S_IRUGO, pem_show_fan, NULL, - PEM_FAN_FAN3); -static SENSOR_DEVICE_ATTR_2(fan1_alarm, S_IRUGO, pem_show_bool, NULL, - PEM_DATA_ALARM_2, ALRM2_FAN_FAULT); +static SENSOR_DEVICE_ATTR_RO(fan1_input, pem_fan, PEM_FAN_FAN1); +static SENSOR_DEVICE_ATTR_RO(fan2_input, pem_fan, PEM_FAN_FAN2); +static SENSOR_DEVICE_ATTR_RO(fan3_input, pem_fan, PEM_FAN_FAN3); +static SENSOR_DEVICE_ATTR_2_RO(fan1_alarm, pem_bool, PEM_DATA_ALARM_2, + ALRM2_FAN_FAULT); /* Temperatures */ -static SENSOR_DEVICE_ATTR(temp1_input, S_IRUGO, pem_show_data, NULL, - PEM_DATA_TEMP); -static SENSOR_DEVICE_ATTR(temp1_max, S_IRUGO, pem_show_data, NULL, - PEM_DATA_TEMP_MAX); -static SENSOR_DEVICE_ATTR(temp1_crit, S_IRUGO, pem_show_data, NULL, - PEM_DATA_TEMP_CRIT); -static SENSOR_DEVICE_ATTR_2(temp1_alarm, S_IRUGO, pem_show_bool, NULL, - PEM_DATA_ALARM_1, ALRM1_TEMP_WARNING); -static SENSOR_DEVICE_ATTR_2(temp1_crit_alarm, S_IRUGO, pem_show_bool, NULL, - PEM_DATA_ALARM_1, ALRM1_TEMP_SHUTDOWN); -static SENSOR_DEVICE_ATTR_2(temp1_fault, S_IRUGO, pem_show_bool, NULL, - PEM_DATA_ALARM_2, ALRM2_TEMP_FAULT); +static SENSOR_DEVICE_ATTR_RO(temp1_input, pem_data, PEM_DATA_TEMP); +static SENSOR_DEVICE_ATTR_RO(temp1_max, pem_data, PEM_DATA_TEMP_MAX); +static SENSOR_DEVICE_ATTR_RO(temp1_crit, pem_data, PEM_DATA_TEMP_CRIT); +static SENSOR_DEVICE_ATTR_2_RO(temp1_alarm, pem_bool, PEM_DATA_ALARM_1, + ALRM1_TEMP_WARNING); +static SENSOR_DEVICE_ATTR_2_RO(temp1_crit_alarm, pem_bool, PEM_DATA_ALARM_1, + ALRM1_TEMP_SHUTDOWN); +static SENSOR_DEVICE_ATTR_2_RO(temp1_fault, pem_bool, PEM_DATA_ALARM_2, + ALRM2_TEMP_FAULT); static struct attribute *pem_attributes[] = { &sensor_dev_attr_in1_input.dev_attr.attr, From patchwork Thu Jan 17 21:13:36 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Guenter Roeck X-Patchwork-Id: 10769115 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 3747B6C2 for ; Thu, 17 Jan 2019 21:14:23 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 2751F2A65D for ; Thu, 17 Jan 2019 21:14:23 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 1B6982A7AF; Thu, 17 Jan 2019 21:14:23 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id A0EB22A65D for ; Thu, 17 Jan 2019 21:14:22 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728658AbfAQVOW (ORCPT ); Thu, 17 Jan 2019 16:14:22 -0500 Received: from mail-pg1-f194.google.com ([209.85.215.194]:43578 "EHLO mail-pg1-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728239AbfAQVOW (ORCPT ); Thu, 17 Jan 2019 16:14:22 -0500 Received: by mail-pg1-f194.google.com with SMTP id v28so4978052pgk.10 for ; Thu, 17 Jan 2019 13:14:21 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=XllbveoZAxvtFQn5+7wDpRM6B3KCH38Du7cEfoQmOtk=; b=V+UgkVGkuzAddilEaqNxAVWR6osck0NC102Ofp8SLb3mJJPcWK/PhILXx6YFAzXb0V NSC5ZhmzmjV66FqCYAy23RJ+i1RrFstFYUxaSZHOMr92dEEV1uPFMxoyeLcQZbehkBD4 7TSCrA3Q4WQ4VUvTFxVCSCkE4oNGqVp0G/6JeVuO5zyVj4d66jO5v30nnbfAiGujdhgY 3nlCffaQ4px3ZERgmNMdGtPpJLGzwX4AJCeIG44pdrs8tBICcXto2frJ9l2OvN4t0yrV D9/0DxLWYP3h9uio4WErqrokKAMFklGkYoW8i1LQF80XnNNds589dSD1vwImXtHkVH8m xSvA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=XllbveoZAxvtFQn5+7wDpRM6B3KCH38Du7cEfoQmOtk=; b=lFprzPTJRayfIaDzGLgYkQYgmfbsCzeoKI6tVBo2d63kpRAnL1SLIxo4nO0sLaBK2X 9Gwfzgt9t17OYQN2I33NKhWzw/duV3siQvbPZjue8WpOuHDLQ0MglgJ9tvGBvxH9Ho9G qthr5Dwp+EmWj5IKurVEwCLpmvhyVgLs3EPa7sVGYYNGwd0CWMYIz/dqWMeA8Bm1rPc3 tRYs+UyIeSzQvkr6UmrWV/fTHgvaaAM502Ql3OF+kMAEqdvgO31rIM3HV16lDzqcG0wf Ytr3K+1pXubobic2V23H0oxh7oeLlMfWnSmlU9j/wb6jJSYMjFWx8x5dy55ll7Z3An1i tAxg== X-Gm-Message-State: AJcUukfosm3GUSSGNN8U232cZJRVZXiKEWvTIEZbEunmF+IXtXAbdoMC LU/PrTOnx8AYMAkdptwMtQyOq5aH X-Google-Smtp-Source: ALg8bN6zQUVJBr33JHsifgfS+yQyWA0tz+eOf2LbhcAYxvIvijS9P9ElOdN2rJuRKKKBE+KXo12/Qw== X-Received: by 2002:a62:f247:: with SMTP id y7mr16545048pfl.25.1547759660627; Thu, 17 Jan 2019 13:14:20 -0800 (PST) Received: from localhost ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id e131sm4757356pfg.75.2019.01.17.13.14.19 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Jan 2019 13:14:19 -0800 (PST) From: Guenter Roeck To: Hardware Monitoring Cc: Jean Delvare , Guenter Roeck , Guillaume Ligneul Subject: [PATCH 16/29] hwmon: (lm73) Use permission specific SENSOR[_DEVICE]_ATTR variants Date: Thu, 17 Jan 2019 13:13:36 -0800 Message-Id: <1547759629-23007-17-git-send-email-linux@roeck-us.net> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1547759629-23007-1-git-send-email-linux@roeck-us.net> References: <1547759629-23007-1-git-send-email-linux@roeck-us.net> Sender: linux-hwmon-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-hwmon@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Use SENSOR[_DEVICE]_ATTR[_2]_{RO,RW,WO} to simplify the source code, to improve readbility, and to reduce the chance of inconsistencies. Also replace any remaining S_ in the driver with octal values. The conversion was done automatically with coccinelle. The semantic patches and the scripts used to generate this commit log are available at https://github.com/groeck/coccinelle-patches/hwmon/. This patch does not introduce functional changes. It was verified by compiling the old and new files and comparing text and data sizes. Cc: Guillaume Ligneul Signed-off-by: Guenter Roeck --- drivers/hwmon/lm73.c | 34 +++++++++++++++------------------- 1 file changed, 15 insertions(+), 19 deletions(-) diff --git a/drivers/hwmon/lm73.c b/drivers/hwmon/lm73.c index 9653bb870a47..d1d728aa31d2 100644 --- a/drivers/hwmon/lm73.c +++ b/drivers/hwmon/lm73.c @@ -62,8 +62,8 @@ struct lm73_data { /*-----------------------------------------------------------------------*/ -static ssize_t set_temp(struct device *dev, struct device_attribute *da, - const char *buf, size_t count) +static ssize_t temp_store(struct device *dev, struct device_attribute *da, + const char *buf, size_t count) { struct sensor_device_attribute *attr = to_sensor_dev_attr(da); struct lm73_data *data = dev_get_drvdata(dev); @@ -81,7 +81,7 @@ static ssize_t set_temp(struct device *dev, struct device_attribute *da, return (err < 0) ? err : count; } -static ssize_t show_temp(struct device *dev, struct device_attribute *da, +static ssize_t temp_show(struct device *dev, struct device_attribute *da, char *buf) { struct sensor_device_attribute *attr = to_sensor_dev_attr(da); @@ -98,8 +98,8 @@ static ssize_t show_temp(struct device *dev, struct device_attribute *da, return scnprintf(buf, PAGE_SIZE, "%d\n", temp); } -static ssize_t set_convrate(struct device *dev, struct device_attribute *da, - const char *buf, size_t count) +static ssize_t convrate_store(struct device *dev, struct device_attribute *da, + const char *buf, size_t count) { struct lm73_data *data = dev_get_drvdata(dev); unsigned long convrate; @@ -133,7 +133,7 @@ static ssize_t set_convrate(struct device *dev, struct device_attribute *da, return count; } -static ssize_t show_convrate(struct device *dev, struct device_attribute *da, +static ssize_t convrate_show(struct device *dev, struct device_attribute *da, char *buf) { struct lm73_data *data = dev_get_drvdata(dev); @@ -143,7 +143,7 @@ static ssize_t show_convrate(struct device *dev, struct device_attribute *da, return scnprintf(buf, PAGE_SIZE, "%hu\n", lm73_convrates[res]); } -static ssize_t show_maxmin_alarm(struct device *dev, +static ssize_t maxmin_alarm_show(struct device *dev, struct device_attribute *da, char *buf) { struct sensor_device_attribute *attr = to_sensor_dev_attr(da); @@ -168,18 +168,14 @@ static ssize_t show_maxmin_alarm(struct device *dev, /* sysfs attributes for hwmon */ -static SENSOR_DEVICE_ATTR(temp1_max, S_IWUSR | S_IRUGO, - show_temp, set_temp, LM73_REG_MAX); -static SENSOR_DEVICE_ATTR(temp1_min, S_IWUSR | S_IRUGO, - show_temp, set_temp, LM73_REG_MIN); -static SENSOR_DEVICE_ATTR(temp1_input, S_IRUGO, - show_temp, NULL, LM73_REG_INPUT); -static SENSOR_DEVICE_ATTR(update_interval, S_IWUSR | S_IRUGO, - show_convrate, set_convrate, 0); -static SENSOR_DEVICE_ATTR(temp1_max_alarm, S_IRUGO, - show_maxmin_alarm, NULL, LM73_CTRL_HI_SHIFT); -static SENSOR_DEVICE_ATTR(temp1_min_alarm, S_IRUGO, - show_maxmin_alarm, NULL, LM73_CTRL_LO_SHIFT); +static SENSOR_DEVICE_ATTR_RW(temp1_max, temp, LM73_REG_MAX); +static SENSOR_DEVICE_ATTR_RW(temp1_min, temp, LM73_REG_MIN); +static SENSOR_DEVICE_ATTR_RO(temp1_input, temp, LM73_REG_INPUT); +static SENSOR_DEVICE_ATTR_RW(update_interval, convrate, 0); +static SENSOR_DEVICE_ATTR_RO(temp1_max_alarm, maxmin_alarm, + LM73_CTRL_HI_SHIFT); +static SENSOR_DEVICE_ATTR_RO(temp1_min_alarm, maxmin_alarm, + LM73_CTRL_LO_SHIFT); static struct attribute *lm73_attrs[] = { &sensor_dev_attr_temp1_input.dev_attr.attr, From patchwork Thu Jan 17 21:13:37 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Guenter Roeck X-Patchwork-Id: 10769117 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id D5F646C2 for ; Thu, 17 Jan 2019 21:14:24 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id C6FC02A65D for ; Thu, 17 Jan 2019 21:14:24 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id BB2612A7B0; Thu, 17 Jan 2019 21:14:24 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 5F9B82A65D for ; Thu, 17 Jan 2019 21:14:24 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728239AbfAQVOY (ORCPT ); Thu, 17 Jan 2019 16:14:24 -0500 Received: from mail-pg1-f196.google.com ([209.85.215.196]:41179 "EHLO mail-pg1-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728664AbfAQVOY (ORCPT ); Thu, 17 Jan 2019 16:14:24 -0500 Received: by mail-pg1-f196.google.com with SMTP id m1so4979424pgq.8 for ; Thu, 17 Jan 2019 13:14:23 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=lJv+Twj8lJ8X6h/Di1z4hJArSKNOCkWdGoySJmvnV4k=; b=RbLvdjXGXNrQnv7TihkvoT4kHKZptpXo6oCZ+e0jU2j9sSU8y2qtLLe8Gaq/wccD1k zEPV07itajIL8alX7JNcsHXmUdHAyHl7CU/BMgfxGU7hVzMiBtBIlHEc1x+Lx8HOvQYM vd4CpEZKXwfpRKF7GfkT9Xd44b3vNwBMFv/btWyQoCe8/4AYYopf43dJpf34ASiP0Pry C1oKgbHgwWqHMeu/zp8wLx3NXm2FLnl59jRicO+FmBy8U9GBP1YAGFdpVYiLlV22Oq3v 3ZThUda5Q5GuZHgG2ba0Z04g4QLcty3ULl0GokDIIRnyCIqbkJi8yzN+W84kMT55mXyI jVjg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=lJv+Twj8lJ8X6h/Di1z4hJArSKNOCkWdGoySJmvnV4k=; b=b8s/Y5c8/78O9FPPE/rhfw6zmvREWiNXTp/oV8uLZzAk53CeAcrM3UVyU/7QFRfJEl v89Ol92kQrO4U/8zAdJPL0NSWZRLYvrrnivVI37Q1DSj/lK+jaFzDwDKlp//5WQuFNT+ bTMhPdlNYW+PplRKSFHpsiXbYDrKClupQ86k91FYOrPashCrplWN8f+2lmJeAORLT5hA SAWlr7CTZOOpzNGU0qBjzL94B+Uz+vCDx6lFLxvwxeDp8XqVGcNYSyzpvLylgzDLndJY 5y76IYwqjgwR9T9acLsh5y3bAjkSZGbaEGPL2sa8svpChkRSaBkDnU+3LGbWsVPee17j 8TxA== X-Gm-Message-State: AJcUukcewbAT2ncF1iMg3/xyctb516LDf6mIBZOfzR4cs+Wy3zYyYp7I U+3X84B5z5fnnLvjUkmSXJmT9Mfb X-Google-Smtp-Source: ALg8bN40Tyn4Gu9xow0xqneHadf/vH/u9XBPlw5/MJPFB/thK49HisP+HE9fGaIbF9swphLX+GVRHg== X-Received: by 2002:a63:1d1d:: with SMTP id d29mr15003296pgd.49.1547759662475; Thu, 17 Jan 2019 13:14:22 -0800 (PST) Received: from localhost ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id t21sm3164798pgg.24.2019.01.17.13.14.21 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Jan 2019 13:14:21 -0800 (PST) From: Guenter Roeck To: Hardware Monitoring Cc: Jean Delvare , Guenter Roeck Subject: [PATCH 17/29] hwmon: (lm75) Replace S_ with octal values Date: Thu, 17 Jan 2019 13:13:37 -0800 Message-Id: <1547759629-23007-18-git-send-email-linux@roeck-us.net> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1547759629-23007-1-git-send-email-linux@roeck-us.net> References: <1547759629-23007-1-git-send-email-linux@roeck-us.net> Sender: linux-hwmon-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-hwmon@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Replace S_ with octal values. The conversion was done automatically with coccinelle. The semantic patches and the scripts used to generate this commit log are available at https://github.com/groeck/coccinelle-patches/hwmon/. This patch does not introduce functional changes. It was verified by compiling the old and new files and comparing text and data sizes. Signed-off-by: Guenter Roeck --- drivers/hwmon/lm75.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/hwmon/lm75.c b/drivers/hwmon/lm75.c index 62acb9f16ec5..447af07450f1 100644 --- a/drivers/hwmon/lm75.c +++ b/drivers/hwmon/lm75.c @@ -176,16 +176,16 @@ static umode_t lm75_is_visible(const void *data, enum hwmon_sensor_types type, case hwmon_chip: switch (attr) { case hwmon_chip_update_interval: - return S_IRUGO; + return 0444; } break; case hwmon_temp: switch (attr) { case hwmon_temp_input: - return S_IRUGO; + return 0444; case hwmon_temp_max: case hwmon_temp_max_hyst: - return S_IRUGO | S_IWUSR; + return 0644; } break; default: From patchwork Thu Jan 17 21:13:38 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Guenter Roeck X-Patchwork-Id: 10769119 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 6D1F013BF for ; Thu, 17 Jan 2019 21:14:26 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 5D5762A65D for ; Thu, 17 Jan 2019 21:14:26 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 5152A2A7B0; Thu, 17 Jan 2019 21:14:26 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id D21492A65D for ; Thu, 17 Jan 2019 21:14:25 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728674AbfAQVOZ (ORCPT ); Thu, 17 Jan 2019 16:14:25 -0500 Received: from mail-pf1-f194.google.com ([209.85.210.194]:43510 "EHLO mail-pf1-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728664AbfAQVOZ (ORCPT ); Thu, 17 Jan 2019 16:14:25 -0500 Received: by mail-pf1-f194.google.com with SMTP id w73so5416320pfk.10 for ; Thu, 17 Jan 2019 13:14:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=QfzNL9EtojQvSqENpETz4VXf9/XIwRpOmfmGpqdVHVc=; b=KKMKscYp50UZPf6cW5VuvmL8z0PTtGrtz1RTvZ78elXnlHkKPa7SGmOfR0hPDtdiA0 U2jxvfV1z+aNUkHyG/r8Nq4e0RsdD80fwFUpRN0uH0lHsYIWcPttuIe3obo4W+bMLcir IqUXKF5VcHSLDYC1NgWsXfMdaDXrIgY0zvSlS7ha0DZr0zMbgT0d9FcDI/KEcMsnLRqI hZ19zqn/abjq/MyITJfyPiwtIfqIwyjh0Eg8D7M3uherZevIoBkFwxo5ekXio1OpxoqR FrJAz/xsXkc5KQ0PewElN98SEokHVNtcPxUIk5Vnc8YBazDDLk3MqcnXHxaUrFpXN5Z6 V0/w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=QfzNL9EtojQvSqENpETz4VXf9/XIwRpOmfmGpqdVHVc=; b=ENAoozVenThS41sNw+8dVvO1IE3O4RqY7ATB3aZSmb69RFq/r4MZygQK/NX2H6vor1 qEWH3li73CLzfzXjMW2nPZj25eTIlEUIVr/NOtZQ0QT92lu03GDSQG6olrYvoH2MnQxs wIvrJGUoKqlESEc4jEYWCDZhD3SBOtcIs4JU9B/n4Ek/21PN7rcVUzlEUPHnO4gk2YSQ vACl7RVqh+y2dRe+DoOMjU4Vr8+URvudda/vOnmqWgjdDY+wd13JQFqAn7HV2Y16Wqg9 QeXKhS2uBBU0bIMiv8HRBczVau9Avbip3HFhYOfc1fIca+NYP41tMKcHU3d5MJQ7qrzE eTvg== X-Gm-Message-State: AJcUukcTB+fCzN/N5OSpR/DC1dFrpCyI5OEnl2pcL7DBDWHRM7kntm2i B+BiIDFiS62DldlUnovbIKWD3ecl X-Google-Smtp-Source: ALg8bN6HodITU2JEpycSwV7c8+oWi7AMSXxOHcF59f46slFdc74VKtzsmvRpJe/AUV6USYj53pVedg== X-Received: by 2002:a65:560e:: with SMTP id l14mr14952915pgs.168.1547759664118; Thu, 17 Jan 2019 13:14:24 -0800 (PST) Received: from localhost ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id z186sm3591119pfz.119.2019.01.17.13.14.23 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Jan 2019 13:14:23 -0800 (PST) From: Guenter Roeck To: Hardware Monitoring Cc: Jean Delvare , Guenter Roeck Subject: [PATCH 18/29] hwmon: (lm77) Use permission specific SENSOR[_DEVICE]_ATTR variants Date: Thu, 17 Jan 2019 13:13:38 -0800 Message-Id: <1547759629-23007-19-git-send-email-linux@roeck-us.net> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1547759629-23007-1-git-send-email-linux@roeck-us.net> References: <1547759629-23007-1-git-send-email-linux@roeck-us.net> Sender: linux-hwmon-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-hwmon@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Use SENSOR[_DEVICE]_ATTR[_2]_{RO,RW,WO} to simplify the source code, to improve readbility, and to reduce the chance of inconsistencies. Also replace any remaining S_ in the driver with octal values. The conversion was done automatically with coccinelle. The semantic patches and the scripts used to generate this commit log are available at https://github.com/groeck/coccinelle-patches/hwmon/. This patch does not introduce functional changes. It was verified by compiling the old and new files and comparing text and data sizes. Signed-off-by: Guenter Roeck --- drivers/hwmon/lm77.c | 45 +++++++++++++++++++++------------------------ 1 file changed, 21 insertions(+), 24 deletions(-) diff --git a/drivers/hwmon/lm77.c b/drivers/hwmon/lm77.c index 69b05cc2f60e..c27073dc24c1 100644 --- a/drivers/hwmon/lm77.c +++ b/drivers/hwmon/lm77.c @@ -137,7 +137,7 @@ static struct lm77_data *lm77_update_device(struct device *dev) /* sysfs stuff */ -static ssize_t show_temp(struct device *dev, struct device_attribute *devattr, +static ssize_t temp_show(struct device *dev, struct device_attribute *devattr, char *buf) { struct sensor_device_attribute *attr = to_sensor_dev_attr(devattr); @@ -146,7 +146,7 @@ static ssize_t show_temp(struct device *dev, struct device_attribute *devattr, return sprintf(buf, "%d\n", data->temp[attr->index]); } -static ssize_t show_temp_hyst(struct device *dev, +static ssize_t temp_hyst_show(struct device *dev, struct device_attribute *devattr, char *buf) { struct sensor_device_attribute *attr = to_sensor_dev_attr(devattr); @@ -160,8 +160,9 @@ static ssize_t show_temp_hyst(struct device *dev, return sprintf(buf, "%d\n", temp); } -static ssize_t set_temp(struct device *dev, struct device_attribute *devattr, - const char *buf, size_t count) +static ssize_t temp_store(struct device *dev, + struct device_attribute *devattr, const char *buf, + size_t count) { struct sensor_device_attribute *attr = to_sensor_dev_attr(devattr); struct lm77_data *data = dev_get_drvdata(dev); @@ -186,9 +187,9 @@ static ssize_t set_temp(struct device *dev, struct device_attribute *devattr, * hysteresis is stored as a relative value on the chip, so it has to be * converted first. */ -static ssize_t set_temp_hyst(struct device *dev, - struct device_attribute *devattr, - const char *buf, size_t count) +static ssize_t temp_hyst_store(struct device *dev, + struct device_attribute *devattr, + const char *buf, size_t count) { struct lm77_data *data = dev_get_drvdata(dev); struct i2c_client *client = data->client; @@ -208,7 +209,7 @@ static ssize_t set_temp_hyst(struct device *dev, return count; } -static ssize_t show_alarm(struct device *dev, struct device_attribute *attr, +static ssize_t alarm_show(struct device *dev, struct device_attribute *attr, char *buf) { int bitnr = to_sensor_dev_attr(attr)->index; @@ -216,22 +217,18 @@ static ssize_t show_alarm(struct device *dev, struct device_attribute *attr, return sprintf(buf, "%u\n", (data->alarms >> bitnr) & 1); } -static SENSOR_DEVICE_ATTR(temp1_input, S_IRUGO, show_temp, NULL, t_input); -static SENSOR_DEVICE_ATTR(temp1_crit, S_IWUSR | S_IRUGO, show_temp, set_temp, - t_crit); -static SENSOR_DEVICE_ATTR(temp1_min, S_IWUSR | S_IRUGO, show_temp, set_temp, - t_min); -static SENSOR_DEVICE_ATTR(temp1_max, S_IWUSR | S_IRUGO, show_temp, set_temp, - t_max); - -static SENSOR_DEVICE_ATTR(temp1_crit_hyst, S_IWUSR | S_IRUGO, show_temp_hyst, - set_temp_hyst, t_crit); -static SENSOR_DEVICE_ATTR(temp1_min_hyst, S_IRUGO, show_temp_hyst, NULL, t_min); -static SENSOR_DEVICE_ATTR(temp1_max_hyst, S_IRUGO, show_temp_hyst, NULL, t_max); - -static SENSOR_DEVICE_ATTR(temp1_crit_alarm, S_IRUGO, show_alarm, NULL, 2); -static SENSOR_DEVICE_ATTR(temp1_min_alarm, S_IRUGO, show_alarm, NULL, 0); -static SENSOR_DEVICE_ATTR(temp1_max_alarm, S_IRUGO, show_alarm, NULL, 1); +static SENSOR_DEVICE_ATTR_RO(temp1_input, temp, t_input); +static SENSOR_DEVICE_ATTR_RW(temp1_crit, temp, t_crit); +static SENSOR_DEVICE_ATTR_RW(temp1_min, temp, t_min); +static SENSOR_DEVICE_ATTR_RW(temp1_max, temp, t_max); + +static SENSOR_DEVICE_ATTR_RW(temp1_crit_hyst, temp_hyst, t_crit); +static SENSOR_DEVICE_ATTR_RO(temp1_min_hyst, temp_hyst, t_min); +static SENSOR_DEVICE_ATTR_RO(temp1_max_hyst, temp_hyst, t_max); + +static SENSOR_DEVICE_ATTR_RO(temp1_crit_alarm, alarm, 2); +static SENSOR_DEVICE_ATTR_RO(temp1_min_alarm, alarm, 0); +static SENSOR_DEVICE_ATTR_RO(temp1_max_alarm, alarm, 1); static struct attribute *lm77_attrs[] = { &sensor_dev_attr_temp1_input.dev_attr.attr, From patchwork Thu Jan 17 21:13:39 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Guenter Roeck X-Patchwork-Id: 10769121 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 41EB113BF for ; Thu, 17 Jan 2019 21:14:29 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 30DB82A7A7 for ; Thu, 17 Jan 2019 21:14:29 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 236D62A7B1; Thu, 17 Jan 2019 21:14:29 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 499B12A7A7 for ; Thu, 17 Jan 2019 21:14:28 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728688AbfAQVO2 (ORCPT ); Thu, 17 Jan 2019 16:14:28 -0500 Received: from mail-pg1-f196.google.com ([209.85.215.196]:41183 "EHLO mail-pg1-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728664AbfAQVO1 (ORCPT ); Thu, 17 Jan 2019 16:14:27 -0500 Received: by mail-pg1-f196.google.com with SMTP id m1so4979491pgq.8 for ; Thu, 17 Jan 2019 13:14:26 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=Gpqny1ZgCCva12YzA0cRKMpRTUYDRY6EafoT1V0LQ7k=; b=PVYhXudFi4yyxP4P7OUdaWvTzXVFZ3Vq20RnfdZO3RcbwsG+eGKRMC19cdi9Myl6/o E8DMNy06Vdllf3BfMi0UssVE+wxxAXIqepnhxI5Mh8by6nAbVg+1BuRtXla3ZWY+e8R5 oqwKb1tdVUXxlXa+4Q+GjvgkS9oQ//NTVIfQcO6LJn53gpUeVqPBRmZ91C/MFx1PVeKQ OMg1/E9fO8Y39bw0j2ciRxyiro511FXHPCDlUsZMrBRFiwkUEXsnun8MPclWQuNatyeB PZts8q3MyOj9H6BUoKnrLNI3W5BNTbdIzUFCF0R4kV7pnD9PtCU98o6cHawmoKlA9ubV 6fvw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=Gpqny1ZgCCva12YzA0cRKMpRTUYDRY6EafoT1V0LQ7k=; b=H9FfVwJJjHpLE9Da1Jk9AcHGNz5u6jAp6w2qm2SwfiotLbLN+IzBBVWTtcg9X5Styk 3ZweStb176jn6ckXZmLF49Oo694Embd6/FxeE+S54NAjp25+c7BHaqCb0oS+73Agi4Si +UL/bAvDm6Uv2KjR4U8ymDSXvfKe+jtUN7o1uROzW8/wTeTDiiSDk5xpDlhaQ3WNzlR6 E+BsMKiPBpT7sJIltPGn2GmYMZa0hFdciFTav0xoo6j+JtOr8LXBqY5oMgeShr+StVnc Eks8dSfQXdKC8YBx+R6F1DbXYDYHlFDJFzuPw23gZwIaUi6h/HPoS2ZNkxaQpgLu9eZs uAKA== X-Gm-Message-State: AJcUukddTJk+sc9cbSGeqoGEbj0GpREfvTFXpNVfvN4pNh8fNg9wnxAy XtVS6dWTRJ3GoIITgHHI388iTNmI X-Google-Smtp-Source: ALg8bN45/GLuAKBhadfvh1xJp4de+jeObJm19fXSXKICmBA4glL9cQteVAmmQ/HfnXEKdoZX2aITvQ== X-Received: by 2002:a62:9fcf:: with SMTP id v76mr10973293pfk.144.1547759665792; Thu, 17 Jan 2019 13:14:25 -0800 (PST) Received: from localhost ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id j197sm2731617pgc.76.2019.01.17.13.14.24 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Jan 2019 13:14:25 -0800 (PST) From: Guenter Roeck To: Hardware Monitoring Cc: Jean Delvare , Guenter Roeck Subject: [PATCH 19/29] hwmon: (lm80) Use permission specific SENSOR[_DEVICE]_ATTR variants Date: Thu, 17 Jan 2019 13:13:39 -0800 Message-Id: <1547759629-23007-20-git-send-email-linux@roeck-us.net> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1547759629-23007-1-git-send-email-linux@roeck-us.net> References: <1547759629-23007-1-git-send-email-linux@roeck-us.net> Sender: linux-hwmon-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-hwmon@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Use SENSOR[_DEVICE]_ATTR[_2]_{RO,RW,WO} to simplify the source code, to improve readbility, and to reduce the chance of inconsistencies. Also replace any remaining S_ in the driver with octal values. The conversion was done automatically with coccinelle. The semantic patches and the scripts used to generate this commit log are available at https://github.com/groeck/coccinelle-patches/hwmon/. This patch does not introduce functional changes. It was verified by compiling the old and new files and comparing text and data sizes. Signed-off-by: Guenter Roeck --- drivers/hwmon/lm80.c | 138 ++++++++++++++++++++++----------------------------- 1 file changed, 59 insertions(+), 79 deletions(-) diff --git a/drivers/hwmon/lm80.c b/drivers/hwmon/lm80.c index f9b8e3e23a8e..54cf24a2b0ed 100644 --- a/drivers/hwmon/lm80.c +++ b/drivers/hwmon/lm80.c @@ -269,7 +269,7 @@ static struct lm80_data *lm80_update_device(struct device *dev) * Sysfs stuff */ -static ssize_t show_in(struct device *dev, struct device_attribute *attr, +static ssize_t in_show(struct device *dev, struct device_attribute *attr, char *buf) { struct lm80_data *data = lm80_update_device(dev); @@ -281,8 +281,8 @@ static ssize_t show_in(struct device *dev, struct device_attribute *attr, return sprintf(buf, "%d\n", IN_FROM_REG(data->in[nr][index])); } -static ssize_t set_in(struct device *dev, struct device_attribute *attr, - const char *buf, size_t count) +static ssize_t in_store(struct device *dev, struct device_attribute *attr, + const char *buf, size_t count) { struct lm80_data *data = dev_get_drvdata(dev); struct i2c_client *client = data->client; @@ -303,7 +303,7 @@ static ssize_t set_in(struct device *dev, struct device_attribute *attr, return count; } -static ssize_t show_fan(struct device *dev, struct device_attribute *attr, +static ssize_t fan_show(struct device *dev, struct device_attribute *attr, char *buf) { int index = to_sensor_dev_attr_2(attr)->index; @@ -315,8 +315,8 @@ static ssize_t show_fan(struct device *dev, struct device_attribute *attr, DIV_FROM_REG(data->fan_div[index]))); } -static ssize_t show_fan_div(struct device *dev, struct device_attribute *attr, - char *buf) +static ssize_t fan_div_show(struct device *dev, struct device_attribute *attr, + char *buf) { int nr = to_sensor_dev_attr(attr)->index; struct lm80_data *data = lm80_update_device(dev); @@ -325,8 +325,8 @@ static ssize_t show_fan_div(struct device *dev, struct device_attribute *attr, return sprintf(buf, "%d\n", DIV_FROM_REG(data->fan_div[nr])); } -static ssize_t set_fan_min(struct device *dev, struct device_attribute *attr, - const char *buf, size_t count) +static ssize_t fan_store(struct device *dev, struct device_attribute *attr, + const char *buf, size_t count) { int index = to_sensor_dev_attr_2(attr)->index; int nr = to_sensor_dev_attr_2(attr)->nr; @@ -352,8 +352,9 @@ static ssize_t set_fan_min(struct device *dev, struct device_attribute *attr, * least surprise; the user doesn't expect the fan minimum to change just * because the divisor changed. */ -static ssize_t set_fan_div(struct device *dev, struct device_attribute *attr, - const char *buf, size_t count) +static ssize_t fan_div_store(struct device *dev, + struct device_attribute *attr, const char *buf, + size_t count) { int nr = to_sensor_dev_attr(attr)->index; struct lm80_data *data = dev_get_drvdata(dev); @@ -410,7 +411,7 @@ static ssize_t set_fan_div(struct device *dev, struct device_attribute *attr, return count; } -static ssize_t show_temp(struct device *dev, struct device_attribute *devattr, +static ssize_t temp_show(struct device *dev, struct device_attribute *devattr, char *buf) { struct sensor_device_attribute *attr = to_sensor_dev_attr(devattr); @@ -420,8 +421,9 @@ static ssize_t show_temp(struct device *dev, struct device_attribute *devattr, return sprintf(buf, "%d\n", TEMP_FROM_REG(data->temp[attr->index])); } -static ssize_t set_temp(struct device *dev, struct device_attribute *devattr, - const char *buf, size_t count) +static ssize_t temp_store(struct device *dev, + struct device_attribute *devattr, const char *buf, + size_t count) { struct sensor_device_attribute *attr = to_sensor_dev_attr(devattr); struct lm80_data *data = dev_get_drvdata(dev); @@ -448,7 +450,7 @@ static ssize_t alarms_show(struct device *dev, struct device_attribute *attr, return sprintf(buf, "%u\n", data->alarms); } -static ssize_t show_alarm(struct device *dev, struct device_attribute *attr, +static ssize_t alarm_show(struct device *dev, struct device_attribute *attr, char *buf) { int bitnr = to_sensor_dev_attr(attr)->index; @@ -458,72 +460,50 @@ static ssize_t show_alarm(struct device *dev, struct device_attribute *attr, return sprintf(buf, "%u\n", (data->alarms >> bitnr) & 1); } -static SENSOR_DEVICE_ATTR_2(in0_min, S_IWUSR | S_IRUGO, - show_in, set_in, i_min, 0); -static SENSOR_DEVICE_ATTR_2(in1_min, S_IWUSR | S_IRUGO, - show_in, set_in, i_min, 1); -static SENSOR_DEVICE_ATTR_2(in2_min, S_IWUSR | S_IRUGO, - show_in, set_in, i_min, 2); -static SENSOR_DEVICE_ATTR_2(in3_min, S_IWUSR | S_IRUGO, - show_in, set_in, i_min, 3); -static SENSOR_DEVICE_ATTR_2(in4_min, S_IWUSR | S_IRUGO, - show_in, set_in, i_min, 4); -static SENSOR_DEVICE_ATTR_2(in5_min, S_IWUSR | S_IRUGO, - show_in, set_in, i_min, 5); -static SENSOR_DEVICE_ATTR_2(in6_min, S_IWUSR | S_IRUGO, - show_in, set_in, i_min, 6); -static SENSOR_DEVICE_ATTR_2(in0_max, S_IWUSR | S_IRUGO, - show_in, set_in, i_max, 0); -static SENSOR_DEVICE_ATTR_2(in1_max, S_IWUSR | S_IRUGO, - show_in, set_in, i_max, 1); -static SENSOR_DEVICE_ATTR_2(in2_max, S_IWUSR | S_IRUGO, - show_in, set_in, i_max, 2); -static SENSOR_DEVICE_ATTR_2(in3_max, S_IWUSR | S_IRUGO, - show_in, set_in, i_max, 3); -static SENSOR_DEVICE_ATTR_2(in4_max, S_IWUSR | S_IRUGO, - show_in, set_in, i_max, 4); -static SENSOR_DEVICE_ATTR_2(in5_max, S_IWUSR | S_IRUGO, - show_in, set_in, i_max, 5); -static SENSOR_DEVICE_ATTR_2(in6_max, S_IWUSR | S_IRUGO, - show_in, set_in, i_max, 6); -static SENSOR_DEVICE_ATTR_2(in0_input, S_IRUGO, show_in, NULL, i_input, 0); -static SENSOR_DEVICE_ATTR_2(in1_input, S_IRUGO, show_in, NULL, i_input, 1); -static SENSOR_DEVICE_ATTR_2(in2_input, S_IRUGO, show_in, NULL, i_input, 2); -static SENSOR_DEVICE_ATTR_2(in3_input, S_IRUGO, show_in, NULL, i_input, 3); -static SENSOR_DEVICE_ATTR_2(in4_input, S_IRUGO, show_in, NULL, i_input, 4); -static SENSOR_DEVICE_ATTR_2(in5_input, S_IRUGO, show_in, NULL, i_input, 5); -static SENSOR_DEVICE_ATTR_2(in6_input, S_IRUGO, show_in, NULL, i_input, 6); -static SENSOR_DEVICE_ATTR_2(fan1_min, S_IWUSR | S_IRUGO, - show_fan, set_fan_min, f_min, 0); -static SENSOR_DEVICE_ATTR_2(fan2_min, S_IWUSR | S_IRUGO, - show_fan, set_fan_min, f_min, 1); -static SENSOR_DEVICE_ATTR_2(fan1_input, S_IRUGO, show_fan, NULL, f_input, 0); -static SENSOR_DEVICE_ATTR_2(fan2_input, S_IRUGO, show_fan, NULL, f_input, 1); -static SENSOR_DEVICE_ATTR(fan1_div, S_IWUSR | S_IRUGO, - show_fan_div, set_fan_div, 0); -static SENSOR_DEVICE_ATTR(fan2_div, S_IWUSR | S_IRUGO, - show_fan_div, set_fan_div, 1); -static SENSOR_DEVICE_ATTR(temp1_input, S_IRUGO, show_temp, NULL, t_input); -static SENSOR_DEVICE_ATTR(temp1_max, S_IWUSR | S_IRUGO, show_temp, - set_temp, t_hot_max); -static SENSOR_DEVICE_ATTR(temp1_max_hyst, S_IWUSR | S_IRUGO, show_temp, - set_temp, t_hot_hyst); -static SENSOR_DEVICE_ATTR(temp1_crit, S_IWUSR | S_IRUGO, show_temp, - set_temp, t_os_max); -static SENSOR_DEVICE_ATTR(temp1_crit_hyst, S_IWUSR | S_IRUGO, show_temp, - set_temp, t_os_hyst); +static SENSOR_DEVICE_ATTR_2_RW(in0_min, in, i_min, 0); +static SENSOR_DEVICE_ATTR_2_RW(in1_min, in, i_min, 1); +static SENSOR_DEVICE_ATTR_2_RW(in2_min, in, i_min, 2); +static SENSOR_DEVICE_ATTR_2_RW(in3_min, in, i_min, 3); +static SENSOR_DEVICE_ATTR_2_RW(in4_min, in, i_min, 4); +static SENSOR_DEVICE_ATTR_2_RW(in5_min, in, i_min, 5); +static SENSOR_DEVICE_ATTR_2_RW(in6_min, in, i_min, 6); +static SENSOR_DEVICE_ATTR_2_RW(in0_max, in, i_max, 0); +static SENSOR_DEVICE_ATTR_2_RW(in1_max, in, i_max, 1); +static SENSOR_DEVICE_ATTR_2_RW(in2_max, in, i_max, 2); +static SENSOR_DEVICE_ATTR_2_RW(in3_max, in, i_max, 3); +static SENSOR_DEVICE_ATTR_2_RW(in4_max, in, i_max, 4); +static SENSOR_DEVICE_ATTR_2_RW(in5_max, in, i_max, 5); +static SENSOR_DEVICE_ATTR_2_RW(in6_max, in, i_max, 6); +static SENSOR_DEVICE_ATTR_2_RO(in0_input, in, i_input, 0); +static SENSOR_DEVICE_ATTR_2_RO(in1_input, in, i_input, 1); +static SENSOR_DEVICE_ATTR_2_RO(in2_input, in, i_input, 2); +static SENSOR_DEVICE_ATTR_2_RO(in3_input, in, i_input, 3); +static SENSOR_DEVICE_ATTR_2_RO(in4_input, in, i_input, 4); +static SENSOR_DEVICE_ATTR_2_RO(in5_input, in, i_input, 5); +static SENSOR_DEVICE_ATTR_2_RO(in6_input, in, i_input, 6); +static SENSOR_DEVICE_ATTR_2_RW(fan1_min, fan, f_min, 0); +static SENSOR_DEVICE_ATTR_2_RW(fan2_min, fan, f_min, 1); +static SENSOR_DEVICE_ATTR_2_RO(fan1_input, fan, f_input, 0); +static SENSOR_DEVICE_ATTR_2_RO(fan2_input, fan, f_input, 1); +static SENSOR_DEVICE_ATTR_RW(fan1_div, fan_div, 0); +static SENSOR_DEVICE_ATTR_RW(fan2_div, fan_div, 1); +static SENSOR_DEVICE_ATTR_RO(temp1_input, temp, t_input); +static SENSOR_DEVICE_ATTR_RW(temp1_max, temp, t_hot_max); +static SENSOR_DEVICE_ATTR_RW(temp1_max_hyst, temp, t_hot_hyst); +static SENSOR_DEVICE_ATTR_RW(temp1_crit, temp, t_os_max); +static SENSOR_DEVICE_ATTR_RW(temp1_crit_hyst, temp, t_os_hyst); static DEVICE_ATTR_RO(alarms); -static SENSOR_DEVICE_ATTR(in0_alarm, S_IRUGO, show_alarm, NULL, 0); -static SENSOR_DEVICE_ATTR(in1_alarm, S_IRUGO, show_alarm, NULL, 1); -static SENSOR_DEVICE_ATTR(in2_alarm, S_IRUGO, show_alarm, NULL, 2); -static SENSOR_DEVICE_ATTR(in3_alarm, S_IRUGO, show_alarm, NULL, 3); -static SENSOR_DEVICE_ATTR(in4_alarm, S_IRUGO, show_alarm, NULL, 4); -static SENSOR_DEVICE_ATTR(in5_alarm, S_IRUGO, show_alarm, NULL, 5); -static SENSOR_DEVICE_ATTR(in6_alarm, S_IRUGO, show_alarm, NULL, 6); -static SENSOR_DEVICE_ATTR(fan1_alarm, S_IRUGO, show_alarm, NULL, 10); -static SENSOR_DEVICE_ATTR(fan2_alarm, S_IRUGO, show_alarm, NULL, 11); -static SENSOR_DEVICE_ATTR(temp1_max_alarm, S_IRUGO, show_alarm, NULL, 8); -static SENSOR_DEVICE_ATTR(temp1_crit_alarm, S_IRUGO, show_alarm, NULL, 13); +static SENSOR_DEVICE_ATTR_RO(in0_alarm, alarm, 0); +static SENSOR_DEVICE_ATTR_RO(in1_alarm, alarm, 1); +static SENSOR_DEVICE_ATTR_RO(in2_alarm, alarm, 2); +static SENSOR_DEVICE_ATTR_RO(in3_alarm, alarm, 3); +static SENSOR_DEVICE_ATTR_RO(in4_alarm, alarm, 4); +static SENSOR_DEVICE_ATTR_RO(in5_alarm, alarm, 5); +static SENSOR_DEVICE_ATTR_RO(in6_alarm, alarm, 6); +static SENSOR_DEVICE_ATTR_RO(fan1_alarm, alarm, 10); +static SENSOR_DEVICE_ATTR_RO(fan2_alarm, alarm, 11); +static SENSOR_DEVICE_ATTR_RO(temp1_max_alarm, alarm, 8); +static SENSOR_DEVICE_ATTR_RO(temp1_crit_alarm, alarm, 13); /* * Real code From patchwork Thu Jan 17 21:13:40 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Guenter Roeck X-Patchwork-Id: 10769123 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id D87906C2 for ; Thu, 17 Jan 2019 21:14:29 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id C96772A7A7 for ; Thu, 17 Jan 2019 21:14:29 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id BD9EF2A7B0; Thu, 17 Jan 2019 21:14:29 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 37C3E2A7B7 for ; Thu, 17 Jan 2019 21:14:29 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728695AbfAQVO3 (ORCPT ); Thu, 17 Jan 2019 16:14:29 -0500 Received: from mail-pl1-f196.google.com ([209.85.214.196]:33506 "EHLO mail-pl1-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728664AbfAQVO2 (ORCPT ); Thu, 17 Jan 2019 16:14:28 -0500 Received: by mail-pl1-f196.google.com with SMTP id z23so5322823plo.0 for ; Thu, 17 Jan 2019 13:14:28 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=Uba5H0rwlV7j2FuK+fQbPy+WkZIvLmP+6SR3/X1zUh8=; b=D4QiJBNSHK0g2RFSq2eUyy8JY5eWPDv7MDgiEYIcLHWn4WpgysyfAON62G31rCnzto 4sFEwjfB3uHlPPCYjzj9BU+vHpIBa0xm5vVyP4loMSYYJo57u1NW33bR+4PS5B3TrOAG y5PaSJEV8X3ZZWrngJ/CsfJ/0SH+PK9ATs7E1qP3EK5PQm/S5YpbQMG7LSi5rG9JLUbd rE0QD9579vP5Pn3VLViKDOvuVJVl+o6Txg1b6WwBzU/YGKIVnNINPD3O13aRWZos1Nkv U8LEW9+ZpC6XtAoq2XMV+JiijLXtJIFLDIvUlZs+5KHgSKFwGcDrFIOMDPbXTxu4dDA2 nK4Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=Uba5H0rwlV7j2FuK+fQbPy+WkZIvLmP+6SR3/X1zUh8=; b=RyZoIciPQ4MjKbfAx6VvVYROWY41s8B0Vjslu2I1ulEdSRC8gEm2KwUtiUErV8Hemc 2vFlxYg6kNNqtVL74fbDyBeXOuPmoVIiv37hsXBAh7hoi8r9aaBfn8cX1J6zhKC7nh2t hMYgKdEIfLc/AtSCz8S/8nM4M6YVq7h6JhJSIxM+eDpnFvZIlTkBWczzSXLLL19QmDKu GMs/oluvOM0q7fE4KMlt2FLG5gsIlKBkm+9+fuH9qocTuxa9Ztfwi8ANspCr82Y0zt4c wJtBAZb5Jyf8MpG6ZcYlAg68d68kBpzvl8xa2RfimxJr9TO0QgB6Q7heAXYCkx/oGjqa z+rw== X-Gm-Message-State: AJcUukfpwbOQmhW28Sd15SFoRzgYQwY4YmtzdcGi/h7QiPAg+djedtVL 7TyeXIGAWUoSQNQFg8sjRY71y11p X-Google-Smtp-Source: ALg8bN5UB7wSjWGX/sTqltVPWAKGdlg8ZmmfjlI0VFa5ubf4xSrtuq/WJw/8TL1nt5SgoQk5p9/gVA== X-Received: by 2002:a17:902:4464:: with SMTP id k91mr15162799pld.13.1547759667439; Thu, 17 Jan 2019 13:14:27 -0800 (PST) Received: from localhost ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id f67sm5282202pfc.141.2019.01.17.13.14.26 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Jan 2019 13:14:26 -0800 (PST) From: Guenter Roeck To: Hardware Monitoring Cc: Jean Delvare , Guenter Roeck Subject: [PATCH 20/29] hwmon: (lm83) Use permission specific SENSOR[_DEVICE]_ATTR variants Date: Thu, 17 Jan 2019 13:13:40 -0800 Message-Id: <1547759629-23007-21-git-send-email-linux@roeck-us.net> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1547759629-23007-1-git-send-email-linux@roeck-us.net> References: <1547759629-23007-1-git-send-email-linux@roeck-us.net> Sender: linux-hwmon-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-hwmon@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Use SENSOR[_DEVICE]_ATTR[_2]_{RO,RW,WO} to simplify the source code, to improve readbility, and to reduce the chance of inconsistencies. Also replace any remaining S_ in the driver with octal values. The conversion was done automatically with coccinelle. The semantic patches and the scripts used to generate this commit log are available at https://github.com/groeck/coccinelle-patches/hwmon/. This patch does not introduce functional changes. It was verified by compiling the old and new files and comparing text and data sizes. Signed-off-by: Guenter Roeck --- drivers/hwmon/lm83.c | 62 ++++++++++++++++++++++++---------------------------- 1 file changed, 29 insertions(+), 33 deletions(-) diff --git a/drivers/hwmon/lm83.c b/drivers/hwmon/lm83.c index cbfd0bb7f135..5bb35dff3d76 100644 --- a/drivers/hwmon/lm83.c +++ b/drivers/hwmon/lm83.c @@ -158,7 +158,7 @@ static struct lm83_data *lm83_update_device(struct device *dev) * Sysfs stuff */ -static ssize_t show_temp(struct device *dev, struct device_attribute *devattr, +static ssize_t temp_show(struct device *dev, struct device_attribute *devattr, char *buf) { struct sensor_device_attribute *attr = to_sensor_dev_attr(devattr); @@ -166,8 +166,9 @@ static ssize_t show_temp(struct device *dev, struct device_attribute *devattr, return sprintf(buf, "%d\n", TEMP_FROM_REG(data->temp[attr->index])); } -static ssize_t set_temp(struct device *dev, struct device_attribute *devattr, - const char *buf, size_t count) +static ssize_t temp_store(struct device *dev, + struct device_attribute *devattr, const char *buf, + size_t count) { struct sensor_device_attribute *attr = to_sensor_dev_attr(devattr); struct lm83_data *data = dev_get_drvdata(dev); @@ -195,8 +196,8 @@ static ssize_t alarms_show(struct device *dev, struct device_attribute *dummy, return sprintf(buf, "%d\n", data->alarms); } -static ssize_t show_alarm(struct device *dev, struct device_attribute - *devattr, char *buf) +static ssize_t alarm_show(struct device *dev, + struct device_attribute *devattr, char *buf) { struct sensor_device_attribute *attr = to_sensor_dev_attr(devattr); struct lm83_data *data = lm83_update_device(dev); @@ -205,36 +206,31 @@ static ssize_t show_alarm(struct device *dev, struct device_attribute return sprintf(buf, "%d\n", (data->alarms >> bitnr) & 1); } -static SENSOR_DEVICE_ATTR(temp1_input, S_IRUGO, show_temp, NULL, 0); -static SENSOR_DEVICE_ATTR(temp2_input, S_IRUGO, show_temp, NULL, 1); -static SENSOR_DEVICE_ATTR(temp3_input, S_IRUGO, show_temp, NULL, 2); -static SENSOR_DEVICE_ATTR(temp4_input, S_IRUGO, show_temp, NULL, 3); -static SENSOR_DEVICE_ATTR(temp1_max, S_IWUSR | S_IRUGO, show_temp, - set_temp, 4); -static SENSOR_DEVICE_ATTR(temp2_max, S_IWUSR | S_IRUGO, show_temp, - set_temp, 5); -static SENSOR_DEVICE_ATTR(temp3_max, S_IWUSR | S_IRUGO, show_temp, - set_temp, 6); -static SENSOR_DEVICE_ATTR(temp4_max, S_IWUSR | S_IRUGO, show_temp, - set_temp, 7); -static SENSOR_DEVICE_ATTR(temp1_crit, S_IRUGO, show_temp, NULL, 8); -static SENSOR_DEVICE_ATTR(temp2_crit, S_IRUGO, show_temp, NULL, 8); -static SENSOR_DEVICE_ATTR(temp3_crit, S_IWUSR | S_IRUGO, show_temp, - set_temp, 8); -static SENSOR_DEVICE_ATTR(temp4_crit, S_IRUGO, show_temp, NULL, 8); +static SENSOR_DEVICE_ATTR_RO(temp1_input, temp, 0); +static SENSOR_DEVICE_ATTR_RO(temp2_input, temp, 1); +static SENSOR_DEVICE_ATTR_RO(temp3_input, temp, 2); +static SENSOR_DEVICE_ATTR_RO(temp4_input, temp, 3); +static SENSOR_DEVICE_ATTR_RW(temp1_max, temp, 4); +static SENSOR_DEVICE_ATTR_RW(temp2_max, temp, 5); +static SENSOR_DEVICE_ATTR_RW(temp3_max, temp, 6); +static SENSOR_DEVICE_ATTR_RW(temp4_max, temp, 7); +static SENSOR_DEVICE_ATTR_RO(temp1_crit, temp, 8); +static SENSOR_DEVICE_ATTR_RO(temp2_crit, temp, 8); +static SENSOR_DEVICE_ATTR_RW(temp3_crit, temp, 8); +static SENSOR_DEVICE_ATTR_RO(temp4_crit, temp, 8); /* Individual alarm files */ -static SENSOR_DEVICE_ATTR(temp1_crit_alarm, S_IRUGO, show_alarm, NULL, 0); -static SENSOR_DEVICE_ATTR(temp3_crit_alarm, S_IRUGO, show_alarm, NULL, 1); -static SENSOR_DEVICE_ATTR(temp3_fault, S_IRUGO, show_alarm, NULL, 2); -static SENSOR_DEVICE_ATTR(temp3_max_alarm, S_IRUGO, show_alarm, NULL, 4); -static SENSOR_DEVICE_ATTR(temp1_max_alarm, S_IRUGO, show_alarm, NULL, 6); -static SENSOR_DEVICE_ATTR(temp2_crit_alarm, S_IRUGO, show_alarm, NULL, 8); -static SENSOR_DEVICE_ATTR(temp4_crit_alarm, S_IRUGO, show_alarm, NULL, 9); -static SENSOR_DEVICE_ATTR(temp4_fault, S_IRUGO, show_alarm, NULL, 10); -static SENSOR_DEVICE_ATTR(temp4_max_alarm, S_IRUGO, show_alarm, NULL, 12); -static SENSOR_DEVICE_ATTR(temp2_fault, S_IRUGO, show_alarm, NULL, 13); -static SENSOR_DEVICE_ATTR(temp2_max_alarm, S_IRUGO, show_alarm, NULL, 15); +static SENSOR_DEVICE_ATTR_RO(temp1_crit_alarm, alarm, 0); +static SENSOR_DEVICE_ATTR_RO(temp3_crit_alarm, alarm, 1); +static SENSOR_DEVICE_ATTR_RO(temp3_fault, alarm, 2); +static SENSOR_DEVICE_ATTR_RO(temp3_max_alarm, alarm, 4); +static SENSOR_DEVICE_ATTR_RO(temp1_max_alarm, alarm, 6); +static SENSOR_DEVICE_ATTR_RO(temp2_crit_alarm, alarm, 8); +static SENSOR_DEVICE_ATTR_RO(temp4_crit_alarm, alarm, 9); +static SENSOR_DEVICE_ATTR_RO(temp4_fault, alarm, 10); +static SENSOR_DEVICE_ATTR_RO(temp4_max_alarm, alarm, 12); +static SENSOR_DEVICE_ATTR_RO(temp2_fault, alarm, 13); +static SENSOR_DEVICE_ATTR_RO(temp2_max_alarm, alarm, 15); /* Raw alarm file for compatibility */ static DEVICE_ATTR_RO(alarms); From patchwork Thu Jan 17 21:13:41 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Guenter Roeck X-Patchwork-Id: 10769125 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 2C7C013BF for ; Thu, 17 Jan 2019 21:14:31 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 1D48B2A7A7 for ; Thu, 17 Jan 2019 21:14:31 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 11CB42A7B1; Thu, 17 Jan 2019 21:14:31 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id B367C2A7A7 for ; Thu, 17 Jan 2019 21:14:30 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728727AbfAQVOa (ORCPT ); Thu, 17 Jan 2019 16:14:30 -0500 Received: from mail-pg1-f196.google.com ([209.85.215.196]:39180 "EHLO mail-pg1-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728664AbfAQVOa (ORCPT ); Thu, 17 Jan 2019 16:14:30 -0500 Received: by mail-pg1-f196.google.com with SMTP id w6so4986938pgl.6 for ; Thu, 17 Jan 2019 13:14:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=x0+ND3oN1efrXphYsthVrA2mU6vQ0dqg4bRDgsUTLhI=; b=P4vSbHPLC2gUZv2mBL/e0oab3dMKOrXACxy+Q4fKc2Kl5I99m6VN5HgZEucbPZr3yE 9AVDpR1V//yx0eYbAWVGYmH9Inyi82tRwnG8q4Ihfq/EkEGcKh/HrKFYHzT+RMxVsiwC VVKUGqKVTrhDzO92WzGiLRxV/5hnpxozkE/keVyAin1tfzmeYSroDK7oOSOmHm6UdLbF pOT8t+ipjmMbgxx2Bkzccq+/mwYEm0f/nceDAbIkqwJPNTo7c6WG86F6fP3A/HKueRwC WfKxijAbW1PrJTQOdrZ7563wz4YjWlpvhQmaxikhqokvFzj+rFf2sYX3P7S9d4i8VYLb 5Wyg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=x0+ND3oN1efrXphYsthVrA2mU6vQ0dqg4bRDgsUTLhI=; b=Cmj5RBB3W+OpXTpUKzIWMxiMG1UouD+CegpmijVnceUih/sAAzGdEfQqj8osC/uZLi TmHnu6kwx26KtrkOqVC5cQO07EyMIM/HqSb6CzVPuTjCNWJlEC/5F0koLVLE9naKxRIJ CWFaGbYLdfEmMZsFp2g0Cns258b22qyuky8fzf1MxIVoctd1fFmNOVp+p3mKEIFlbrhx +AcrYUMQTX+PbbzL7clG0DmBnDkOc8S+yfps0HLx9Erj3KHEhX7szVItJDHc9bWi6tXI dpLSY+8PUX+DA4a9puI/mE4+znchPv205WlI9LRTM1xZ48LuBczWTybgaLDDiBuLrMxl AFpQ== X-Gm-Message-State: AJcUukfUs54SGMP2Ve8CcYDpX5FbPu4XPMQ0E030zzn8UF1+6p+wt57H 3zoT5xTg5UkpzcwBoh1SIvtvzYgS X-Google-Smtp-Source: ALg8bN7TfCDqH/am9ITY8nvd92R7nM6mv7XB0Gg3RVaep2bpmOmX7qrTRHSDikwu5FwBh0sR5AO49g== X-Received: by 2002:a62:a1a:: with SMTP id s26mr16592941pfi.31.1547759669095; Thu, 17 Jan 2019 13:14:29 -0800 (PST) Received: from localhost ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id t3sm2432964pgv.31.2019.01.17.13.14.28 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Jan 2019 13:14:28 -0800 (PST) From: Guenter Roeck To: Hardware Monitoring Cc: Jean Delvare , Guenter Roeck Subject: [PATCH 21/29] hwmon: (lm90) Replace S_ with octal values Date: Thu, 17 Jan 2019 13:13:41 -0800 Message-Id: <1547759629-23007-22-git-send-email-linux@roeck-us.net> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1547759629-23007-1-git-send-email-linux@roeck-us.net> References: <1547759629-23007-1-git-send-email-linux@roeck-us.net> Sender: linux-hwmon-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-hwmon@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Replace S_ with octal values. The conversion was done automatically with coccinelle. The semantic patches and the scripts used to generate this commit log are available at https://github.com/groeck/coccinelle-patches/hwmon/. This patch does not introduce functional changes. It was verified by compiling the old and new files and comparing text and data sizes. Signed-off-by: Guenter Roeck --- drivers/hwmon/lm90.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/drivers/hwmon/lm90.c b/drivers/hwmon/lm90.c index c2f411c290bf..480d70a51778 100644 --- a/drivers/hwmon/lm90.c +++ b/drivers/hwmon/lm90.c @@ -1266,17 +1266,17 @@ static umode_t lm90_temp_is_visible(const void *data, u32 attr, int channel) case hwmon_temp_emergency_alarm: case hwmon_temp_emergency_hyst: case hwmon_temp_fault: - return S_IRUGO; + return 0444; case hwmon_temp_min: case hwmon_temp_max: case hwmon_temp_crit: case hwmon_temp_emergency: case hwmon_temp_offset: - return S_IRUGO | S_IWUSR; + return 0644; case hwmon_temp_crit_hyst: if (channel == 0) - return S_IRUGO | S_IWUSR; - return S_IRUGO; + return 0644; + return 0444; default: return 0; } @@ -1338,9 +1338,9 @@ static umode_t lm90_chip_is_visible(const void *data, u32 attr, int channel) { switch (attr) { case hwmon_chip_update_interval: - return S_IRUGO | S_IWUSR; + return 0644; case hwmon_chip_alarms: - return S_IRUGO; + return 0444; default: return 0; } From patchwork Thu Jan 17 21:13:42 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Guenter Roeck X-Patchwork-Id: 10769127 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id EE5A06C2 for ; Thu, 17 Jan 2019 21:14:32 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id DEA2C2A7A7 for ; Thu, 17 Jan 2019 21:14:32 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id D2EE12A7B1; Thu, 17 Jan 2019 21:14:32 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 5D1872A7A7 for ; Thu, 17 Jan 2019 21:14:32 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728741AbfAQVOc (ORCPT ); Thu, 17 Jan 2019 16:14:32 -0500 Received: from mail-pf1-f195.google.com ([209.85.210.195]:36595 "EHLO mail-pf1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728664AbfAQVOc (ORCPT ); Thu, 17 Jan 2019 16:14:32 -0500 Received: by mail-pf1-f195.google.com with SMTP id b85so5431430pfc.3 for ; Thu, 17 Jan 2019 13:14:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=WotTsz6+om3jrperZj7Nx/HIO5a1d6AFFi1U84t1LPY=; b=P9a6cUvGXSklek6mvJ7/NNMfLIW0OLwrdT+AQO0Wuu7cBdWQknIQEQmosAzRGdpyNm sa/0RkIJGV33ul64YpNjhEOCiW9RgXZDTZeV63LsIQjMxCoV+1ASzSl6vSQcmdmJCepr nSANJosbMSSCGf5eco0bFijUMHpXYYIxiHYsiLWsM+tFdduM+v6d4EYruMiWDyDcnK0e uyRSxH0/cK4t4ZG4w8hvrOE5zLg6kQuA//r3/bsG1P7s/+KXkXZJe5OOGO6lN+BQBLtU n3p41dtO9uh25ywY/ANwm6HprG0QUeMw2q+1vqjThH6x3y8nI3jSHGQTQSUklLKI4JYu x4jA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=WotTsz6+om3jrperZj7Nx/HIO5a1d6AFFi1U84t1LPY=; b=tGynurjs/5oLvgpGW6yiRcxubMbn3XPWDa5aLhpK5UDNfBlL/oPL4o5UcCIn5geP/8 0Gv0kKwIxQKAgzpILxOG0NmV6lpqLWki5GhtvgbMUE/Tjx/zULfV6Urdss5OkJ21F4QI YaV6qYNIc0YLuPJ5qQfX1XM8HGCU3UlNYsQmwjVUGW/0yOdfMrmz7ltIr1YXQ+yh4sxv 0E1H9LuH9iPGmXipO6anLXKuCOPcoFsdoWuWHYT7BvgflIo6yBl/4gGWVE0vGmsfRjkz Rh8912YnsP1DaMldu8zjDvPL78ONI8livRfTJObLi4HkbOKsePYgEXUTLavWFu4Puvr8 0eYA== X-Gm-Message-State: AJcUukeNsBDxW5v0QvopR0Ht9dSlJGS3wtIFlhAa4HJa4zHOXPzElWTF BEh9MUJ9vIreHEsbu3NNfx8NwVnP X-Google-Smtp-Source: ALg8bN4isKQ88kGNCWSn9YxMlqhfyMZkBWoo0Ej2mhMBsB1qgzSerCCNFUMXiP618dy4Eim3boIkew== X-Received: by 2002:a62:59c9:: with SMTP id k70mr16460276pfj.243.1547759670742; Thu, 17 Jan 2019 13:14:30 -0800 (PST) Received: from localhost ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id z9sm8453651pfd.99.2019.01.17.13.14.29 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Jan 2019 13:14:30 -0800 (PST) From: Guenter Roeck To: Hardware Monitoring Cc: Jean Delvare , Guenter Roeck Subject: [PATCH 22/29] hwmon: (lm92) Use permission specific SENSOR[_DEVICE]_ATTR variants Date: Thu, 17 Jan 2019 13:13:42 -0800 Message-Id: <1547759629-23007-23-git-send-email-linux@roeck-us.net> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1547759629-23007-1-git-send-email-linux@roeck-us.net> References: <1547759629-23007-1-git-send-email-linux@roeck-us.net> Sender: linux-hwmon-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-hwmon@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Use SENSOR[_DEVICE]_ATTR[_2]_{RO,RW,WO} to simplify the source code, to improve readbility, and to reduce the chance of inconsistencies. Also replace any remaining S_ in the driver with octal values. The conversion was done automatically with coccinelle. The semantic patches and the scripts used to generate this commit log are available at https://github.com/groeck/coccinelle-patches/hwmon/. This patch does not introduce functional changes. It was verified by compiling the old and new files and comparing text and data sizes. Signed-off-by: Guenter Roeck --- drivers/hwmon/lm92.c | 39 ++++++++++++++++++--------------------- 1 file changed, 18 insertions(+), 21 deletions(-) diff --git a/drivers/hwmon/lm92.c b/drivers/hwmon/lm92.c index e7333f8e185c..39d8afe4279a 100644 --- a/drivers/hwmon/lm92.c +++ b/drivers/hwmon/lm92.c @@ -143,7 +143,7 @@ static struct lm92_data *lm92_update_device(struct device *dev) return data; } -static ssize_t show_temp(struct device *dev, struct device_attribute *devattr, +static ssize_t temp_show(struct device *dev, struct device_attribute *devattr, char *buf) { struct sensor_device_attribute *attr = to_sensor_dev_attr(devattr); @@ -152,8 +152,9 @@ static ssize_t show_temp(struct device *dev, struct device_attribute *devattr, return sprintf(buf, "%d\n", TEMP_FROM_REG(data->temp[attr->index])); } -static ssize_t set_temp(struct device *dev, struct device_attribute *devattr, - const char *buf, size_t count) +static ssize_t temp_store(struct device *dev, + struct device_attribute *devattr, const char *buf, + size_t count) { struct sensor_device_attribute *attr = to_sensor_dev_attr(devattr); struct lm92_data *data = dev_get_drvdata(dev); @@ -173,7 +174,7 @@ static ssize_t set_temp(struct device *dev, struct device_attribute *devattr, return count; } -static ssize_t show_temp_hyst(struct device *dev, +static ssize_t temp_hyst_show(struct device *dev, struct device_attribute *devattr, char *buf) { struct sensor_device_attribute *attr = to_sensor_dev_attr(devattr); @@ -192,9 +193,9 @@ static ssize_t temp1_min_hyst_show(struct device *dev, + TEMP_FROM_REG(data->temp[t_hyst])); } -static ssize_t set_temp_hyst(struct device *dev, - struct device_attribute *devattr, - const char *buf, size_t count) +static ssize_t temp_hyst_store(struct device *dev, + struct device_attribute *devattr, + const char *buf, size_t count) { struct sensor_device_attribute *attr = to_sensor_dev_attr(devattr); struct lm92_data *data = dev_get_drvdata(dev); @@ -224,7 +225,7 @@ static ssize_t alarms_show(struct device *dev, struct device_attribute *attr, return sprintf(buf, "%d\n", ALARMS_FROM_REG(data->temp[t_input])); } -static ssize_t show_alarm(struct device *dev, struct device_attribute *attr, +static ssize_t alarm_show(struct device *dev, struct device_attribute *attr, char *buf) { int bitnr = to_sensor_dev_attr(attr)->index; @@ -232,21 +233,17 @@ static ssize_t show_alarm(struct device *dev, struct device_attribute *attr, return sprintf(buf, "%d\n", (data->temp[t_input] >> bitnr) & 1); } -static SENSOR_DEVICE_ATTR(temp1_input, S_IRUGO, show_temp, NULL, t_input); -static SENSOR_DEVICE_ATTR(temp1_crit, S_IWUSR | S_IRUGO, show_temp, set_temp, - t_crit); -static SENSOR_DEVICE_ATTR(temp1_crit_hyst, S_IWUSR | S_IRUGO, show_temp_hyst, - set_temp_hyst, t_crit); -static SENSOR_DEVICE_ATTR(temp1_min, S_IWUSR | S_IRUGO, show_temp, set_temp, - t_min); +static SENSOR_DEVICE_ATTR_RO(temp1_input, temp, t_input); +static SENSOR_DEVICE_ATTR_RW(temp1_crit, temp, t_crit); +static SENSOR_DEVICE_ATTR_RW(temp1_crit_hyst, temp_hyst, t_crit); +static SENSOR_DEVICE_ATTR_RW(temp1_min, temp, t_min); static DEVICE_ATTR_RO(temp1_min_hyst); -static SENSOR_DEVICE_ATTR(temp1_max, S_IWUSR | S_IRUGO, show_temp, set_temp, - t_max); -static SENSOR_DEVICE_ATTR(temp1_max_hyst, S_IRUGO, show_temp_hyst, NULL, t_max); +static SENSOR_DEVICE_ATTR_RW(temp1_max, temp, t_max); +static SENSOR_DEVICE_ATTR_RO(temp1_max_hyst, temp_hyst, t_max); static DEVICE_ATTR_RO(alarms); -static SENSOR_DEVICE_ATTR(temp1_crit_alarm, S_IRUGO, show_alarm, NULL, 2); -static SENSOR_DEVICE_ATTR(temp1_min_alarm, S_IRUGO, show_alarm, NULL, 0); -static SENSOR_DEVICE_ATTR(temp1_max_alarm, S_IRUGO, show_alarm, NULL, 1); +static SENSOR_DEVICE_ATTR_RO(temp1_crit_alarm, alarm, 2); +static SENSOR_DEVICE_ATTR_RO(temp1_min_alarm, alarm, 0); +static SENSOR_DEVICE_ATTR_RO(temp1_max_alarm, alarm, 1); /* * Detection and registration From patchwork Thu Jan 17 21:13:43 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Guenter Roeck X-Patchwork-Id: 10769133 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 8D7DF6C2 for ; Thu, 17 Jan 2019 21:14:39 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 7ACEA2A7A7 for ; Thu, 17 Jan 2019 21:14:39 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 6F2472A7BD; Thu, 17 Jan 2019 21:14:39 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 084E42A7A7 for ; Thu, 17 Jan 2019 21:14:37 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728664AbfAQVOg (ORCPT ); Thu, 17 Jan 2019 16:14:36 -0500 Received: from mail-pg1-f193.google.com ([209.85.215.193]:46611 "EHLO mail-pg1-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728247AbfAQVOg (ORCPT ); Thu, 17 Jan 2019 16:14:36 -0500 Received: by mail-pg1-f193.google.com with SMTP id w7so4968189pgp.13 for ; Thu, 17 Jan 2019 13:14:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=4oN4DfCbyOJBgronYPm2NRTFxa/eOSg3PS7u4j0k/D4=; b=m7R7rJmhq2ahsCc4cJD3yui3q3s2TmKTxNrej3KlKv5mUe/7OsxnjjliPcwvPF0WC6 P01pevvBGDF7mAjmlTLdDaBi57FKXZpWMd6G2Gk5w4n3OKnhaC8ffdcl3MWSpPH6LcnQ BOz+R/ck8s58mhHx14i6uZ4E+37qVNXDwx1zfTDkOWrRjitLw8ftHGgraKJNmBApE/5W aHGfOcStykKS57ag0nf/zH+c+eeEMLg4KAhIIDHj9R6+6wv4X5YBGfMvruYL0Gs5EhwP QaSruRlS8Qc0lmby0BpP9T+iH4WSn2xEABXztOhWhDtreP/q8pdtNdrhkemPJXH66tZB 6laA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=4oN4DfCbyOJBgronYPm2NRTFxa/eOSg3PS7u4j0k/D4=; b=p2lLmbDu6GmD7puFS3YXg0H8YbWZKwwc3qxQwtiunyZQ91Qxri3L47V4aItsIKqIiR nczXyxdDYypLdlsJzfHuieeaNixSnCBAeati4zkDBwIFKnJnRmwuOsWbL3Oem+ex06FP See64aDGo2Wgd5SJYU/ga2ZYuHBY8FiuQoMZIjmkthOL6gHMKM0p+CnsEfaOkfIcwoHv TDINpN190rqr4KQssOQG0WFICTZTDoOdz4yCfxQ0+sigABOm82YWRCEumhzD33FlBG+/ 0RvYIx14C69moSnY6Cn69QsKrtERopcdi+LIEEoJi/ongftf22MUzGvQJMPIawf2KNcY eU4w== X-Gm-Message-State: AJcUukfdhlZetx8frV5TO91KfA9tEFp3N5M05SENBZxeXnVxrct4ou0g gQR+19JmFO+ZoEyCYgYmOLL6K2EH X-Google-Smtp-Source: ALg8bN7bQ1dfov1RumWiLqL9j9Ej+pyt8wAkfQKq9MbPDu8ymjAsKbwIrsylTKmnIvtYXRASY5MufQ== X-Received: by 2002:a62:60c5:: with SMTP id u188mr16592084pfb.4.1547759672765; Thu, 17 Jan 2019 13:14:32 -0800 (PST) Received: from localhost ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id e123sm3553056pgc.58.2019.01.17.13.14.31 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Jan 2019 13:14:31 -0800 (PST) From: Guenter Roeck To: Hardware Monitoring Cc: Jean Delvare , Guenter Roeck Subject: [PATCH 23/29] hwmon: (lm93) Use permission specific SENSOR[_DEVICE]_ATTR variants Date: Thu, 17 Jan 2019 13:13:43 -0800 Message-Id: <1547759629-23007-24-git-send-email-linux@roeck-us.net> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1547759629-23007-1-git-send-email-linux@roeck-us.net> References: <1547759629-23007-1-git-send-email-linux@roeck-us.net> Sender: linux-hwmon-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-hwmon@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Use SENSOR[_DEVICE]_ATTR[_2]_{RO,RW,WO} to simplify the source code, to improve readbility, and to reduce the chance of inconsistencies. Also replace any remaining S_ in the driver with octal values. The conversion was done automatically with coccinelle. The semantic patches and the scripts used to generate this commit log are available at https://github.com/groeck/coccinelle-patches/hwmon/. This patch does not introduce functional changes. It was verified by compiling the old and new files and comparing text and data sizes. Signed-off-by: Guenter Roeck --- drivers/hwmon/lm93.c | 630 +++++++++++++++++++++------------------------------ 1 file changed, 256 insertions(+), 374 deletions(-) diff --git a/drivers/hwmon/lm93.c b/drivers/hwmon/lm93.c index 77a0a83399b3..a0b5fbf958f3 100644 --- a/drivers/hwmon/lm93.c +++ b/drivers/hwmon/lm93.c @@ -1111,8 +1111,8 @@ static void lm93_update_client_min(struct lm93_data *data, } /* following are the sysfs callback functions */ -static ssize_t show_in(struct device *dev, struct device_attribute *attr, - char *buf) +static ssize_t in_show(struct device *dev, struct device_attribute *attr, + char *buf) { int nr = (to_sensor_dev_attr(attr))->index; @@ -1120,25 +1120,25 @@ static ssize_t show_in(struct device *dev, struct device_attribute *attr, return sprintf(buf, "%d\n", LM93_IN_FROM_REG(nr, data->block3[nr])); } -static SENSOR_DEVICE_ATTR(in1_input, S_IRUGO, show_in, NULL, 0); -static SENSOR_DEVICE_ATTR(in2_input, S_IRUGO, show_in, NULL, 1); -static SENSOR_DEVICE_ATTR(in3_input, S_IRUGO, show_in, NULL, 2); -static SENSOR_DEVICE_ATTR(in4_input, S_IRUGO, show_in, NULL, 3); -static SENSOR_DEVICE_ATTR(in5_input, S_IRUGO, show_in, NULL, 4); -static SENSOR_DEVICE_ATTR(in6_input, S_IRUGO, show_in, NULL, 5); -static SENSOR_DEVICE_ATTR(in7_input, S_IRUGO, show_in, NULL, 6); -static SENSOR_DEVICE_ATTR(in8_input, S_IRUGO, show_in, NULL, 7); -static SENSOR_DEVICE_ATTR(in9_input, S_IRUGO, show_in, NULL, 8); -static SENSOR_DEVICE_ATTR(in10_input, S_IRUGO, show_in, NULL, 9); -static SENSOR_DEVICE_ATTR(in11_input, S_IRUGO, show_in, NULL, 10); -static SENSOR_DEVICE_ATTR(in12_input, S_IRUGO, show_in, NULL, 11); -static SENSOR_DEVICE_ATTR(in13_input, S_IRUGO, show_in, NULL, 12); -static SENSOR_DEVICE_ATTR(in14_input, S_IRUGO, show_in, NULL, 13); -static SENSOR_DEVICE_ATTR(in15_input, S_IRUGO, show_in, NULL, 14); -static SENSOR_DEVICE_ATTR(in16_input, S_IRUGO, show_in, NULL, 15); - -static ssize_t show_in_min(struct device *dev, - struct device_attribute *attr, char *buf) +static SENSOR_DEVICE_ATTR_RO(in1_input, in, 0); +static SENSOR_DEVICE_ATTR_RO(in2_input, in, 1); +static SENSOR_DEVICE_ATTR_RO(in3_input, in, 2); +static SENSOR_DEVICE_ATTR_RO(in4_input, in, 3); +static SENSOR_DEVICE_ATTR_RO(in5_input, in, 4); +static SENSOR_DEVICE_ATTR_RO(in6_input, in, 5); +static SENSOR_DEVICE_ATTR_RO(in7_input, in, 6); +static SENSOR_DEVICE_ATTR_RO(in8_input, in, 7); +static SENSOR_DEVICE_ATTR_RO(in9_input, in, 8); +static SENSOR_DEVICE_ATTR_RO(in10_input, in, 9); +static SENSOR_DEVICE_ATTR_RO(in11_input, in, 10); +static SENSOR_DEVICE_ATTR_RO(in12_input, in, 11); +static SENSOR_DEVICE_ATTR_RO(in13_input, in, 12); +static SENSOR_DEVICE_ATTR_RO(in14_input, in, 13); +static SENSOR_DEVICE_ATTR_RO(in15_input, in, 14); +static SENSOR_DEVICE_ATTR_RO(in16_input, in, 15); + +static ssize_t in_min_show(struct device *dev, struct device_attribute *attr, + char *buf) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = lm93_update_device(dev); @@ -1154,7 +1154,7 @@ static ssize_t show_in_min(struct device *dev, return sprintf(buf, "%ld\n", rc); } -static ssize_t store_in_min(struct device *dev, struct device_attribute *attr, +static ssize_t in_min_store(struct device *dev, struct device_attribute *attr, const char *buf, size_t count) { int nr = (to_sensor_dev_attr(attr))->index; @@ -1185,41 +1185,25 @@ static ssize_t store_in_min(struct device *dev, struct device_attribute *attr, return count; } -static SENSOR_DEVICE_ATTR(in1_min, S_IWUSR | S_IRUGO, - show_in_min, store_in_min, 0); -static SENSOR_DEVICE_ATTR(in2_min, S_IWUSR | S_IRUGO, - show_in_min, store_in_min, 1); -static SENSOR_DEVICE_ATTR(in3_min, S_IWUSR | S_IRUGO, - show_in_min, store_in_min, 2); -static SENSOR_DEVICE_ATTR(in4_min, S_IWUSR | S_IRUGO, - show_in_min, store_in_min, 3); -static SENSOR_DEVICE_ATTR(in5_min, S_IWUSR | S_IRUGO, - show_in_min, store_in_min, 4); -static SENSOR_DEVICE_ATTR(in6_min, S_IWUSR | S_IRUGO, - show_in_min, store_in_min, 5); -static SENSOR_DEVICE_ATTR(in7_min, S_IWUSR | S_IRUGO, - show_in_min, store_in_min, 6); -static SENSOR_DEVICE_ATTR(in8_min, S_IWUSR | S_IRUGO, - show_in_min, store_in_min, 7); -static SENSOR_DEVICE_ATTR(in9_min, S_IWUSR | S_IRUGO, - show_in_min, store_in_min, 8); -static SENSOR_DEVICE_ATTR(in10_min, S_IWUSR | S_IRUGO, - show_in_min, store_in_min, 9); -static SENSOR_DEVICE_ATTR(in11_min, S_IWUSR | S_IRUGO, - show_in_min, store_in_min, 10); -static SENSOR_DEVICE_ATTR(in12_min, S_IWUSR | S_IRUGO, - show_in_min, store_in_min, 11); -static SENSOR_DEVICE_ATTR(in13_min, S_IWUSR | S_IRUGO, - show_in_min, store_in_min, 12); -static SENSOR_DEVICE_ATTR(in14_min, S_IWUSR | S_IRUGO, - show_in_min, store_in_min, 13); -static SENSOR_DEVICE_ATTR(in15_min, S_IWUSR | S_IRUGO, - show_in_min, store_in_min, 14); -static SENSOR_DEVICE_ATTR(in16_min, S_IWUSR | S_IRUGO, - show_in_min, store_in_min, 15); - -static ssize_t show_in_max(struct device *dev, - struct device_attribute *attr, char *buf) +static SENSOR_DEVICE_ATTR_RW(in1_min, in_min, 0); +static SENSOR_DEVICE_ATTR_RW(in2_min, in_min, 1); +static SENSOR_DEVICE_ATTR_RW(in3_min, in_min, 2); +static SENSOR_DEVICE_ATTR_RW(in4_min, in_min, 3); +static SENSOR_DEVICE_ATTR_RW(in5_min, in_min, 4); +static SENSOR_DEVICE_ATTR_RW(in6_min, in_min, 5); +static SENSOR_DEVICE_ATTR_RW(in7_min, in_min, 6); +static SENSOR_DEVICE_ATTR_RW(in8_min, in_min, 7); +static SENSOR_DEVICE_ATTR_RW(in9_min, in_min, 8); +static SENSOR_DEVICE_ATTR_RW(in10_min, in_min, 9); +static SENSOR_DEVICE_ATTR_RW(in11_min, in_min, 10); +static SENSOR_DEVICE_ATTR_RW(in12_min, in_min, 11); +static SENSOR_DEVICE_ATTR_RW(in13_min, in_min, 12); +static SENSOR_DEVICE_ATTR_RW(in14_min, in_min, 13); +static SENSOR_DEVICE_ATTR_RW(in15_min, in_min, 14); +static SENSOR_DEVICE_ATTR_RW(in16_min, in_min, 15); + +static ssize_t in_max_show(struct device *dev, struct device_attribute *attr, + char *buf) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = lm93_update_device(dev); @@ -1235,7 +1219,7 @@ static ssize_t show_in_max(struct device *dev, return sprintf(buf, "%ld\n", rc); } -static ssize_t store_in_max(struct device *dev, struct device_attribute *attr, +static ssize_t in_max_store(struct device *dev, struct device_attribute *attr, const char *buf, size_t count) { int nr = (to_sensor_dev_attr(attr))->index; @@ -1266,61 +1250,46 @@ static ssize_t store_in_max(struct device *dev, struct device_attribute *attr, return count; } -static SENSOR_DEVICE_ATTR(in1_max, S_IWUSR | S_IRUGO, - show_in_max, store_in_max, 0); -static SENSOR_DEVICE_ATTR(in2_max, S_IWUSR | S_IRUGO, - show_in_max, store_in_max, 1); -static SENSOR_DEVICE_ATTR(in3_max, S_IWUSR | S_IRUGO, - show_in_max, store_in_max, 2); -static SENSOR_DEVICE_ATTR(in4_max, S_IWUSR | S_IRUGO, - show_in_max, store_in_max, 3); -static SENSOR_DEVICE_ATTR(in5_max, S_IWUSR | S_IRUGO, - show_in_max, store_in_max, 4); -static SENSOR_DEVICE_ATTR(in6_max, S_IWUSR | S_IRUGO, - show_in_max, store_in_max, 5); -static SENSOR_DEVICE_ATTR(in7_max, S_IWUSR | S_IRUGO, - show_in_max, store_in_max, 6); -static SENSOR_DEVICE_ATTR(in8_max, S_IWUSR | S_IRUGO, - show_in_max, store_in_max, 7); -static SENSOR_DEVICE_ATTR(in9_max, S_IWUSR | S_IRUGO, - show_in_max, store_in_max, 8); -static SENSOR_DEVICE_ATTR(in10_max, S_IWUSR | S_IRUGO, - show_in_max, store_in_max, 9); -static SENSOR_DEVICE_ATTR(in11_max, S_IWUSR | S_IRUGO, - show_in_max, store_in_max, 10); -static SENSOR_DEVICE_ATTR(in12_max, S_IWUSR | S_IRUGO, - show_in_max, store_in_max, 11); -static SENSOR_DEVICE_ATTR(in13_max, S_IWUSR | S_IRUGO, - show_in_max, store_in_max, 12); -static SENSOR_DEVICE_ATTR(in14_max, S_IWUSR | S_IRUGO, - show_in_max, store_in_max, 13); -static SENSOR_DEVICE_ATTR(in15_max, S_IWUSR | S_IRUGO, - show_in_max, store_in_max, 14); -static SENSOR_DEVICE_ATTR(in16_max, S_IWUSR | S_IRUGO, - show_in_max, store_in_max, 15); - -static ssize_t show_temp(struct device *dev, - struct device_attribute *attr, char *buf) +static SENSOR_DEVICE_ATTR_RW(in1_max, in_max, 0); +static SENSOR_DEVICE_ATTR_RW(in2_max, in_max, 1); +static SENSOR_DEVICE_ATTR_RW(in3_max, in_max, 2); +static SENSOR_DEVICE_ATTR_RW(in4_max, in_max, 3); +static SENSOR_DEVICE_ATTR_RW(in5_max, in_max, 4); +static SENSOR_DEVICE_ATTR_RW(in6_max, in_max, 5); +static SENSOR_DEVICE_ATTR_RW(in7_max, in_max, 6); +static SENSOR_DEVICE_ATTR_RW(in8_max, in_max, 7); +static SENSOR_DEVICE_ATTR_RW(in9_max, in_max, 8); +static SENSOR_DEVICE_ATTR_RW(in10_max, in_max, 9); +static SENSOR_DEVICE_ATTR_RW(in11_max, in_max, 10); +static SENSOR_DEVICE_ATTR_RW(in12_max, in_max, 11); +static SENSOR_DEVICE_ATTR_RW(in13_max, in_max, 12); +static SENSOR_DEVICE_ATTR_RW(in14_max, in_max, 13); +static SENSOR_DEVICE_ATTR_RW(in15_max, in_max, 14); +static SENSOR_DEVICE_ATTR_RW(in16_max, in_max, 15); + +static ssize_t temp_show(struct device *dev, struct device_attribute *attr, + char *buf) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = lm93_update_device(dev); return sprintf(buf, "%d\n", LM93_TEMP_FROM_REG(data->block2[nr])); } -static SENSOR_DEVICE_ATTR(temp1_input, S_IRUGO, show_temp, NULL, 0); -static SENSOR_DEVICE_ATTR(temp2_input, S_IRUGO, show_temp, NULL, 1); -static SENSOR_DEVICE_ATTR(temp3_input, S_IRUGO, show_temp, NULL, 2); +static SENSOR_DEVICE_ATTR_RO(temp1_input, temp, 0); +static SENSOR_DEVICE_ATTR_RO(temp2_input, temp, 1); +static SENSOR_DEVICE_ATTR_RO(temp3_input, temp, 2); -static ssize_t show_temp_min(struct device *dev, - struct device_attribute *attr, char *buf) +static ssize_t temp_min_show(struct device *dev, + struct device_attribute *attr, char *buf) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = lm93_update_device(dev); return sprintf(buf, "%d\n", LM93_TEMP_FROM_REG(data->temp_lim[nr].min)); } -static ssize_t store_temp_min(struct device *dev, struct device_attribute *attr, - const char *buf, size_t count) +static ssize_t temp_min_store(struct device *dev, + struct device_attribute *attr, const char *buf, + size_t count) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = dev_get_drvdata(dev); @@ -1339,14 +1308,11 @@ static ssize_t store_temp_min(struct device *dev, struct device_attribute *attr, return count; } -static SENSOR_DEVICE_ATTR(temp1_min, S_IWUSR | S_IRUGO, - show_temp_min, store_temp_min, 0); -static SENSOR_DEVICE_ATTR(temp2_min, S_IWUSR | S_IRUGO, - show_temp_min, store_temp_min, 1); -static SENSOR_DEVICE_ATTR(temp3_min, S_IWUSR | S_IRUGO, - show_temp_min, store_temp_min, 2); +static SENSOR_DEVICE_ATTR_RW(temp1_min, temp_min, 0); +static SENSOR_DEVICE_ATTR_RW(temp2_min, temp_min, 1); +static SENSOR_DEVICE_ATTR_RW(temp3_min, temp_min, 2); -static ssize_t show_temp_max(struct device *dev, +static ssize_t temp_max_show(struct device *dev, struct device_attribute *attr, char *buf) { int nr = (to_sensor_dev_attr(attr))->index; @@ -1354,8 +1320,9 @@ static ssize_t show_temp_max(struct device *dev, return sprintf(buf, "%d\n", LM93_TEMP_FROM_REG(data->temp_lim[nr].max)); } -static ssize_t store_temp_max(struct device *dev, struct device_attribute *attr, - const char *buf, size_t count) +static ssize_t temp_max_store(struct device *dev, + struct device_attribute *attr, const char *buf, + size_t count) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = dev_get_drvdata(dev); @@ -1374,24 +1341,21 @@ static ssize_t store_temp_max(struct device *dev, struct device_attribute *attr, return count; } -static SENSOR_DEVICE_ATTR(temp1_max, S_IWUSR | S_IRUGO, - show_temp_max, store_temp_max, 0); -static SENSOR_DEVICE_ATTR(temp2_max, S_IWUSR | S_IRUGO, - show_temp_max, store_temp_max, 1); -static SENSOR_DEVICE_ATTR(temp3_max, S_IWUSR | S_IRUGO, - show_temp_max, store_temp_max, 2); +static SENSOR_DEVICE_ATTR_RW(temp1_max, temp_max, 0); +static SENSOR_DEVICE_ATTR_RW(temp2_max, temp_max, 1); +static SENSOR_DEVICE_ATTR_RW(temp3_max, temp_max, 2); -static ssize_t show_temp_auto_base(struct device *dev, - struct device_attribute *attr, char *buf) +static ssize_t temp_auto_base_show(struct device *dev, + struct device_attribute *attr, char *buf) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = lm93_update_device(dev); return sprintf(buf, "%d\n", LM93_TEMP_FROM_REG(data->block10.base[nr])); } -static ssize_t store_temp_auto_base(struct device *dev, - struct device_attribute *attr, - const char *buf, size_t count) +static ssize_t temp_auto_base_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t count) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = dev_get_drvdata(dev); @@ -1410,14 +1374,11 @@ static ssize_t store_temp_auto_base(struct device *dev, return count; } -static SENSOR_DEVICE_ATTR(temp1_auto_base, S_IWUSR | S_IRUGO, - show_temp_auto_base, store_temp_auto_base, 0); -static SENSOR_DEVICE_ATTR(temp2_auto_base, S_IWUSR | S_IRUGO, - show_temp_auto_base, store_temp_auto_base, 1); -static SENSOR_DEVICE_ATTR(temp3_auto_base, S_IWUSR | S_IRUGO, - show_temp_auto_base, store_temp_auto_base, 2); +static SENSOR_DEVICE_ATTR_RW(temp1_auto_base, temp_auto_base, 0); +static SENSOR_DEVICE_ATTR_RW(temp2_auto_base, temp_auto_base, 1); +static SENSOR_DEVICE_ATTR_RW(temp3_auto_base, temp_auto_base, 2); -static ssize_t show_temp_auto_boost(struct device *dev, +static ssize_t temp_auto_boost_show(struct device *dev, struct device_attribute *attr, char *buf) { int nr = (to_sensor_dev_attr(attr))->index; @@ -1425,7 +1386,7 @@ static ssize_t show_temp_auto_boost(struct device *dev, return sprintf(buf, "%d\n", LM93_TEMP_FROM_REG(data->boost[nr])); } -static ssize_t store_temp_auto_boost(struct device *dev, +static ssize_t temp_auto_boost_store(struct device *dev, struct device_attribute *attr, const char *buf, size_t count) { @@ -1446,14 +1407,11 @@ static ssize_t store_temp_auto_boost(struct device *dev, return count; } -static SENSOR_DEVICE_ATTR(temp1_auto_boost, S_IWUSR | S_IRUGO, - show_temp_auto_boost, store_temp_auto_boost, 0); -static SENSOR_DEVICE_ATTR(temp2_auto_boost, S_IWUSR | S_IRUGO, - show_temp_auto_boost, store_temp_auto_boost, 1); -static SENSOR_DEVICE_ATTR(temp3_auto_boost, S_IWUSR | S_IRUGO, - show_temp_auto_boost, store_temp_auto_boost, 2); +static SENSOR_DEVICE_ATTR_RW(temp1_auto_boost, temp_auto_boost, 0); +static SENSOR_DEVICE_ATTR_RW(temp2_auto_boost, temp_auto_boost, 1); +static SENSOR_DEVICE_ATTR_RW(temp3_auto_boost, temp_auto_boost, 2); -static ssize_t show_temp_auto_boost_hyst(struct device *dev, +static ssize_t temp_auto_boost_hyst_show(struct device *dev, struct device_attribute *attr, char *buf) { @@ -1464,7 +1422,7 @@ static ssize_t show_temp_auto_boost_hyst(struct device *dev, LM93_AUTO_BOOST_HYST_FROM_REGS(data, nr, mode)); } -static ssize_t store_temp_auto_boost_hyst(struct device *dev, +static ssize_t temp_auto_boost_hyst_store(struct device *dev, struct device_attribute *attr, const char *buf, size_t count) { @@ -1490,18 +1448,12 @@ static ssize_t store_temp_auto_boost_hyst(struct device *dev, return count; } -static SENSOR_DEVICE_ATTR(temp1_auto_boost_hyst, S_IWUSR | S_IRUGO, - show_temp_auto_boost_hyst, - store_temp_auto_boost_hyst, 0); -static SENSOR_DEVICE_ATTR(temp2_auto_boost_hyst, S_IWUSR | S_IRUGO, - show_temp_auto_boost_hyst, - store_temp_auto_boost_hyst, 1); -static SENSOR_DEVICE_ATTR(temp3_auto_boost_hyst, S_IWUSR | S_IRUGO, - show_temp_auto_boost_hyst, - store_temp_auto_boost_hyst, 2); +static SENSOR_DEVICE_ATTR_RW(temp1_auto_boost_hyst, temp_auto_boost_hyst, 0); +static SENSOR_DEVICE_ATTR_RW(temp2_auto_boost_hyst, temp_auto_boost_hyst, 1); +static SENSOR_DEVICE_ATTR_RW(temp3_auto_boost_hyst, temp_auto_boost_hyst, 2); -static ssize_t show_temp_auto_offset(struct device *dev, - struct device_attribute *attr, char *buf) +static ssize_t temp_auto_offset_show(struct device *dev, + struct device_attribute *attr, char *buf) { struct sensor_device_attribute_2 *s_attr = to_sensor_dev_attr_2(attr); int nr = s_attr->index; @@ -1513,9 +1465,9 @@ static ssize_t show_temp_auto_offset(struct device *dev, nr, mode)); } -static ssize_t store_temp_auto_offset(struct device *dev, - struct device_attribute *attr, - const char *buf, size_t count) +static ssize_t temp_auto_offset_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t count) { struct sensor_device_attribute_2 *s_attr = to_sensor_dev_attr_2(attr); int nr = s_attr->index; @@ -1542,81 +1494,46 @@ static ssize_t store_temp_auto_offset(struct device *dev, return count; } -static SENSOR_DEVICE_ATTR_2(temp1_auto_offset1, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 0, 0); -static SENSOR_DEVICE_ATTR_2(temp1_auto_offset2, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 1, 0); -static SENSOR_DEVICE_ATTR_2(temp1_auto_offset3, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 2, 0); -static SENSOR_DEVICE_ATTR_2(temp1_auto_offset4, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 3, 0); -static SENSOR_DEVICE_ATTR_2(temp1_auto_offset5, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 4, 0); -static SENSOR_DEVICE_ATTR_2(temp1_auto_offset6, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 5, 0); -static SENSOR_DEVICE_ATTR_2(temp1_auto_offset7, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 6, 0); -static SENSOR_DEVICE_ATTR_2(temp1_auto_offset8, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 7, 0); -static SENSOR_DEVICE_ATTR_2(temp1_auto_offset9, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 8, 0); -static SENSOR_DEVICE_ATTR_2(temp1_auto_offset10, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 9, 0); -static SENSOR_DEVICE_ATTR_2(temp1_auto_offset11, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 10, 0); -static SENSOR_DEVICE_ATTR_2(temp1_auto_offset12, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 11, 0); -static SENSOR_DEVICE_ATTR_2(temp2_auto_offset1, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 0, 1); -static SENSOR_DEVICE_ATTR_2(temp2_auto_offset2, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 1, 1); -static SENSOR_DEVICE_ATTR_2(temp2_auto_offset3, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 2, 1); -static SENSOR_DEVICE_ATTR_2(temp2_auto_offset4, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 3, 1); -static SENSOR_DEVICE_ATTR_2(temp2_auto_offset5, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 4, 1); -static SENSOR_DEVICE_ATTR_2(temp2_auto_offset6, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 5, 1); -static SENSOR_DEVICE_ATTR_2(temp2_auto_offset7, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 6, 1); -static SENSOR_DEVICE_ATTR_2(temp2_auto_offset8, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 7, 1); -static SENSOR_DEVICE_ATTR_2(temp2_auto_offset9, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 8, 1); -static SENSOR_DEVICE_ATTR_2(temp2_auto_offset10, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 9, 1); -static SENSOR_DEVICE_ATTR_2(temp2_auto_offset11, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 10, 1); -static SENSOR_DEVICE_ATTR_2(temp2_auto_offset12, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 11, 1); -static SENSOR_DEVICE_ATTR_2(temp3_auto_offset1, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 0, 2); -static SENSOR_DEVICE_ATTR_2(temp3_auto_offset2, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 1, 2); -static SENSOR_DEVICE_ATTR_2(temp3_auto_offset3, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 2, 2); -static SENSOR_DEVICE_ATTR_2(temp3_auto_offset4, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 3, 2); -static SENSOR_DEVICE_ATTR_2(temp3_auto_offset5, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 4, 2); -static SENSOR_DEVICE_ATTR_2(temp3_auto_offset6, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 5, 2); -static SENSOR_DEVICE_ATTR_2(temp3_auto_offset7, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 6, 2); -static SENSOR_DEVICE_ATTR_2(temp3_auto_offset8, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 7, 2); -static SENSOR_DEVICE_ATTR_2(temp3_auto_offset9, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 8, 2); -static SENSOR_DEVICE_ATTR_2(temp3_auto_offset10, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 9, 2); -static SENSOR_DEVICE_ATTR_2(temp3_auto_offset11, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 10, 2); -static SENSOR_DEVICE_ATTR_2(temp3_auto_offset12, S_IWUSR | S_IRUGO, - show_temp_auto_offset, store_temp_auto_offset, 11, 2); - -static ssize_t show_temp_auto_pwm_min(struct device *dev, - struct device_attribute *attr, char *buf) +static SENSOR_DEVICE_ATTR_2_RW(temp1_auto_offset1, temp_auto_offset, 0, 0); +static SENSOR_DEVICE_ATTR_2_RW(temp1_auto_offset2, temp_auto_offset, 1, 0); +static SENSOR_DEVICE_ATTR_2_RW(temp1_auto_offset3, temp_auto_offset, 2, 0); +static SENSOR_DEVICE_ATTR_2_RW(temp1_auto_offset4, temp_auto_offset, 3, 0); +static SENSOR_DEVICE_ATTR_2_RW(temp1_auto_offset5, temp_auto_offset, 4, 0); +static SENSOR_DEVICE_ATTR_2_RW(temp1_auto_offset6, temp_auto_offset, 5, 0); +static SENSOR_DEVICE_ATTR_2_RW(temp1_auto_offset7, temp_auto_offset, 6, 0); +static SENSOR_DEVICE_ATTR_2_RW(temp1_auto_offset8, temp_auto_offset, 7, 0); +static SENSOR_DEVICE_ATTR_2_RW(temp1_auto_offset9, temp_auto_offset, 8, 0); +static SENSOR_DEVICE_ATTR_2_RW(temp1_auto_offset10, temp_auto_offset, 9, 0); +static SENSOR_DEVICE_ATTR_2_RW(temp1_auto_offset11, temp_auto_offset, 10, 0); +static SENSOR_DEVICE_ATTR_2_RW(temp1_auto_offset12, temp_auto_offset, 11, 0); +static SENSOR_DEVICE_ATTR_2_RW(temp2_auto_offset1, temp_auto_offset, 0, 1); +static SENSOR_DEVICE_ATTR_2_RW(temp2_auto_offset2, temp_auto_offset, 1, 1); +static SENSOR_DEVICE_ATTR_2_RW(temp2_auto_offset3, temp_auto_offset, 2, 1); +static SENSOR_DEVICE_ATTR_2_RW(temp2_auto_offset4, temp_auto_offset, 3, 1); +static SENSOR_DEVICE_ATTR_2_RW(temp2_auto_offset5, temp_auto_offset, 4, 1); +static SENSOR_DEVICE_ATTR_2_RW(temp2_auto_offset6, temp_auto_offset, 5, 1); +static SENSOR_DEVICE_ATTR_2_RW(temp2_auto_offset7, temp_auto_offset, 6, 1); +static SENSOR_DEVICE_ATTR_2_RW(temp2_auto_offset8, temp_auto_offset, 7, 1); +static SENSOR_DEVICE_ATTR_2_RW(temp2_auto_offset9, temp_auto_offset, 8, 1); +static SENSOR_DEVICE_ATTR_2_RW(temp2_auto_offset10, temp_auto_offset, 9, 1); +static SENSOR_DEVICE_ATTR_2_RW(temp2_auto_offset11, temp_auto_offset, 10, 1); +static SENSOR_DEVICE_ATTR_2_RW(temp2_auto_offset12, temp_auto_offset, 11, 1); +static SENSOR_DEVICE_ATTR_2_RW(temp3_auto_offset1, temp_auto_offset, 0, 2); +static SENSOR_DEVICE_ATTR_2_RW(temp3_auto_offset2, temp_auto_offset, 1, 2); +static SENSOR_DEVICE_ATTR_2_RW(temp3_auto_offset3, temp_auto_offset, 2, 2); +static SENSOR_DEVICE_ATTR_2_RW(temp3_auto_offset4, temp_auto_offset, 3, 2); +static SENSOR_DEVICE_ATTR_2_RW(temp3_auto_offset5, temp_auto_offset, 4, 2); +static SENSOR_DEVICE_ATTR_2_RW(temp3_auto_offset6, temp_auto_offset, 5, 2); +static SENSOR_DEVICE_ATTR_2_RW(temp3_auto_offset7, temp_auto_offset, 6, 2); +static SENSOR_DEVICE_ATTR_2_RW(temp3_auto_offset8, temp_auto_offset, 7, 2); +static SENSOR_DEVICE_ATTR_2_RW(temp3_auto_offset9, temp_auto_offset, 8, 2); +static SENSOR_DEVICE_ATTR_2_RW(temp3_auto_offset10, temp_auto_offset, 9, 2); +static SENSOR_DEVICE_ATTR_2_RW(temp3_auto_offset11, temp_auto_offset, 10, 2); +static SENSOR_DEVICE_ATTR_2_RW(temp3_auto_offset12, temp_auto_offset, 11, 2); + +static ssize_t temp_auto_pwm_min_show(struct device *dev, + struct device_attribute *attr, + char *buf) { int nr = (to_sensor_dev_attr(attr))->index; u8 reg, ctl4; @@ -1627,9 +1544,9 @@ static ssize_t show_temp_auto_pwm_min(struct device *dev, LM93_PWM_MAP_LO_FREQ : LM93_PWM_MAP_HI_FREQ)); } -static ssize_t store_temp_auto_pwm_min(struct device *dev, - struct device_attribute *attr, - const char *buf, size_t count) +static ssize_t temp_auto_pwm_min_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t count) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = dev_get_drvdata(dev); @@ -1655,18 +1572,13 @@ static ssize_t store_temp_auto_pwm_min(struct device *dev, return count; } -static SENSOR_DEVICE_ATTR(temp1_auto_pwm_min, S_IWUSR | S_IRUGO, - show_temp_auto_pwm_min, - store_temp_auto_pwm_min, 0); -static SENSOR_DEVICE_ATTR(temp2_auto_pwm_min, S_IWUSR | S_IRUGO, - show_temp_auto_pwm_min, - store_temp_auto_pwm_min, 1); -static SENSOR_DEVICE_ATTR(temp3_auto_pwm_min, S_IWUSR | S_IRUGO, - show_temp_auto_pwm_min, - store_temp_auto_pwm_min, 2); +static SENSOR_DEVICE_ATTR_RW(temp1_auto_pwm_min, temp_auto_pwm_min, 0); +static SENSOR_DEVICE_ATTR_RW(temp2_auto_pwm_min, temp_auto_pwm_min, 1); +static SENSOR_DEVICE_ATTR_RW(temp3_auto_pwm_min, temp_auto_pwm_min, 2); -static ssize_t show_temp_auto_offset_hyst(struct device *dev, - struct device_attribute *attr, char *buf) +static ssize_t temp_auto_offset_hyst_show(struct device *dev, + struct device_attribute *attr, + char *buf) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = lm93_update_device(dev); @@ -1675,9 +1587,9 @@ static ssize_t show_temp_auto_offset_hyst(struct device *dev, data->auto_pwm_min_hyst[nr / 2], mode)); } -static ssize_t store_temp_auto_offset_hyst(struct device *dev, - struct device_attribute *attr, - const char *buf, size_t count) +static ssize_t temp_auto_offset_hyst_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t count) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = dev_get_drvdata(dev); @@ -1703,18 +1615,12 @@ static ssize_t store_temp_auto_offset_hyst(struct device *dev, return count; } -static SENSOR_DEVICE_ATTR(temp1_auto_offset_hyst, S_IWUSR | S_IRUGO, - show_temp_auto_offset_hyst, - store_temp_auto_offset_hyst, 0); -static SENSOR_DEVICE_ATTR(temp2_auto_offset_hyst, S_IWUSR | S_IRUGO, - show_temp_auto_offset_hyst, - store_temp_auto_offset_hyst, 1); -static SENSOR_DEVICE_ATTR(temp3_auto_offset_hyst, S_IWUSR | S_IRUGO, - show_temp_auto_offset_hyst, - store_temp_auto_offset_hyst, 2); +static SENSOR_DEVICE_ATTR_RW(temp1_auto_offset_hyst, temp_auto_offset_hyst, 0); +static SENSOR_DEVICE_ATTR_RW(temp2_auto_offset_hyst, temp_auto_offset_hyst, 1); +static SENSOR_DEVICE_ATTR_RW(temp3_auto_offset_hyst, temp_auto_offset_hyst, 2); -static ssize_t show_fan_input(struct device *dev, - struct device_attribute *attr, char *buf) +static ssize_t fan_input_show(struct device *dev, + struct device_attribute *attr, char *buf) { struct sensor_device_attribute *s_attr = to_sensor_dev_attr(attr); int nr = s_attr->index; @@ -1723,13 +1629,13 @@ static ssize_t show_fan_input(struct device *dev, return sprintf(buf, "%d\n", LM93_FAN_FROM_REG(data->block5[nr])); } -static SENSOR_DEVICE_ATTR(fan1_input, S_IRUGO, show_fan_input, NULL, 0); -static SENSOR_DEVICE_ATTR(fan2_input, S_IRUGO, show_fan_input, NULL, 1); -static SENSOR_DEVICE_ATTR(fan3_input, S_IRUGO, show_fan_input, NULL, 2); -static SENSOR_DEVICE_ATTR(fan4_input, S_IRUGO, show_fan_input, NULL, 3); +static SENSOR_DEVICE_ATTR_RO(fan1_input, fan_input, 0); +static SENSOR_DEVICE_ATTR_RO(fan2_input, fan_input, 1); +static SENSOR_DEVICE_ATTR_RO(fan3_input, fan_input, 2); +static SENSOR_DEVICE_ATTR_RO(fan4_input, fan_input, 3); -static ssize_t show_fan_min(struct device *dev, - struct device_attribute *attr, char *buf) +static ssize_t fan_min_show(struct device *dev, struct device_attribute *attr, + char *buf) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = lm93_update_device(dev); @@ -1737,8 +1643,9 @@ static ssize_t show_fan_min(struct device *dev, return sprintf(buf, "%d\n", LM93_FAN_FROM_REG(data->block8[nr])); } -static ssize_t store_fan_min(struct device *dev, struct device_attribute *attr, - const char *buf, size_t count) +static ssize_t fan_min_store(struct device *dev, + struct device_attribute *attr, const char *buf, + size_t count) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = dev_get_drvdata(dev); @@ -1757,14 +1664,10 @@ static ssize_t store_fan_min(struct device *dev, struct device_attribute *attr, return count; } -static SENSOR_DEVICE_ATTR(fan1_min, S_IWUSR | S_IRUGO, - show_fan_min, store_fan_min, 0); -static SENSOR_DEVICE_ATTR(fan2_min, S_IWUSR | S_IRUGO, - show_fan_min, store_fan_min, 1); -static SENSOR_DEVICE_ATTR(fan3_min, S_IWUSR | S_IRUGO, - show_fan_min, store_fan_min, 2); -static SENSOR_DEVICE_ATTR(fan4_min, S_IWUSR | S_IRUGO, - show_fan_min, store_fan_min, 3); +static SENSOR_DEVICE_ATTR_RW(fan1_min, fan_min, 0); +static SENSOR_DEVICE_ATTR_RW(fan2_min, fan_min, 1); +static SENSOR_DEVICE_ATTR_RW(fan3_min, fan_min, 2); +static SENSOR_DEVICE_ATTR_RW(fan4_min, fan_min, 3); /* * some tedious bit-twiddling here to deal with the register format: @@ -1780,8 +1683,8 @@ static SENSOR_DEVICE_ATTR(fan4_min, S_IWUSR | S_IRUGO, * T4 T3 T2 T1 */ -static ssize_t show_fan_smart_tach(struct device *dev, - struct device_attribute *attr, char *buf) +static ssize_t fan_smart_tach_show(struct device *dev, + struct device_attribute *attr, char *buf) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = lm93_update_device(dev); @@ -1819,9 +1722,9 @@ static void lm93_write_fan_smart_tach(struct i2c_client *client, lm93_write_byte(client, LM93_REG_SFC2, data->sfc2); } -static ssize_t store_fan_smart_tach(struct device *dev, - struct device_attribute *attr, - const char *buf, size_t count) +static ssize_t fan_smart_tach_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t count) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = dev_get_drvdata(dev); @@ -1849,16 +1752,12 @@ static ssize_t store_fan_smart_tach(struct device *dev, return count; } -static SENSOR_DEVICE_ATTR(fan1_smart_tach, S_IWUSR | S_IRUGO, - show_fan_smart_tach, store_fan_smart_tach, 0); -static SENSOR_DEVICE_ATTR(fan2_smart_tach, S_IWUSR | S_IRUGO, - show_fan_smart_tach, store_fan_smart_tach, 1); -static SENSOR_DEVICE_ATTR(fan3_smart_tach, S_IWUSR | S_IRUGO, - show_fan_smart_tach, store_fan_smart_tach, 2); -static SENSOR_DEVICE_ATTR(fan4_smart_tach, S_IWUSR | S_IRUGO, - show_fan_smart_tach, store_fan_smart_tach, 3); +static SENSOR_DEVICE_ATTR_RW(fan1_smart_tach, fan_smart_tach, 0); +static SENSOR_DEVICE_ATTR_RW(fan2_smart_tach, fan_smart_tach, 1); +static SENSOR_DEVICE_ATTR_RW(fan3_smart_tach, fan_smart_tach, 2); +static SENSOR_DEVICE_ATTR_RW(fan4_smart_tach, fan_smart_tach, 3); -static ssize_t show_pwm(struct device *dev, struct device_attribute *attr, +static ssize_t pwm_show(struct device *dev, struct device_attribute *attr, char *buf) { int nr = (to_sensor_dev_attr(attr))->index; @@ -1876,8 +1775,8 @@ static ssize_t show_pwm(struct device *dev, struct device_attribute *attr, return sprintf(buf, "%ld\n", rc); } -static ssize_t store_pwm(struct device *dev, struct device_attribute *attr, - const char *buf, size_t count) +static ssize_t pwm_store(struct device *dev, struct device_attribute *attr, + const char *buf, size_t count) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = dev_get_drvdata(dev); @@ -1904,11 +1803,11 @@ static ssize_t store_pwm(struct device *dev, struct device_attribute *attr, return count; } -static SENSOR_DEVICE_ATTR(pwm1, S_IWUSR | S_IRUGO, show_pwm, store_pwm, 0); -static SENSOR_DEVICE_ATTR(pwm2, S_IWUSR | S_IRUGO, show_pwm, store_pwm, 1); +static SENSOR_DEVICE_ATTR_RW(pwm1, pwm, 0); +static SENSOR_DEVICE_ATTR_RW(pwm2, pwm, 1); -static ssize_t show_pwm_enable(struct device *dev, - struct device_attribute *attr, char *buf) +static ssize_t pwm_enable_show(struct device *dev, + struct device_attribute *attr, char *buf) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = lm93_update_device(dev); @@ -1923,7 +1822,7 @@ static ssize_t show_pwm_enable(struct device *dev, return sprintf(buf, "%ld\n", rc); } -static ssize_t store_pwm_enable(struct device *dev, +static ssize_t pwm_enable_store(struct device *dev, struct device_attribute *attr, const char *buf, size_t count) { @@ -1961,13 +1860,11 @@ static ssize_t store_pwm_enable(struct device *dev, return count; } -static SENSOR_DEVICE_ATTR(pwm1_enable, S_IWUSR | S_IRUGO, - show_pwm_enable, store_pwm_enable, 0); -static SENSOR_DEVICE_ATTR(pwm2_enable, S_IWUSR | S_IRUGO, - show_pwm_enable, store_pwm_enable, 1); +static SENSOR_DEVICE_ATTR_RW(pwm1_enable, pwm_enable, 0); +static SENSOR_DEVICE_ATTR_RW(pwm2_enable, pwm_enable, 1); -static ssize_t show_pwm_freq(struct device *dev, struct device_attribute *attr, - char *buf) +static ssize_t pwm_freq_show(struct device *dev, + struct device_attribute *attr, char *buf) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = lm93_update_device(dev); @@ -2001,9 +1898,9 @@ static void lm93_disable_fan_smart_tach(struct i2c_client *client, lm93_write_byte(client, LM93_REG_SFC2, data->sfc2); } -static ssize_t store_pwm_freq(struct device *dev, - struct device_attribute *attr, - const char *buf, size_t count) +static ssize_t pwm_freq_store(struct device *dev, + struct device_attribute *attr, const char *buf, + size_t count) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = dev_get_drvdata(dev); @@ -2028,22 +1925,21 @@ static ssize_t store_pwm_freq(struct device *dev, return count; } -static SENSOR_DEVICE_ATTR(pwm1_freq, S_IWUSR | S_IRUGO, - show_pwm_freq, store_pwm_freq, 0); -static SENSOR_DEVICE_ATTR(pwm2_freq, S_IWUSR | S_IRUGO, - show_pwm_freq, store_pwm_freq, 1); +static SENSOR_DEVICE_ATTR_RW(pwm1_freq, pwm_freq, 0); +static SENSOR_DEVICE_ATTR_RW(pwm2_freq, pwm_freq, 1); -static ssize_t show_pwm_auto_channels(struct device *dev, - struct device_attribute *attr, char *buf) +static ssize_t pwm_auto_channels_show(struct device *dev, + struct device_attribute *attr, + char *buf) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = lm93_update_device(dev); return sprintf(buf, "%d\n", data->block9[nr][LM93_PWM_CTL1]); } -static ssize_t store_pwm_auto_channels(struct device *dev, - struct device_attribute *attr, - const char *buf, size_t count) +static ssize_t pwm_auto_channels_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t count) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = dev_get_drvdata(dev); @@ -2063,13 +1959,12 @@ static ssize_t store_pwm_auto_channels(struct device *dev, return count; } -static SENSOR_DEVICE_ATTR(pwm1_auto_channels, S_IWUSR | S_IRUGO, - show_pwm_auto_channels, store_pwm_auto_channels, 0); -static SENSOR_DEVICE_ATTR(pwm2_auto_channels, S_IWUSR | S_IRUGO, - show_pwm_auto_channels, store_pwm_auto_channels, 1); +static SENSOR_DEVICE_ATTR_RW(pwm1_auto_channels, pwm_auto_channels, 0); +static SENSOR_DEVICE_ATTR_RW(pwm2_auto_channels, pwm_auto_channels, 1); -static ssize_t show_pwm_auto_spinup_min(struct device *dev, - struct device_attribute *attr, char *buf) +static ssize_t pwm_auto_spinup_min_show(struct device *dev, + struct device_attribute *attr, + char *buf) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = lm93_update_device(dev); @@ -2082,9 +1977,9 @@ static ssize_t show_pwm_auto_spinup_min(struct device *dev, LM93_PWM_MAP_LO_FREQ : LM93_PWM_MAP_HI_FREQ)); } -static ssize_t store_pwm_auto_spinup_min(struct device *dev, - struct device_attribute *attr, - const char *buf, size_t count) +static ssize_t pwm_auto_spinup_min_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t count) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = dev_get_drvdata(dev); @@ -2109,15 +2004,12 @@ static ssize_t store_pwm_auto_spinup_min(struct device *dev, return count; } -static SENSOR_DEVICE_ATTR(pwm1_auto_spinup_min, S_IWUSR | S_IRUGO, - show_pwm_auto_spinup_min, - store_pwm_auto_spinup_min, 0); -static SENSOR_DEVICE_ATTR(pwm2_auto_spinup_min, S_IWUSR | S_IRUGO, - show_pwm_auto_spinup_min, - store_pwm_auto_spinup_min, 1); +static SENSOR_DEVICE_ATTR_RW(pwm1_auto_spinup_min, pwm_auto_spinup_min, 0); +static SENSOR_DEVICE_ATTR_RW(pwm2_auto_spinup_min, pwm_auto_spinup_min, 1); -static ssize_t show_pwm_auto_spinup_time(struct device *dev, - struct device_attribute *attr, char *buf) +static ssize_t pwm_auto_spinup_time_show(struct device *dev, + struct device_attribute *attr, + char *buf) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = lm93_update_device(dev); @@ -2125,9 +2017,9 @@ static ssize_t show_pwm_auto_spinup_time(struct device *dev, data->block9[nr][LM93_PWM_CTL3])); } -static ssize_t store_pwm_auto_spinup_time(struct device *dev, - struct device_attribute *attr, - const char *buf, size_t count) +static ssize_t pwm_auto_spinup_time_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t count) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = dev_get_drvdata(dev); @@ -2149,12 +2041,8 @@ static ssize_t store_pwm_auto_spinup_time(struct device *dev, return count; } -static SENSOR_DEVICE_ATTR(pwm1_auto_spinup_time, S_IWUSR | S_IRUGO, - show_pwm_auto_spinup_time, - store_pwm_auto_spinup_time, 0); -static SENSOR_DEVICE_ATTR(pwm2_auto_spinup_time, S_IWUSR | S_IRUGO, - show_pwm_auto_spinup_time, - store_pwm_auto_spinup_time, 1); +static SENSOR_DEVICE_ATTR_RW(pwm1_auto_spinup_time, pwm_auto_spinup_time, 0); +static SENSOR_DEVICE_ATTR_RW(pwm2_auto_spinup_time, pwm_auto_spinup_time, 1); static ssize_t pwm_auto_prochot_ramp_show(struct device *dev, struct device_attribute *attr, char *buf) @@ -2220,7 +2108,7 @@ static ssize_t pwm_auto_vrdhot_ramp_store(struct device *dev, static DEVICE_ATTR_RW(pwm_auto_vrdhot_ramp); -static ssize_t show_vid(struct device *dev, struct device_attribute *attr, +static ssize_t vid_show(struct device *dev, struct device_attribute *attr, char *buf) { int nr = (to_sensor_dev_attr(attr))->index; @@ -2228,21 +2116,21 @@ static ssize_t show_vid(struct device *dev, struct device_attribute *attr, return sprintf(buf, "%d\n", LM93_VID_FROM_REG(data->vid[nr])); } -static SENSOR_DEVICE_ATTR(cpu0_vid, S_IRUGO, show_vid, NULL, 0); -static SENSOR_DEVICE_ATTR(cpu1_vid, S_IRUGO, show_vid, NULL, 1); +static SENSOR_DEVICE_ATTR_RO(cpu0_vid, vid, 0); +static SENSOR_DEVICE_ATTR_RO(cpu1_vid, vid, 1); -static ssize_t show_prochot(struct device *dev, struct device_attribute *attr, - char *buf) +static ssize_t prochot_show(struct device *dev, struct device_attribute *attr, + char *buf) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = lm93_update_device(dev); return sprintf(buf, "%d\n", data->block4[nr].cur); } -static SENSOR_DEVICE_ATTR(prochot1, S_IRUGO, show_prochot, NULL, 0); -static SENSOR_DEVICE_ATTR(prochot2, S_IRUGO, show_prochot, NULL, 1); +static SENSOR_DEVICE_ATTR_RO(prochot1, prochot, 0); +static SENSOR_DEVICE_ATTR_RO(prochot2, prochot, 1); -static ssize_t show_prochot_avg(struct device *dev, +static ssize_t prochot_avg_show(struct device *dev, struct device_attribute *attr, char *buf) { int nr = (to_sensor_dev_attr(attr))->index; @@ -2250,10 +2138,10 @@ static ssize_t show_prochot_avg(struct device *dev, return sprintf(buf, "%d\n", data->block4[nr].avg); } -static SENSOR_DEVICE_ATTR(prochot1_avg, S_IRUGO, show_prochot_avg, NULL, 0); -static SENSOR_DEVICE_ATTR(prochot2_avg, S_IRUGO, show_prochot_avg, NULL, 1); +static SENSOR_DEVICE_ATTR_RO(prochot1_avg, prochot_avg, 0); +static SENSOR_DEVICE_ATTR_RO(prochot2_avg, prochot_avg, 1); -static ssize_t show_prochot_max(struct device *dev, +static ssize_t prochot_max_show(struct device *dev, struct device_attribute *attr, char *buf) { int nr = (to_sensor_dev_attr(attr))->index; @@ -2261,9 +2149,9 @@ static ssize_t show_prochot_max(struct device *dev, return sprintf(buf, "%d\n", data->prochot_max[nr]); } -static ssize_t store_prochot_max(struct device *dev, - struct device_attribute *attr, - const char *buf, size_t count) +static ssize_t prochot_max_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t count) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = dev_get_drvdata(dev); @@ -2283,15 +2171,13 @@ static ssize_t store_prochot_max(struct device *dev, return count; } -static SENSOR_DEVICE_ATTR(prochot1_max, S_IWUSR | S_IRUGO, - show_prochot_max, store_prochot_max, 0); -static SENSOR_DEVICE_ATTR(prochot2_max, S_IWUSR | S_IRUGO, - show_prochot_max, store_prochot_max, 1); +static SENSOR_DEVICE_ATTR_RW(prochot1_max, prochot_max, 0); +static SENSOR_DEVICE_ATTR_RW(prochot2_max, prochot_max, 1); static const u8 prochot_override_mask[] = { 0x80, 0x40 }; -static ssize_t show_prochot_override(struct device *dev, - struct device_attribute *attr, char *buf) +static ssize_t prochot_override_show(struct device *dev, + struct device_attribute *attr, char *buf) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = lm93_update_device(dev); @@ -2299,9 +2185,9 @@ static ssize_t show_prochot_override(struct device *dev, (data->prochot_override & prochot_override_mask[nr]) ? 1 : 0); } -static ssize_t store_prochot_override(struct device *dev, - struct device_attribute *attr, - const char *buf, size_t count) +static ssize_t prochot_override_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t count) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = dev_get_drvdata(dev); @@ -2324,13 +2210,11 @@ static ssize_t store_prochot_override(struct device *dev, return count; } -static SENSOR_DEVICE_ATTR(prochot1_override, S_IWUSR | S_IRUGO, - show_prochot_override, store_prochot_override, 0); -static SENSOR_DEVICE_ATTR(prochot2_override, S_IWUSR | S_IRUGO, - show_prochot_override, store_prochot_override, 1); +static SENSOR_DEVICE_ATTR_RW(prochot1_override, prochot_override, 0); +static SENSOR_DEVICE_ATTR_RW(prochot2_override, prochot_override, 1); -static ssize_t show_prochot_interval(struct device *dev, - struct device_attribute *attr, char *buf) +static ssize_t prochot_interval_show(struct device *dev, + struct device_attribute *attr, char *buf) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = lm93_update_device(dev); @@ -2342,9 +2226,9 @@ static ssize_t show_prochot_interval(struct device *dev, return sprintf(buf, "%d\n", LM93_INTERVAL_FROM_REG(tmp)); } -static ssize_t store_prochot_interval(struct device *dev, - struct device_attribute *attr, - const char *buf, size_t count) +static ssize_t prochot_interval_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t count) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = dev_get_drvdata(dev); @@ -2369,10 +2253,8 @@ static ssize_t store_prochot_interval(struct device *dev, return count; } -static SENSOR_DEVICE_ATTR(prochot1_interval, S_IWUSR | S_IRUGO, - show_prochot_interval, store_prochot_interval, 0); -static SENSOR_DEVICE_ATTR(prochot2_interval, S_IWUSR | S_IRUGO, - show_prochot_interval, store_prochot_interval, 1); +static SENSOR_DEVICE_ATTR_RW(prochot1_interval, prochot_interval, 0); +static SENSOR_DEVICE_ATTR_RW(prochot2_interval, prochot_interval, 1); static ssize_t prochot_override_duty_cycle_show(struct device *dev, struct device_attribute *attr, @@ -2438,8 +2320,8 @@ static ssize_t prochot_short_store(struct device *dev, static DEVICE_ATTR_RW(prochot_short); -static ssize_t show_vrdhot(struct device *dev, struct device_attribute *attr, - char *buf) +static ssize_t vrdhot_show(struct device *dev, struct device_attribute *attr, + char *buf) { int nr = (to_sensor_dev_attr(attr))->index; struct lm93_data *data = lm93_update_device(dev); @@ -2447,8 +2329,8 @@ static ssize_t show_vrdhot(struct device *dev, struct device_attribute *attr, data->block1.host_status_1 & (1 << (nr + 4)) ? 1 : 0); } -static SENSOR_DEVICE_ATTR(vrdhot1, S_IRUGO, show_vrdhot, NULL, 0); -static SENSOR_DEVICE_ATTR(vrdhot2, S_IRUGO, show_vrdhot, NULL, 1); +static SENSOR_DEVICE_ATTR_RO(vrdhot1, vrdhot, 0); +static SENSOR_DEVICE_ATTR_RO(vrdhot2, vrdhot, 1); static ssize_t gpio_show(struct device *dev, struct device_attribute *attr, char *buf) From patchwork Thu Jan 17 21:13:44 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Guenter Roeck X-Patchwork-Id: 10769129 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 06F1513BF for ; Thu, 17 Jan 2019 21:14:36 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id EC4B52A7A7 for ; Thu, 17 Jan 2019 21:14:35 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id E09262A7B1; Thu, 17 Jan 2019 21:14:35 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 8C7952A7A7 for ; Thu, 17 Jan 2019 21:14:35 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728677AbfAQVOf (ORCPT ); Thu, 17 Jan 2019 16:14:35 -0500 Received: from mail-pg1-f196.google.com ([209.85.215.196]:43594 "EHLO mail-pg1-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727148AbfAQVOf (ORCPT ); Thu, 17 Jan 2019 16:14:35 -0500 Received: by mail-pg1-f196.google.com with SMTP id v28so4978331pgk.10 for ; Thu, 17 Jan 2019 13:14:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=O4o6rrpdDERbNg7wAWvLpR74oudHi4ZtoHaCGZ8VGHg=; b=aiJEFyjf7xWin1A7uXtgfKtYASlQkav49f+eGsGWiidDNTTgv7VNeiDupszktpMzaB 9NwYe3E90jEADYuMp5Y/2FaJcGZ+EpoJq0Ul2vb44s6Lic/y+wVCz70dTBYFZ3RxusbC BzzezBOHsS6l/gRnrYGgas5MHrFIKDsHp0WIdynRpcASOsbNqHS+oUq+DSuPmf8cbpm4 P+8BhNHVNUIxjR0d9GvUfAvUsXiwDEFLP/vE6gbzfMSGSxVkQuyVe3e2YV7R+9is3w8j VL8LW2o9CtLttSDnavOQGml1v5+YwIw8e2BCu7K04k/R0MGdf1SG5oAecEevHj8MLYl3 QJHA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=O4o6rrpdDERbNg7wAWvLpR74oudHi4ZtoHaCGZ8VGHg=; b=SvgUCvim8utHKoc5ByAYjND01PQR1JXueAEP+mnDMVkDxMrjRNynsHto4cqukmfHsH J6nPiERCYLqAiGBgz9dDrWhQe9w+eU520zmf2jAQG1Iwo8bdbZ690Av32dx6Wg69z6ih HGlEyUXZ0quC6b37mH7pFZxY88MATV95OGXKxuI4pLmPSubVi7WUgg0tKxM2BsQemy0w GDpdUdngyQYg9eAVEVfk6lXXswjbUWLHskIJOawBAtXsDLK8N3jgQ4ppHaVcVcTXo6uz eBtRE7vo4AQiIrJtKY/qvMEDg0Z6s5RtZg6WJvT2T/kpFVkC2+c9bDdO1BYobUWyCG8f ykuw== X-Gm-Message-State: AJcUukcTx/zzbEoseeaNcD7Sx1hsjOk8zkCLRccjUDPDCrtFTToKervk fSN0XUvWKDefbHlMDVvKT8p9L6vG X-Google-Smtp-Source: ALg8bN4iRHfgtv7UJtWglt83FTK5UtGHRunQoQwC6Qiw2MdxQCQnEW5VWx9tfXgQnyP1ImZG4UgHLA== X-Received: by 2002:a63:6150:: with SMTP id v77mr14649236pgb.266.1547759674312; Thu, 17 Jan 2019 13:14:34 -0800 (PST) Received: from localhost ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id h9sm2635401pgd.53.2019.01.17.13.14.33 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Jan 2019 13:14:33 -0800 (PST) From: Guenter Roeck To: Hardware Monitoring Cc: Jean Delvare , Guenter Roeck Subject: [PATCH 24/29] hwmon: (lm95241) Replace S_ with octal values Date: Thu, 17 Jan 2019 13:13:44 -0800 Message-Id: <1547759629-23007-25-git-send-email-linux@roeck-us.net> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1547759629-23007-1-git-send-email-linux@roeck-us.net> References: <1547759629-23007-1-git-send-email-linux@roeck-us.net> Sender: linux-hwmon-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-hwmon@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Replace S_ with octal values. The conversion was done automatically with coccinelle. The semantic patches and the scripts used to generate this commit log are available at https://github.com/groeck/coccinelle-patches/hwmon/. This patch does not introduce functional changes. It was verified by compiling the old and new files and comparing text and data sizes. Signed-off-by: Guenter Roeck --- drivers/hwmon/lm95241.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/hwmon/lm95241.c b/drivers/hwmon/lm95241.c index 8c573e6e9726..3ff188937158 100644 --- a/drivers/hwmon/lm95241.c +++ b/drivers/hwmon/lm95241.c @@ -349,19 +349,19 @@ static umode_t lm95241_is_visible(const void *data, case hwmon_chip: switch (attr) { case hwmon_chip_update_interval: - return S_IRUGO | S_IWUSR; + return 0644; } break; case hwmon_temp: switch (attr) { case hwmon_temp_input: - return S_IRUGO; + return 0444; case hwmon_temp_fault: - return S_IRUGO; + return 0444; case hwmon_temp_min: case hwmon_temp_max: case hwmon_temp_type: - return S_IRUGO | S_IWUSR; + return 0644; } break; default: From patchwork Thu Jan 17 21:13:45 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Guenter Roeck X-Patchwork-Id: 10769131 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 76A5D13BF for ; Thu, 17 Jan 2019 21:14:38 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 678692A7B0 for ; Thu, 17 Jan 2019 21:14:38 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 5C4732A7B7; Thu, 17 Jan 2019 21:14:38 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 0CE402A7B0 for ; Thu, 17 Jan 2019 21:14:38 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728247AbfAQVOh (ORCPT ); Thu, 17 Jan 2019 16:14:37 -0500 Received: from mail-pg1-f193.google.com ([209.85.215.193]:37568 "EHLO mail-pg1-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727148AbfAQVOh (ORCPT ); Thu, 17 Jan 2019 16:14:37 -0500 Received: by mail-pg1-f193.google.com with SMTP id c25so4991001pgb.4 for ; Thu, 17 Jan 2019 13:14:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=7LJADRCN+8shgShWOBHjwyDMGExXO85TOTTPvEFiSqE=; b=RJBxHtM9JLg6JdaEGYZFqGDHWjDh91rjgYsToeMnTe7hKWGkx2WSvrcXGSBfFYu5OU oBLP44q4qnjGguA4yJd/lUTfJT9LjWuH5+58hqPf92QL/bv3Sj0CgHmq+VHp5+RIk0Iq Ut17VCckMLtxbi2Lk2VHOy5JM2XEW+K7BGDz7uODw5EiT0CAAv0om+9ImH70fhtEIZBm 8AIFpprtGVg9I0xPETRJnmZe81zuHQEbs9w1Dwexw7bE3+BE+62ExC0SY+rB0YVE6WMK VpufAervZp3SU0zf7YV5hszskRfON/LsoTIkuR3Qr2GJeu/Rayj/jziVFdlwXtFzVcWq efeQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=7LJADRCN+8shgShWOBHjwyDMGExXO85TOTTPvEFiSqE=; b=Yq6mItc9Fa03w5t43iXjLTYMR94TOMuV6/SUIwH9Cxuq3FGka/vb6TAd8uz1m824+z MUG/5+k9aoVGq43xnwmyZP1ljwsXnWsq8Nbp/Y2HlCAxStTm9DDi2w/LWLRxth6bznTQ 4E/ZefeaFwIyhJM7Tn0Y3X5kki0iFDwwWMwNaRXazN8P2b+07mEVknCliFU9KDy5oDH1 Qz0TAxEmcQ0EqL5AgN5CSdAG8OyAcoyZRijTOVhPXMTOYYNXY8UXkVdqNoeH5tcmoviJ GPFvYfKWy5OwGj7xyUjVZfLuY/7nrECPtARSyBhaubYWG5N05xHRlZ3tzJmwjnYW2Zr/ yJqQ== X-Gm-Message-State: AJcUukfqo+g2BpG+GbYwBppOXtMEBODE4c4YBpOhLkbg8amg1FdTgVVD +B2xZcV34e8Jxjvqd9Vqb+WQJbWL X-Google-Smtp-Source: ALg8bN7+fG7ms+c3f6GuyKn78FHuSnJ+geFPzmV9xCgnvsEyKf1ukkoWVd0yDpj+fxX8zM9KIGp0RQ== X-Received: by 2002:a62:e044:: with SMTP id f65mr16366758pfh.208.1547759676150; Thu, 17 Jan 2019 13:14:36 -0800 (PST) Received: from localhost ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id w5sm3781701pfn.89.2019.01.17.13.14.35 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Jan 2019 13:14:35 -0800 (PST) From: Guenter Roeck To: Hardware Monitoring Cc: Jean Delvare , Guenter Roeck Subject: [PATCH 25/29] hwmon: (lm95245) Replace S_ with octal values Date: Thu, 17 Jan 2019 13:13:45 -0800 Message-Id: <1547759629-23007-26-git-send-email-linux@roeck-us.net> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1547759629-23007-1-git-send-email-linux@roeck-us.net> References: <1547759629-23007-1-git-send-email-linux@roeck-us.net> Sender: linux-hwmon-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-hwmon@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Replace S_ with octal values. The conversion was done automatically with coccinelle. The semantic patches and the scripts used to generate this commit log are available at https://github.com/groeck/coccinelle-patches/hwmon/. This patch does not introduce functional changes. It was verified by compiling the old and new files and comparing text and data sizes. Signed-off-by: Guenter Roeck --- drivers/hwmon/lm95245.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/hwmon/lm95245.c b/drivers/hwmon/lm95245.c index 996b50246175..e4cac3a04536 100644 --- a/drivers/hwmon/lm95245.c +++ b/drivers/hwmon/lm95245.c @@ -421,14 +421,14 @@ static umode_t lm95245_temp_is_visible(const void *data, u32 attr, int channel) case hwmon_temp_max_hyst: case hwmon_temp_crit_alarm: case hwmon_temp_fault: - return S_IRUGO; + return 0444; case hwmon_temp_type: case hwmon_temp_max: case hwmon_temp_crit: case hwmon_temp_offset: - return S_IRUGO | S_IWUSR; + return 0644; case hwmon_temp_crit_hyst: - return (channel == 0) ? S_IRUGO | S_IWUSR : S_IRUGO; + return (channel == 0) ? 0644 : 0444; default: return 0; } @@ -442,7 +442,7 @@ static umode_t lm95245_is_visible(const void *data, case hwmon_chip: switch (attr) { case hwmon_chip_update_interval: - return S_IRUGO | S_IWUSR; + return 0644; default: return 0; } From patchwork Thu Jan 17 21:13:46 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Guenter Roeck X-Patchwork-Id: 10769135 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 9DF386C2 for ; Thu, 17 Jan 2019 21:14:40 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 8F50C2A7A7 for ; Thu, 17 Jan 2019 21:14:40 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 841862A7B1; Thu, 17 Jan 2019 21:14:40 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 0BD482A7B0 for ; Thu, 17 Jan 2019 21:14:39 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728750AbfAQVOi (ORCPT ); Thu, 17 Jan 2019 16:14:38 -0500 Received: from mail-pl1-f193.google.com ([209.85.214.193]:41014 "EHLO mail-pl1-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727148AbfAQVOi (ORCPT ); Thu, 17 Jan 2019 16:14:38 -0500 Received: by mail-pl1-f193.google.com with SMTP id u6so5286983plm.8 for ; Thu, 17 Jan 2019 13:14:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=DHouWOvhUX3vj41jUSNNLk+ua3xvbLE3Pnv5TtdZ6aM=; b=cp0/ygOB+aNoLQnPpu2XOtjUl0OfGC2UeXZEK+/Ty4RIDz7h4VYlvCAdFtngCgGL1K dGKnq/Q3jCShOFwFlLYH3mwZBXZDWkS6hQFfAFzc793Boa4NISHjSMaonD/CppUa4iKj VY5Rr5Z2FMaPnS0xymLfHaVor5z8lzFzAPN5xD81FFNfeVJ0mMY3YOnt0MIHCq/Fr2q8 HcSBTos1qMuIjkT2m63OiAAfJDsdBuIu9UkmDO3LH2DCEnnhgrUnmXwEojsP6+TQMiRB ljhR7P/76ONz3GKb6f6XnPtpK7WujKMYxszK8GUOv1inMOZgiSTdoANeclM+kIMKINz9 YeuA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=DHouWOvhUX3vj41jUSNNLk+ua3xvbLE3Pnv5TtdZ6aM=; b=IvquNxbfLyL5DTfBV3JgQPSYWp4ra1IqJiqyFZTvsi5lsdXKYRTrsSJVPxkHzzT0E5 Mjg4czWSJGQXeNZ86/RIN2F0ZV6eLyP9n0bIqA+Y1DKvCbdaiIT+V8dZeQPFS2KUn469 jVWxyCi3tijuNruyYJl/AqLmmXD3Bv+LwSswYo/jSW4IYW47OyYM9PgXeNTOkk0/tBTT ko8w7Vwwg4QyptRQWBqzDWx4h5WqpvgiF1m+QwEj+Me+GHaoVEDTL+xYrESURN7dly+/ 4GRgH/lk3QvftWvhKQF1vXpM+O9dYEDiHaJQPeBNu+pWX+gaKMQDK+332IsQMMaDw3Gl vp2g== X-Gm-Message-State: AJcUukclMrlD/zp8EEh4NrPGcaEqSCxZO6tU7dudI8n4UPATVUexpZHB NLYjEE6JFLrpalPKz4PwY/6NIzOx X-Google-Smtp-Source: ALg8bN57AnlRENOQcuE7ri698ErN2DM6ZPg3nqEbeo1JXiScCAbpFWPMR+ZohCgdv6VrbPCebpVDmA== X-Received: by 2002:a17:902:a50a:: with SMTP id s10mr15809090plq.278.1547759677742; Thu, 17 Jan 2019 13:14:37 -0800 (PST) Received: from localhost ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id v191sm4166700pgb.77.2019.01.17.13.14.36 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Jan 2019 13:14:37 -0800 (PST) From: Guenter Roeck To: Hardware Monitoring Cc: Jean Delvare , Guenter Roeck Subject: [PATCH 26/29] hwmon: (ltc2990) Use permission specific SENSOR[_DEVICE]_ATTR variants Date: Thu, 17 Jan 2019 13:13:46 -0800 Message-Id: <1547759629-23007-27-git-send-email-linux@roeck-us.net> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1547759629-23007-1-git-send-email-linux@roeck-us.net> References: <1547759629-23007-1-git-send-email-linux@roeck-us.net> Sender: linux-hwmon-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-hwmon@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Use SENSOR[_DEVICE]_ATTR[_2]_{RO,RW,WO} to simplify the source code, to improve readbility, and to reduce the chance of inconsistencies. Also replace any remaining S_ in the driver with octal values. The conversion was done automatically with coccinelle. The semantic patches and the scripts used to generate this commit log are available at https://github.com/groeck/coccinelle-patches/hwmon/. This patch does not introduce functional changes. It was verified by compiling the old and new files and comparing text and data sizes. Signed-off-by: Guenter Roeck --- drivers/hwmon/ltc2990.c | 32 +++++++++++--------------------- 1 file changed, 11 insertions(+), 21 deletions(-) diff --git a/drivers/hwmon/ltc2990.c b/drivers/hwmon/ltc2990.c index 2aefdc58b242..be4e89645c0b 100644 --- a/drivers/hwmon/ltc2990.c +++ b/drivers/hwmon/ltc2990.c @@ -136,7 +136,7 @@ static int ltc2990_get_value(struct i2c_client *i2c, int index, int *result) return 0; } -static ssize_t ltc2990_show_value(struct device *dev, +static ssize_t ltc2990_value_show(struct device *dev, struct device_attribute *da, char *buf) { struct sensor_device_attribute *attr = to_sensor_dev_attr(da); @@ -170,26 +170,16 @@ static umode_t ltc2990_attrs_visible(struct kobject *kobj, return 0; } -static SENSOR_DEVICE_ATTR(temp1_input, S_IRUGO, ltc2990_show_value, NULL, - LTC2990_TEMP1); -static SENSOR_DEVICE_ATTR(temp2_input, S_IRUGO, ltc2990_show_value, NULL, - LTC2990_TEMP2); -static SENSOR_DEVICE_ATTR(temp3_input, S_IRUGO, ltc2990_show_value, NULL, - LTC2990_TEMP3); -static SENSOR_DEVICE_ATTR(curr1_input, S_IRUGO, ltc2990_show_value, NULL, - LTC2990_CURR1); -static SENSOR_DEVICE_ATTR(curr2_input, S_IRUGO, ltc2990_show_value, NULL, - LTC2990_CURR2); -static SENSOR_DEVICE_ATTR(in0_input, S_IRUGO, ltc2990_show_value, NULL, - LTC2990_IN0); -static SENSOR_DEVICE_ATTR(in1_input, S_IRUGO, ltc2990_show_value, NULL, - LTC2990_IN1); -static SENSOR_DEVICE_ATTR(in2_input, S_IRUGO, ltc2990_show_value, NULL, - LTC2990_IN2); -static SENSOR_DEVICE_ATTR(in3_input, S_IRUGO, ltc2990_show_value, NULL, - LTC2990_IN3); -static SENSOR_DEVICE_ATTR(in4_input, S_IRUGO, ltc2990_show_value, NULL, - LTC2990_IN4); +static SENSOR_DEVICE_ATTR_RO(temp1_input, ltc2990_value, LTC2990_TEMP1); +static SENSOR_DEVICE_ATTR_RO(temp2_input, ltc2990_value, LTC2990_TEMP2); +static SENSOR_DEVICE_ATTR_RO(temp3_input, ltc2990_value, LTC2990_TEMP3); +static SENSOR_DEVICE_ATTR_RO(curr1_input, ltc2990_value, LTC2990_CURR1); +static SENSOR_DEVICE_ATTR_RO(curr2_input, ltc2990_value, LTC2990_CURR2); +static SENSOR_DEVICE_ATTR_RO(in0_input, ltc2990_value, LTC2990_IN0); +static SENSOR_DEVICE_ATTR_RO(in1_input, ltc2990_value, LTC2990_IN1); +static SENSOR_DEVICE_ATTR_RO(in2_input, ltc2990_value, LTC2990_IN2); +static SENSOR_DEVICE_ATTR_RO(in3_input, ltc2990_value, LTC2990_IN3); +static SENSOR_DEVICE_ATTR_RO(in4_input, ltc2990_value, LTC2990_IN4); static struct attribute *ltc2990_attrs[] = { &sensor_dev_attr_temp1_input.dev_attr.attr, From patchwork Thu Jan 17 21:13:47 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Guenter Roeck X-Patchwork-Id: 10769137 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 3BD1D14E5 for ; Thu, 17 Jan 2019 21:14:41 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 2C72A2A7A7 for ; Thu, 17 Jan 2019 21:14:41 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 20F522A7B1; Thu, 17 Jan 2019 21:14:41 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id BD6C12A7A7 for ; Thu, 17 Jan 2019 21:14:40 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727776AbfAQVOk (ORCPT ); Thu, 17 Jan 2019 16:14:40 -0500 Received: from mail-pg1-f194.google.com ([209.85.215.194]:36156 "EHLO mail-pg1-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727148AbfAQVOk (ORCPT ); Thu, 17 Jan 2019 16:14:40 -0500 Received: by mail-pg1-f194.google.com with SMTP id n2so4993097pgm.3 for ; Thu, 17 Jan 2019 13:14:39 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=Fgg8ElksAUz6o7+3MKUeeOC3fL7mL4X436Su2V32LBc=; b=n/LqK1iOKOi9eH8/GNZCdmQiBGIqVWBdc3d8V0QbZbQcrDZxis2CAV/AKuVrVZOreT 5pr+rb8LOHxOAVKEb3aZDy4+U3AatZRhpE50doP7POm7m9TGjRDqR/XhJA+czDboMVA5 RBclYjpbDAwxXFaCqlcKsPCRTQJ7K5Ku0pn1pGaGDRP9Nq1fc0JPahzud1fjLgjxlflF 8RTAeKwnu7B97EXVF6nBxH3nHyWihVrjU1XldB/lkoyxZ6NQ7w+bTffTDEvT6Hf2AJ4Q DGsIgnDlU0aCo0ILKexJ8zG1Ty4+9uqzqSyp68nnX/nOTOZ8eZFT8KsB8i0yQhA9gdO7 DXrQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=Fgg8ElksAUz6o7+3MKUeeOC3fL7mL4X436Su2V32LBc=; b=DDcNH/ZwkiQ3uXqLo49jC3hrqOKET9ir8jEa2MgjHudZVrsh98mtbsaVsHIbWPfYK+ MgguiQ/dCTEPaZ6f/XsOr2CiRYQPK4JQxTYlaljLD31qqv3KYTCip30RZGIECjtGeXox V3OZ1pGdrqKY8dGonAYGxR45qnXDTGgNuzwWrAkz8+0Ep12w17V6GSMGfGv7phrToMre 5t8BvcG7amnxgubzAGmjSpMmCLGwW9KsisJoFVA8NWs3QeSIOxZMoUGy0bBLm+jSZLA2 BVboXYcypX0DONGT979E4ZpQheebaqmRMN9wEUvAuHO4kGwGQb/Pby798VALfpfNnGWD XpHQ== X-Gm-Message-State: AJcUukdhtbXajsoLH2snPvXXewx8JVt9QJdt0ytw3R9JpXZNTxF6+R5a TVuvjIsMTKJTxSYIeqEwbiOosOVp X-Google-Smtp-Source: ALg8bN4ETtDj153wV/ZTaMS//1ZD5qK4qAkuNMZcUIG6Kw++DDfQivV61DG+N0mbD/XGSEQOkJ5epw== X-Received: by 2002:aa7:868f:: with SMTP id d15mr16325915pfo.225.1547759679292; Thu, 17 Jan 2019 13:14:39 -0800 (PST) Received: from localhost ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id f32sm3168606pgf.80.2019.01.17.13.14.38 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Jan 2019 13:14:38 -0800 (PST) From: Guenter Roeck To: Hardware Monitoring Cc: Jean Delvare , Guenter Roeck Subject: [PATCH 27/29] hwmon: (ltc4151) Use permission specific SENSOR[_DEVICE]_ATTR variants Date: Thu, 17 Jan 2019 13:13:47 -0800 Message-Id: <1547759629-23007-28-git-send-email-linux@roeck-us.net> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1547759629-23007-1-git-send-email-linux@roeck-us.net> References: <1547759629-23007-1-git-send-email-linux@roeck-us.net> Sender: linux-hwmon-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-hwmon@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Use SENSOR[_DEVICE]_ATTR[_2]_{RO,RW,WO} to simplify the source code, to improve readbility, and to reduce the chance of inconsistencies. Also replace any remaining S_ in the driver with octal values. The conversion was done automatically with coccinelle. The semantic patches and the scripts used to generate this commit log are available at https://github.com/groeck/coccinelle-patches/hwmon/. This patch does not introduce functional changes. It was verified by compiling the old and new files and comparing text and data sizes. Signed-off-by: Guenter Roeck --- drivers/hwmon/ltc4151.c | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/drivers/hwmon/ltc4151.c b/drivers/hwmon/ltc4151.c index b904cb547ffb..76c6fda76d95 100644 --- a/drivers/hwmon/ltc4151.c +++ b/drivers/hwmon/ltc4151.c @@ -131,7 +131,7 @@ static int ltc4151_get_value(struct ltc4151_data *data, u8 reg) return val; } -static ssize_t ltc4151_show_value(struct device *dev, +static ssize_t ltc4151_value_show(struct device *dev, struct device_attribute *da, char *buf) { struct sensor_device_attribute *attr = to_sensor_dev_attr(da); @@ -148,14 +148,11 @@ static ssize_t ltc4151_show_value(struct device *dev, /* * Input voltages. */ -static SENSOR_DEVICE_ATTR(in1_input, S_IRUGO, ltc4151_show_value, NULL, - LTC4151_VIN_H); -static SENSOR_DEVICE_ATTR(in2_input, S_IRUGO, ltc4151_show_value, NULL, - LTC4151_ADIN_H); +static SENSOR_DEVICE_ATTR_RO(in1_input, ltc4151_value, LTC4151_VIN_H); +static SENSOR_DEVICE_ATTR_RO(in2_input, ltc4151_value, LTC4151_ADIN_H); /* Currents (via sense resistor) */ -static SENSOR_DEVICE_ATTR(curr1_input, S_IRUGO, ltc4151_show_value, NULL, - LTC4151_SENSE_H); +static SENSOR_DEVICE_ATTR_RO(curr1_input, ltc4151_value, LTC4151_SENSE_H); /* * Finally, construct an array of pointers to members of the above objects, From patchwork Thu Jan 17 21:13:48 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Guenter Roeck X-Patchwork-Id: 10769139 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 062236C2 for ; Thu, 17 Jan 2019 21:14:43 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id EAA1E2A7A7 for ; Thu, 17 Jan 2019 21:14:42 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id DF2C12A7B1; Thu, 17 Jan 2019 21:14:42 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 6C3012A7A7 for ; Thu, 17 Jan 2019 21:14:42 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728853AbfAQVOm (ORCPT ); Thu, 17 Jan 2019 16:14:42 -0500 Received: from mail-pg1-f196.google.com ([209.85.215.196]:33603 "EHLO mail-pg1-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727148AbfAQVOm (ORCPT ); Thu, 17 Jan 2019 16:14:42 -0500 Received: by mail-pg1-f196.google.com with SMTP id z11so5000245pgu.0 for ; Thu, 17 Jan 2019 13:14:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=I1NW2cHc6U8DBYR2Q393W97w4CKya9h9ISLaDD/ej4k=; b=KCT4D5On5G9hO1iWz4ZHZDAm2yAYWteS915wMFTE5+BN5j0Yt0NkGPFyzFkKwbaqgd pBjF6Q+MNBj+A2wAGoGaFldNZ8DCz+MSYv9k/hhWVmD9ezEG/Vn3H6xkpZm22J52aI4D tzLeKCXkLuYIrP1dh0T3XvT6laqQ32fSn3FtQV1LdMxZtbqklXuYycwPZ+0uLN2y9f0Z MI0JdIB0Nuyg2zW2umydvkLphGLOttfwNq+u0EvVxfVkYInvDKTHPyy+cz/ZwUtvFKNw C7UEi/2LqAX6bfYGV3Df6sed0NpHcsBES0UxSez3YeZt0R4qQ9AnQOKg4XODnt7mXqKW 9e6A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=I1NW2cHc6U8DBYR2Q393W97w4CKya9h9ISLaDD/ej4k=; b=qzP9oFsm8BQx4UWVgvsryQVIgsA264yDwhbeNxb42a4LvsxyZ1UVfzEX1HnjCA2STq k5KdVG56Yywp/k9qHPw5S+067l058VsKvtrgXU4AJkjgQHO0VAUldqB9NEtQIXqSphsq GGhtbz050wh0NVj4l8ZFwtJb7xCOtM66WKxX3B167pKTGV8pR0tIgTvVmSK4kabins52 ESUBqkjI0FgmU0U1P5MvvFM/Aro3X2590EsPknyy4MqY2FwLFGCQ2nATN/caYwC2BkZV T6IlaI2CD50SHml8IldgKwMJpoRKiDnPUeG3BPwVLlhpmU64y8xXKFZ9GbE+BtBaFLP5 j5gw== X-Gm-Message-State: AJcUukfflbKDsY8x5TbUCLxU2ySRC3/Z9EoSztjEVUzmehINu5bh5uJT Hltrc2DJHrCRisnVWX6pPK9epSwm X-Google-Smtp-Source: ALg8bN7nzzqzNZbVUmF6zmZrHQ5Pouh5vOHO5lc0FC+WGo96nMHrS89qkhUM3tZQD7rlKXkOVhd9gA== X-Received: by 2002:a63:bd1a:: with SMTP id a26mr14841369pgf.121.1547759680845; Thu, 17 Jan 2019 13:14:40 -0800 (PST) Received: from localhost ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id n7sm4374072pff.36.2019.01.17.13.14.40 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Jan 2019 13:14:40 -0800 (PST) From: Guenter Roeck To: Hardware Monitoring Cc: Jean Delvare , Guenter Roeck Subject: [PATCH 28/29] hwmon: (ltc4222) Use permission specific SENSOR[_DEVICE]_ATTR variants Date: Thu, 17 Jan 2019 13:13:48 -0800 Message-Id: <1547759629-23007-29-git-send-email-linux@roeck-us.net> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1547759629-23007-1-git-send-email-linux@roeck-us.net> References: <1547759629-23007-1-git-send-email-linux@roeck-us.net> Sender: linux-hwmon-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-hwmon@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Use SENSOR[_DEVICE]_ATTR[_2]_{RO,RW,WO} to simplify the source code, to improve readbility, and to reduce the chance of inconsistencies. Also replace any remaining S_ in the driver with octal values. The conversion was done automatically with coccinelle. The semantic patches and the scripts used to generate this commit log are available at https://github.com/groeck/coccinelle-patches/hwmon/. This patch does not introduce functional changes. It was verified by compiling the old and new files and comparing text and data sizes. Signed-off-by: Guenter Roeck --- drivers/hwmon/ltc4222.c | 56 ++++++++++++++++++++++--------------------------- 1 file changed, 25 insertions(+), 31 deletions(-) diff --git a/drivers/hwmon/ltc4222.c b/drivers/hwmon/ltc4222.c index 88f747292816..32248f351a6e 100644 --- a/drivers/hwmon/ltc4222.c +++ b/drivers/hwmon/ltc4222.c @@ -94,7 +94,7 @@ static int ltc4222_get_value(struct device *dev, u8 reg) return val; } -static ssize_t ltc4222_show_value(struct device *dev, +static ssize_t ltc4222_value_show(struct device *dev, struct device_attribute *da, char *buf) { struct sensor_device_attribute *attr = to_sensor_dev_attr(da); @@ -106,7 +106,7 @@ static ssize_t ltc4222_show_value(struct device *dev, return snprintf(buf, PAGE_SIZE, "%d\n", value); } -static ssize_t ltc4222_show_bool(struct device *dev, +static ssize_t ltc4222_bool_show(struct device *dev, struct device_attribute *da, char *buf) { struct sensor_device_attribute_2 *attr = to_sensor_dev_attr_2(da); @@ -125,45 +125,39 @@ static ssize_t ltc4222_show_bool(struct device *dev, } /* Voltages */ -static SENSOR_DEVICE_ATTR(in1_input, S_IRUGO, ltc4222_show_value, NULL, - LTC4222_SOURCE1); -static SENSOR_DEVICE_ATTR(in2_input, S_IRUGO, ltc4222_show_value, NULL, - LTC4222_ADIN1); -static SENSOR_DEVICE_ATTR(in3_input, S_IRUGO, ltc4222_show_value, NULL, - LTC4222_SOURCE2); -static SENSOR_DEVICE_ATTR(in4_input, S_IRUGO, ltc4222_show_value, NULL, - LTC4222_ADIN2); +static SENSOR_DEVICE_ATTR_RO(in1_input, ltc4222_value, LTC4222_SOURCE1); +static SENSOR_DEVICE_ATTR_RO(in2_input, ltc4222_value, LTC4222_ADIN1); +static SENSOR_DEVICE_ATTR_RO(in3_input, ltc4222_value, LTC4222_SOURCE2); +static SENSOR_DEVICE_ATTR_RO(in4_input, ltc4222_value, LTC4222_ADIN2); /* * Voltage alarms * UV/OV faults are associated with the input voltage, and power bad and fet * faults are associated with the output voltage. */ -static SENSOR_DEVICE_ATTR_2(in1_min_alarm, S_IRUGO, ltc4222_show_bool, NULL, - LTC4222_FAULT1, FAULT_UV); -static SENSOR_DEVICE_ATTR_2(in1_max_alarm, S_IRUGO, ltc4222_show_bool, NULL, - LTC4222_FAULT1, FAULT_OV); -static SENSOR_DEVICE_ATTR_2(in2_alarm, S_IRUGO, ltc4222_show_bool, NULL, - LTC4222_FAULT1, FAULT_POWER_BAD | FAULT_FET_BAD); - -static SENSOR_DEVICE_ATTR_2(in3_min_alarm, S_IRUGO, ltc4222_show_bool, NULL, - LTC4222_FAULT2, FAULT_UV); -static SENSOR_DEVICE_ATTR_2(in3_max_alarm, S_IRUGO, ltc4222_show_bool, NULL, - LTC4222_FAULT2, FAULT_OV); -static SENSOR_DEVICE_ATTR_2(in4_alarm, S_IRUGO, ltc4222_show_bool, NULL, - LTC4222_FAULT2, FAULT_POWER_BAD | FAULT_FET_BAD); +static SENSOR_DEVICE_ATTR_2_RO(in1_min_alarm, ltc4222_bool, LTC4222_FAULT1, + FAULT_UV); +static SENSOR_DEVICE_ATTR_2_RO(in1_max_alarm, ltc4222_bool, LTC4222_FAULT1, + FAULT_OV); +static SENSOR_DEVICE_ATTR_2_RO(in2_alarm, ltc4222_bool, LTC4222_FAULT1, + FAULT_POWER_BAD | FAULT_FET_BAD); + +static SENSOR_DEVICE_ATTR_2_RO(in3_min_alarm, ltc4222_bool, LTC4222_FAULT2, + FAULT_UV); +static SENSOR_DEVICE_ATTR_2_RO(in3_max_alarm, ltc4222_bool, LTC4222_FAULT2, + FAULT_OV); +static SENSOR_DEVICE_ATTR_2_RO(in4_alarm, ltc4222_bool, LTC4222_FAULT2, + FAULT_POWER_BAD | FAULT_FET_BAD); /* Current (via sense resistor) */ -static SENSOR_DEVICE_ATTR(curr1_input, S_IRUGO, ltc4222_show_value, NULL, - LTC4222_SENSE1); -static SENSOR_DEVICE_ATTR(curr2_input, S_IRUGO, ltc4222_show_value, NULL, - LTC4222_SENSE2); +static SENSOR_DEVICE_ATTR_RO(curr1_input, ltc4222_value, LTC4222_SENSE1); +static SENSOR_DEVICE_ATTR_RO(curr2_input, ltc4222_value, LTC4222_SENSE2); /* Overcurrent alarm */ -static SENSOR_DEVICE_ATTR_2(curr1_max_alarm, S_IRUGO, ltc4222_show_bool, NULL, - LTC4222_FAULT1, FAULT_OC); -static SENSOR_DEVICE_ATTR_2(curr2_max_alarm, S_IRUGO, ltc4222_show_bool, NULL, - LTC4222_FAULT2, FAULT_OC); +static SENSOR_DEVICE_ATTR_2_RO(curr1_max_alarm, ltc4222_bool, LTC4222_FAULT1, + FAULT_OC); +static SENSOR_DEVICE_ATTR_2_RO(curr2_max_alarm, ltc4222_bool, LTC4222_FAULT2, + FAULT_OC); static struct attribute *ltc4222_attrs[] = { &sensor_dev_attr_in1_input.dev_attr.attr, From patchwork Thu Jan 17 21:13:49 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Guenter Roeck X-Patchwork-Id: 10769141 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id D1EFA6C2 for ; Thu, 17 Jan 2019 21:14:44 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id C1DA12A7B0 for ; Thu, 17 Jan 2019 21:14:44 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id B64412A7A7; Thu, 17 Jan 2019 21:14:44 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 5DDBB2A7A7 for ; Thu, 17 Jan 2019 21:14:44 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728924AbfAQVOo (ORCPT ); Thu, 17 Jan 2019 16:14:44 -0500 Received: from mail-pg1-f194.google.com ([209.85.215.194]:33603 "EHLO mail-pg1-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727148AbfAQVOo (ORCPT ); Thu, 17 Jan 2019 16:14:44 -0500 Received: by mail-pg1-f194.google.com with SMTP id z11so5000271pgu.0 for ; Thu, 17 Jan 2019 13:14:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=UQav4Opv0hhsKj7mfF9ZhNlerLO3yXWgigWMegpFZUk=; b=ktHbSnlM9HkrQidcWsJ3diymAH3naxWACK1G6xn/r1yRsO5cfc0ojJ3atifa3t8ysL EFXBKaaL1ktMROba9X5GbtSAlaDIqs3iLzU/Qkz63UAU6gFi9DPyHfrhczEgIODI4peX Ei7sBB+kkG09jlEgJnsvgA5gW6dO+YKD72chd1N7TSGz8ppqDzzBl0ucGfQFxyDY6M1D Nri5xMybCgaeOxVLSEj0GlxAOCr0TUjVkhiDLn1SoNPcCxEpkS6LPIHmckztV2tmCThb ocMdWN1O+zzldUEABjJ9FrE/powIjW89gS0HOmRNLI2AvOZ+UAaotQ8DuoUqZY5O2MKk aOeA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=UQav4Opv0hhsKj7mfF9ZhNlerLO3yXWgigWMegpFZUk=; b=EaSxDsD9R/gMtWwFyLAyh2PSYWJPqhAT4evXfsYQQXL/kjFY/fHcU+6FbnJNCZ64gG bMwzV99iI5my8fuYF+hcknn8Nm+B6yM/suVmlKENUh6ZnFr+iCQGuKNLQUYoqbMT06xn qFijfDbztULiZRKXI/sDH0OWwnR0LX+QlLIBdfIVgzQ5IwEkpF9zZEhm9OLdMq8GnZgm PKC1TthhffAIwxBbtHtMSSFZ/dg2re1yAXdNgZ6gmrjtJ43EE+2TivBaDTYs6qa+oskQ 83aOfOhY8XJF226+7nbZTywBse9cPCoYELlKYHbkY1bylQD6hi+nROf552QeVeOUzV+T ImkQ== X-Gm-Message-State: AJcUukdjzMgxrnKORRY+HOyyIphcJWtwD0sOhNVZKCcrIDB5EM2yxlYx KMEU9aGp/vQFWVENiXe6XWMSZH2K X-Google-Smtp-Source: ALg8bN4UnjachFUkC4H8nZIoyTO7N/hHM3Uz0EnWMJMS2szbPIImn/oqxwm5DZW6TwBklwwnVMGuzw== X-Received: by 2002:a65:4381:: with SMTP id m1mr14653748pgp.358.1547759682435; Thu, 17 Jan 2019 13:14:42 -0800 (PST) Received: from localhost ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id n70sm5057409pfi.185.2019.01.17.13.14.41 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Jan 2019 13:14:41 -0800 (PST) From: Guenter Roeck To: Hardware Monitoring Cc: Jean Delvare , Guenter Roeck Subject: [PATCH 29/29] hwmon: (ltc4245) Replace S_ with octal values Date: Thu, 17 Jan 2019 13:13:49 -0800 Message-Id: <1547759629-23007-30-git-send-email-linux@roeck-us.net> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1547759629-23007-1-git-send-email-linux@roeck-us.net> References: <1547759629-23007-1-git-send-email-linux@roeck-us.net> Sender: linux-hwmon-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-hwmon@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Replace S_ with octal values. The conversion was done automatically with coccinelle. The semantic patches and the scripts used to generate this commit log are available at https://github.com/groeck/coccinelle-patches/hwmon/. This patch does not introduce functional changes. It was verified by compiling the old and new files and comparing text and data sizes. Signed-off-by: Guenter Roeck --- drivers/hwmon/ltc4245.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/hwmon/ltc4245.c b/drivers/hwmon/ltc4245.c index 082f0a0bd8a0..34d0653ca607 100644 --- a/drivers/hwmon/ltc4245.c +++ b/drivers/hwmon/ltc4245.c @@ -362,11 +362,11 @@ static umode_t ltc4245_is_visible(const void *_data, case hwmon_in_input: if (channel > 9 && !data->use_extra_gpios) return 0; - return S_IRUGO; + return 0444; case hwmon_in_min_alarm: if (channel > 8) return 0; - return S_IRUGO; + return 0444; default: return 0; } @@ -374,14 +374,14 @@ static umode_t ltc4245_is_visible(const void *_data, switch (attr) { case hwmon_curr_input: case hwmon_curr_max_alarm: - return S_IRUGO; + return 0444; default: return 0; } case hwmon_power: switch (attr) { case hwmon_power_input: - return S_IRUGO; + return 0444; default: return 0; }