CC Marc, Eduardo On Tue, Oct 2, 2018 at 2:50 PM Guenter Roeck <linux@xxxxxxxxxxxx> wrote: > On 10/02/2018 01:35 AM, Cao Van Dong wrote: > > In __hwmon_device_register() function of hwmon.c, we have assigned 'dev' directly to 'hdev->parent'. > > Formerly, when registering the hwmon device, we pass NULL as the device. This is not affected. > > Recently, the developer has replaced the parameter NULL as the device by the actual device. > > This causes the "No sensors found" error. This patch is to fix this error. > > > > This patch is based on the v4.19-rc3 tag. > > > > NACK. > > This is wrong. The passed device is the hwmon driver's parent device. Using that device's > parent would be wrong. Indeed, that device could be a platform device with no parent. > The problem must be fixed in the calling code. > > Guenter > > > --- > > drivers/hwmon/hwmon.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/drivers/hwmon/hwmon.c b/drivers/hwmon/hwmon.c > > index 33d5128..7c8d3cb 100644 > > --- a/drivers/hwmon/hwmon.c > > +++ b/drivers/hwmon/hwmon.c > > @@ -610,7 +610,7 @@ __hwmon_device_register(struct device *dev, const char *name, void *drvdata, > > > > hwdev->name = name; > > hdev->class = &hwmon_class; > > - hdev->parent = dev; > > + hdev->parent = dev->parent; > > hdev->of_node = dev ? dev->of_node : NULL; > > hwdev->chip = chip; > > dev_set_drvdata(hdev, drvdata);