On Tue, Feb 06, 2024 at 3:43 AM +0800, Guenter Roeck wrote:
Oh! You're right.
On Mon, Feb 05, 2024 at 11:20:13PM +0800, Cosmo Chou wrote:
This driver implements support for temperature monitoring of Astera Labs[ ... ]
PT5161L series PCIe retimer chips.
This driver implementation originates from the CSDK available at
Link: https://github.com/facebook/openbmc/tree/helium/common/recipes-lib/retimer-v2.14
The communication protocol utilized is based on the I2C/SMBus standard.
Signed-off-by: Cosmo Chou <chou.cosmo@xxxxxxxxx>
---
+static ssize_t pt5161l_debugfs_read_fw_ver(struct file *file, char __user *buf,
+ size_t count, loff_t *ppos)
+{
+ struct pt5161l_data *data = file->private_data;
+ int ret;
+ char ver[32];
+
+ mutex_lock(&data->lock);
+ ret = pt5161l_fwsts_check(data);
+ mutex_unlock(&data->lock);
+ if (ret)
+ return ret;
+
+ ret = snprintf(ver, sizeof(ver), "%u.%u.%u\n", data->fw_ver.major,
+ data->fw_ver.minor, data->fw_ver.build);
+ if (ret < 0)
+ return ret;
+
You almost got me here ;-). snprintf() never returns a negative error code,
so checking for it is not necessary.
It's just to include the string terminator '\0'.+ return simple_read_from_buffer(buf, count, ppos, ver, ret + 1);
Number of bytes written plus 1 ? Why ?