From nobody Fri Apr 3 22:31:48 2026 Received: from mail-wm1-f44.google.com (mail-wm1-f44.google.com [209.85.128.44]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C595C2D12ED for ; Sun, 22 Mar 2026 16:26:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.44 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774196788; cv=none; b=rjfTbu8bQ1MiIEdLTHiOWiKVEl4gOyXos8jldi1nG7rt6fE38X1AiztyVayPUK5It7wDUoDWaegm7c2qezeQ3CwP3ape5nfZyKiovN6+HpPpiZ5YrADVtTItlkKRWjIKlOZJ6FLNvLXggX4RPW0oO96DgUExwSw1iqKThVKJdMY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774196788; c=relaxed/simple; bh=MDw4Q4le01sBWOPiEMDkhHEAdY6ta5EZBJgpWx3GlPs=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=OjH3ZXbYziYrx3ifpU/CSMfZviovUc0YIDVI/4ri1KAf/pB+IAqhAR4Syr9DHyt2DzVPKaSug9IdPggPUnvTpqfMh/rhemS17WHbPm7SdaTofXORR9d9U1rfwB5AAxojZx+oIuq/jPNUs0UmM8/cHc/lNNONMxHFTkxCjtpS3uM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=jr2C+FAC; arc=none smtp.client-ip=209.85.128.44 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="jr2C+FAC" Received: by mail-wm1-f44.google.com with SMTP id 5b1f17b1804b1-487035181a7so7829585e9.2 for ; Sun, 22 Mar 2026 09:26:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1774196785; x=1774801585; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=bF+t+AJlmrsoFM2ABTlMfmbX6sn3UthH749b4cE0NCk=; b=jr2C+FACfHjzaOOBfkzzTVM1roCYDnQTsiZNpO1D4oy79LMCdXsrjtHZhxr8gW+dHx BqWvQAXYXWjv5iUhRO4GgiRnTV5FzQWVT8eiZtJJwNcAKJ9IrAtADfVAg8p3qY2nr+TV G3BuAODhg8zGUN0Kvlpx3l7QvYfXmUh2XeRDNxET52VAQGOVUxk77gPmADdRSUbXbyd/ 1W449ffPza4aZbfzad1SiUqRO6st7/mG1HA00o26jVPUZx+c/lM4EgBnMUsMt1jxYslX Hcz0LaJGdAq3s9lGIWMwIqPW7alb72dkaEg8O4TN2djKxlmPQWg4Vr+MONHgP4TAjfGa OPhg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774196785; x=1774801585; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=bF+t+AJlmrsoFM2ABTlMfmbX6sn3UthH749b4cE0NCk=; b=DCqQtRD93PTIYC80p80QWIlfdQHQlmg0inpinFSF0zVedtHFQAqH7q/85j4Wm8AkwY hyETL6A4mMF71ivZ8hepI+e6dFT71bgbECp2sOlmvHxocdTV4+5VgR4BPGI7w2nHycB2 U1jsC6ASAbT/yUdANT23dJbU1u1zjYPM8UcI60fklWvlqellMDsI6/YUlZk1Go3sH54p NFo3b3VZ5yOb2RKAijcVzn9wAIObVP1h3F339pveypOEVZ9sW4922AilrTw7yJ6IfRcr QYKAhkAWweFnY6st5DgHBlA+udufwsAoOBSj4m163aTHwFK3wYe2pK9V519wtqdCWSh9 id5w== X-Forwarded-Encrypted: i=1; AJvYcCU+RmM0GkbMTS6AAp+ZOt5CavgZNmx9QpnzowYAnKfK+IntCZZ9W0diGxMGV6wjPzmYGCIL9lEfVcJTPW0=@vger.kernel.org X-Gm-Message-State: AOJu0YwauG+g6/Gs2L05MxSCHCJdHW3PB+noLcFNEro/N4WeXrPq2Kim VX1LLbtZLMjKuz7SreNa5FMfLNQuo9ISwiioSeDy3iq4t1IRxtYwxHTtfx+utF8M X-Gm-Gg: ATEYQzwwpbLwna4pAmxGCzSKhBiz41h6+LjOVvpDeDWmmKzWner959gqhUgntCDXTzb 0ZYm8DRI0EyNN/EEh6+ZCYRZVlT2R9MH062g6SpIYSnEVs8AA1pgIUI2f8891ef3NK/0Z3BMdFm UK5jcnXRS3/DIjyoi5I1dOmotB/gjADaPV3pO9oLZY/K/dpLPDk0uh7YHhrMnMp3e3+lvE5lErw rR7sIqPCPCbBfbOV3oHZG8GEPcMh5DV4nyCd5N4ya7rC7qeBBDlgb6THQu6XYG4GH/9dfXK5VCs 08W/vUdo7nUVWbCu5jWu1pPsVZf72tAGVUtX4fAsyLqaqA8Fc5H6IWcKbtpCAicL5gJAC62OFfH DRZ3ARgf0P3jkr2GLAoY2AYI1J9h4fYnK8uYi3MbvsrVFd6/NSuUcOKvTn7LbJ1FpR6vMGQYEqE j7NFHf3vJ86w7tLLD+tQ8BCTPjazjHoV6IT9cTWp5d3uaspJCoIife6z1xHwY5tY+0Wqr9hYOk X-Received: by 2002:a05:600c:c167:b0:486:fc94:d8f2 with SMTP id 5b1f17b1804b1-486fedbc066mr129097055e9.14.1774196784559; Sun, 22 Mar 2026 09:26:24 -0700 (PDT) Received: from flaviu-Aspire-E5-572G.. ([5.15.232.50]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-486fe88ef4esm64071655e9.10.2026.03.22.09.26.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 22 Mar 2026 09:26:23 -0700 (PDT) From: Flaviu Nistor To: Guenter Roeck Cc: Flaviu Nistor , linux-hwmon@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v2] hwmon: lm75: Add support for label Date: Sun, 22 Mar 2026 18:26:16 +0200 Message-ID: <20260322162616.102229-1-flaviu.nistor@gmail.com> X-Mailer: git-send-email 2.43.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Add support for label sysfs attribute similar to other hwmon devices. This is particularly useful for systems with multiple sensors on the same board, where identifying individual sensors is much easier since labels can be defined via device tree. Signed-off-by: Flaviu Nistor --- - Drop the binding change since they are not necessary. - Implement changes suggested by Guenter Roeck. - Link to v1: https://lore.kernel.org/all/20260311105809.107357-2-flaviu.ni= stor@gmail.com/ drivers/hwmon/lm75.c | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/drivers/hwmon/lm75.c b/drivers/hwmon/lm75.c index eda93a8c23c9..f1a1e5b888f6 100644 --- a/drivers/hwmon/lm75.c +++ b/drivers/hwmon/lm75.c @@ -108,6 +108,7 @@ static const unsigned short normal_i2c[] =3D { 0x48, 0x= 49, 0x4a, 0x4b, 0x4c, #define PCT2075_REG_IDLE 0x04 =20 struct lm75_data { + const char *label; struct regmap *regmap; u16 orig_conf; u8 resolution; /* In bits, 9 to 16 */ @@ -363,6 +364,16 @@ static irqreturn_t lm75_alarm_handler(int irq, void *p= rivate) return IRQ_HANDLED; } =20 +static int lm75_read_string(struct device *dev, enum hwmon_sensor_types ty= pe, + u32 attr, int channel, const char **str) +{ + struct lm75_data *data =3D dev_get_drvdata(dev); + + *str =3D data->label; + + return 0; +} + static int lm75_read(struct device *dev, enum hwmon_sensor_types type, u32 attr, int channel, long *val) { @@ -534,6 +545,9 @@ static umode_t lm75_is_visible(const void *data, enum h= wmon_sensor_types type, switch (attr) { case hwmon_temp_input: return 0444; + case hwmon_temp_label: + /* Hide label node if label is not provided */ + return config_data->label ? 0444 : 0; case hwmon_temp_max: case hwmon_temp_max_hyst: return 0644; @@ -553,13 +567,14 @@ static const struct hwmon_channel_info * const lm75_i= nfo[] =3D { HWMON_CHANNEL_INFO(chip, HWMON_C_REGISTER_TZ | HWMON_C_UPDATE_INTERVAL), HWMON_CHANNEL_INFO(temp, - HWMON_T_INPUT | HWMON_T_MAX | HWMON_T_MAX_HYST | + HWMON_T_INPUT | HWMON_T_LABEL | HWMON_T_MAX | HWMON_T_MAX_HYST | HWMON_T_ALARM), NULL }; =20 static const struct hwmon_ops lm75_hwmon_ops =3D { .is_visible =3D lm75_is_visible, + .read_string =3D lm75_read_string, .read =3D lm75_read, .write =3D lm75_write, }; @@ -721,6 +736,9 @@ static int lm75_generic_probe(struct device *dev, const= char *name, /* needed by custom regmap callbacks */ dev_set_drvdata(dev, data); =20 + /* Save the connected input label if available */ + device_property_read_string(dev, "label", &data->label); + data->kind =3D kind; data->regmap =3D regmap; =20 --=20 2.43.0