[PATCH v2 1/1] device property: Document how to check for the property presence
From: Andy Shevchenko
Date: Wed Mar 18 2026 - 10:43:37 EST
Currently it's unclear if one may or may not rely on the error codes
returned from the property getters to check for the property presence.
Clarify this by updating kernel-doc for fwnode_property_*() and
device_property_*() where it's applicable.
Reported-by: Guenter Roeck <linux@xxxxxxxxxxxx>
Closes: https://lore.kernel.org/r/4b24f1f4-b395-467a-81b7-1334a2d48845@xxxxxxxxxxxx
Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
---
In v2:
- dropped "In order to ..." in *_property_read_*() docs (Sakari)
- replaced 'correct' with 'unambiguous' in the doc for *_property_present()
- fixed Closes link (Geert)
- Cc'ed to DT (Geert)
drivers/base/property.c | 14 +++++++++++---
1 file changed, 11 insertions(+), 3 deletions(-)
diff --git a/drivers/base/property.c b/drivers/base/property.c
index 8d9a34be57fb..d16e9c5f1921 100644
--- a/drivers/base/property.c
+++ b/drivers/base/property.c
@@ -38,6 +38,8 @@ EXPORT_SYMBOL_GPL(__dev_fwnode_const);
* @propname: Name of the property
*
* Check if property @propname is present in the device firmware description.
+ * This function is the unambiguous way to check that given property is present
+ * in the device firmware description.
*
* Return: true if property @propname is present. Otherwise, returns false.
*/
@@ -52,6 +54,10 @@ EXPORT_SYMBOL_GPL(device_property_present);
* @fwnode: Firmware node whose property to check
* @propname: Name of the property
*
+ * Check if property @propname is present in the firmware node description.
+ * This function is the unambiguous way to check that given property is present
+ * in the firmware node description.
+ *
* Return: true if property @propname is present. Otherwise, returns false.
*/
bool fwnode_property_present(const struct fwnode_handle *fwnode,
@@ -75,9 +81,9 @@ EXPORT_SYMBOL_GPL(fwnode_property_present);
* @dev: Device whose property is being checked
* @propname: Name of the property
*
- * Return if property @propname is true or false in the device firmware description.
+ * Use device_property_present() to check for the property presence.
*
- * Return: true if property @propname is present. Otherwise, returns false.
+ * Return: if property @propname is true or false in the device firmware description.
*/
bool device_property_read_bool(const struct device *dev, const char *propname)
{
@@ -90,7 +96,9 @@ EXPORT_SYMBOL_GPL(device_property_read_bool);
* @fwnode: Firmware node whose property to check
* @propname: Name of the property
*
- * Return if property @propname is true or false in the firmware description.
+ * Use fwnode_property_present() to check for the property presence.
+ *
+ * Return: if property @propname is true or false in the firmware node description.
*/
bool fwnode_property_read_bool(const struct fwnode_handle *fwnode,
const char *propname)
--
2.50.1