Re: [PATCH 1/2] hwmon: (ibmpowernv) Quieten when probing finds no device

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 10/31/2014 06:51 PM, Guenter Roeck wrote:
On 10/31/2014 02:41 AM, Jean Delvare wrote:
Hi Michael,

On Fri, 31 Oct 2014 17:45:22 +1100, Michael Ellerman wrote:
Because we build kernels with drivers built in for many platforms, it's
normal for the ibmpowernv driver to be loaded on systems that don't have
the appropriate hardware.

Currently the driver spams the log with:

   ibmpowernv ibmpowernv.0: Opal node 'sensors' not found
   ibmpowernv: Platfrom driver probe failed

But there is no error, this machine is not a powernv and doesn't have
the hardware. So change the sensors message to dev_dbg(), and only print
an error about the probe failing if it's not ENODEV.

Also fix the spelling of "Platfrom" and print the actual error value.

Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
---
  drivers/hwmon/ibmpowernv.c | 6 ++++--
  1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/hwmon/ibmpowernv.c b/drivers/hwmon/ibmpowernv.c
index d2bf2c97ae70..6a30eeea94be 100644
--- a/drivers/hwmon/ibmpowernv.c
+++ b/drivers/hwmon/ibmpowernv.c
@@ -181,7 +181,7 @@ static int __init populate_attr_groups(struct platform_device *pdev)

      opal = of_find_node_by_path("/ibm,opal/sensors");
      if (!opal) {
-        dev_err(&pdev->dev, "Opal node 'sensors' not found\n");
+        dev_dbg(&pdev->dev, "Opal node 'sensors' not found\n");
          return -ENODEV;
      }

@@ -335,7 +335,9 @@ static int __init ibmpowernv_init(void)

err = platform_driver_probe(&ibmpowernv_driver, ibmpowernv_probe);
      if (err) {
-        pr_err("Platfrom driver probe failed\n");
+        if (err != -ENODEV)
+            pr_err("Platform driver probe failed (%d)\n", err);

          goto exit_device_del;
      }


Looks reasonable.

The reduced noise, ok, but a better fix would be to not attempt to load
the driver in the first place. This should be doable by introducing an
of_match_table.

The parent 'sensors' node doesn't have a compatible property, rather individual child sensors have. So, instead we can introduce 'platform_driver.id_table' for
the probe.

Thanks,
Neelesh


Guenter

Reviewed-by: Jean Delvare <jdelvare@xxxxxxx>




_______________________________________________
lm-sensors mailing list
lm-sensors@xxxxxxxxxxxxxx
http://lists.lm-sensors.org/mailman/listinfo/lm-sensors




[Index of Archives]     [Linux Kernel]     [Linux Hardware Monitoring]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux