On Sat, Jan 25, 2025 at 01:39:45PM +0100, Wolfram Sang wrote: > The I2C core now offers a debugfs-directory per client. Use it and > remove the custom handling. > > Signed-off-by: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx> > --- > static int sht3x_serial_number_read(struct sht3x_data *data) > { > int ret; > @@ -931,27 +913,17 @@ static int sht3x_probe(struct i2c_client *client) > return ret; > > ret = sht3x_serial_number_read(data); > - if (ret) { > + if (ret) > dev_dbg(dev, "unable to read serial number\n"); > - } else { > - sht3x_debugfs_init(data); > - ret = devm_add_action_or_reset(dev, > - sht3x_debugfs_remove, > - data->sensor_dir); > - if (ret) > - return ret; > - } > - > - hwmon_dev = devm_hwmon_device_register_with_info(dev, > - client->name, > - data, > - &sht3x_chip_info, > - sht3x_groups); > > + hwmon_dev = devm_hwmon_device_register_with_info(dev, client->name, data, > + &sht3x_chip_info, sht3x_groups); > if (IS_ERR(hwmon_dev)) > - dev_dbg(dev, "unable to register hwmon device\n"); > + return PTR_ERR(hwmon_dev); > > - return PTR_ERR_OR_ZERO(hwmon_dev); > + debugfs_create_u32("serial_number", 0444, client->debugfs, &data->serial_number); This changes code behavior: It now always creates the debugfs file even if the serial number is not available. The debugfs file should only be created if the serial number is available. Guenter