]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
hwmon: (pmbus/core) Add PMBUS_REVISION in debugfs
authorNinad Palsule <ninad@linux.ibm.com>
Mon, 16 Dec 2024 17:50:39 +0000 (11:50 -0600)
committerGuenter Roeck <linux@roeck-us.net>
Mon, 16 Dec 2024 18:44:36 +0000 (10:44 -0800)
Add debugfs file for the PMBUS_REVISION command. This command provides
information about PMBus protocol revision number.

Signed-off-by: Ninad Palsule <ninad@linux.ibm.com>
Link: https://lore.kernel.org/r/20241216175044.4144442-2-ninad@linux.ibm.com
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
drivers/hwmon/pmbus/pmbus_core.c

index a7000314e5add9f263d3f2ad1650e1a9e66043b1..787683e83db6c248c3965796d16838534588bb6e 100644 (file)
@@ -3534,11 +3534,11 @@ static int pmbus_init_debugfs(struct i2c_client *client,
 
        /*
         * Allocate the max possible entries we need.
-        * 6 entries device-specific
+        * 7 entries device-specific
         * 10 entries page-specific
         */
        entries = devm_kcalloc(data->dev,
-                              6 + data->info->pages * 10, sizeof(*entries),
+                              7 + data->info->pages * 10, sizeof(*entries),
                               GFP_KERNEL);
        if (!entries)
                return -ENOMEM;
@@ -3551,6 +3551,15 @@ static int pmbus_init_debugfs(struct i2c_client *client,
         * assume that values of the following registers are the same for all
         * pages and report values only for page 0.
         */
+       if (pmbus_check_byte_register(client, 0, PMBUS_REVISION)) {
+               entries[idx].client = client;
+               entries[idx].page = 0;
+               entries[idx].reg = PMBUS_REVISION;
+               debugfs_create_file("revision", 0444, data->debugfs,
+                                   &entries[idx++],
+                                   &pmbus_debugfs_ops);
+       }
+
        if (pmbus_check_block_register(client, 0, PMBUS_MFR_ID)) {
                entries[idx].client = client;
                entries[idx].page = 0;