diff --git a/readd.cpp b/readd.cpp
index c7d0466..454ac62 100644
--- a/readd.cpp
+++ b/readd.cpp
@@ -37,7 +37,7 @@
     auto path = (*options)["of-name"];
     if (path != ArgumentParser::empty_string)
     {
-        path = sysfs::findHwmon(path);
+        path = sysfs::findHwmonFromOFPath(path);
     }
 
     if (path == ArgumentParser::empty_string)
diff --git a/sysfs.cpp b/sysfs.cpp
index af5f86a..4ea32b2 100644
--- a/sysfs.cpp
+++ b/sysfs.cpp
@@ -197,7 +197,7 @@
     return emptyString;
 }
 
-std::string findHwmon(const std::string& ofNode)
+std::string findHwmonFromOFPath(const std::string& ofNode)
 {
     static constexpr auto hwmonRoot = "/sys/class/hwmon";
 
diff --git a/sysfs.hpp b/sysfs.hpp
index 3bcca53..e673205 100644
--- a/sysfs.hpp
+++ b/sysfs.hpp
@@ -39,7 +39,7 @@
         const std::string& iochanneldir,
         const std::string& phandledir);
 
-/** @brief Find hwmon instances
+/** @brief Find hwmon instances from an open-firmware device tree path
  *
  *  Look for a matching hwmon instance given an
  *  open firmware device path.
@@ -49,7 +49,7 @@
  *  @returns[in] - The hwmon instance path or an empty
  *                 string if no match is found.
  */
-std::string findHwmon(const std::string& ofNode);
+std::string findHwmonFromOFPath(const std::string& ofNode);
 
 /** @brief Return the path to use for a call out.
  *
diff --git a/test/find_hwmon.cpp b/test/find_hwmon.cpp
index fbb203f..1142ad1 100644
--- a/test/find_hwmon.cpp
+++ b/test/find_hwmon.cpp
@@ -27,7 +27,7 @@
 
     try
     {
-        std::cout << sysfs::findHwmon(argv[1]) << '\n';
+        std::cout << sysfs::findHwmonFromOFPath(argv[1]) << '\n';
     }
     catch (const std::exception& e)
     {
