Commit b0ddda57 authored by Abdurrahman Hussain's avatar Abdurrahman Hussain Committed by Guenter Roeck
Browse files

hwmon: (pmbus/adm1266) include adapter number in GPIO line label



Platforms that fit more than one ADM1266 on different I2C buses at
the same 7-bit slave address (a common shelf-management pattern,
e.g. one device per power domain) end up with duplicate GPIO line
labels because the existing format only includes the slave address.
Including the adapter number disambiguates them.

The adapter number is formatted as decimal to match the i2c-N
convention used elsewhere in Linux (sysfs paths, dev nodes); the
slave address keeps its conventional hexadecimal form.

The label is purely informational (visible via gpioinfo and the
gpiochip /sys/class/gpio name); no DT or ABI consumer parses it.

Fixes: d98dfad3 ("hwmon: (pmbus/adm1266) Add support for GPIOs")
Signed-off-by: default avatarAbdurrahman Hussain <abdurrahman@nexthop.ai>
Link: https://lore.kernel.org/r/20260512-adm1266-v3-5-a81a479b0bb0@nexthop.ai


Signed-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
parent 487566cb
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -291,8 +291,9 @@ static int adm1266_config_gpio(struct adm1266_data *data)
	int i;

	for (i = 0; i < ARRAY_SIZE(data->gpio_names); i++) {
		gpio_name = devm_kasprintf(&data->client->dev, GFP_KERNEL, "adm1266-%x-%s",
					   data->client->addr, adm1266_names[i]);
		gpio_name = devm_kasprintf(&data->client->dev, GFP_KERNEL, "adm1266-%d-%x-%s",
					   data->client->adapter->nr, data->client->addr,
					   adm1266_names[i]);
		if (!gpio_name)
			return -ENOMEM;