[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20260119-add_dt_default-v1-0-db4787ea7a9e@nxp.com>
Date: Mon, 19 Jan 2026 10:02:53 +0800
From: "Peng Fan (OSS)" <peng.fan@....nxp.com>
To: Rob Herring <robh@...nel.org>, Saravana Kannan <saravanak@...nel.org>,
Liam Girdwood <lgirdwood@...il.com>, Mark Brown <broonie@...nel.org>,
Alexis Czezar Torreno <alexisczezar.torreno@...log.com>
Cc: devicetree@...r.kernel.org, linux-kernel@...r.kernel.org,
Peng Fan <peng.fan@....com>
Subject: [PATCH 0/5] of: Introduce *_read_*_default helpers and convert
regulator drivers
Introduces new helper functions of_property_read_u32_default() and
of_property_read_s32_default() to simplify reading optional Device Tree
properties with well-defined default values.
A common pattern in drivers is to initialize a variable with a default
value and then override it when a DT property is present, or to explicitly
check the return value of of_property_read_*() and fall back to a default.
While correct, this leads to repetitive boilerplate code and obscures the
intent that the property is optional.
The new helpers make this intent explicit by directly expressing
“optional property with default”. They intentionally ignore error codes
and are meant for cases where a missing or invalid property is not
considered fatal and a sensible default exists.
On top of introducing the helpers, this series converts several
regulator drivers to use them, reducing boilerplate while preserving
existing behavior. No functional changes, except for a minor fix in one
error path where dev_err_probe() is now called with a proper error code.
Signed-off-by: Peng Fan <peng.fan@....com>
---
Peng Fan (5):
of: Add of_property_read_[u32,s32]_default
regulator: of: Use of_property_read_u32_default()
regulator: adp5055: use of_property_read_[u32|s32]_default()
regulator: max77620: Use of_property_read_u32_default() for DT parsing
regulator: fan53555: Use of_property_read_u32_default() for DT parsing
drivers/regulator/adp5055-regulator.c | 30 ++++++++++---------------
drivers/regulator/fan53555.c | 8 ++-----
drivers/regulator/max77620-regulator.c | 40 ++++++++++++++--------------------
drivers/regulator/of_regulator.c | 18 ++++++---------
include/linux/of.h | 38 ++++++++++++++++++++++++++++++++
5 files changed, 74 insertions(+), 60 deletions(-)
---
base-commit: 0f853ca2a798ead9d24d39cad99b0966815c582a
change-id: 20260115-add_dt_default-4ca95f2a6cd7
Best regards,
--
Peng Fan <peng.fan@....com>
Powered by blists - more mailing lists