From: Adrian Hunter <adrian.hunter@intel.com>
To: Akhil R <akhilrajeev@nvidia.com>,
Alexandre Belloni <alexandre.belloni@bootlin.com>
Cc: Frank Li <Frank.Li@nxp.com>,
Miquel Raynal <miquel.raynal@bootlin.com>,
Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Guenter Roeck <linux@roeck-us.net>,
Philipp Zabel <p.zabel@pengutronix.de>,
Jon Hunter <jonathanh@nvidia.com>,
Thierry Reding <thierry.reding@kernel.org>,
<linux-i3c@lists.infradead.org>, <devicetree@vger.kernel.org>,
<linux-hwmon@vger.kernel.org>, <linux-tegra@vger.kernel.org>,
<linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v6 02/12] i3c: master: Use unified device property interface
Date: Wed, 22 Jul 2026 13:38:43 +0300 [thread overview]
Message-ID: <97465893-3650-4f37-98b7-1db76fc6fd03@intel.com> (raw)
In-Reply-To: <20260721040805.1696503-3-akhilrajeev@nvidia.com>
On 21/07/2026 07:07, Akhil R wrote:
> Replace all OF-specific functions with unified device property functions
> as a prerequisite to support both ACPI and device tree.
>
> Reviewed-by: Frank Li <Frank.Li@nxp.com>
> Signed-off-by: Akhil R <akhilrajeev@nvidia.com>
> ---
> drivers/i3c/master.c | 77 +++++++++++++++++++++-----------------
> include/linux/i3c/master.h | 5 ++-
> 2 files changed, 46 insertions(+), 36 deletions(-)
>
> diff --git a/drivers/i3c/master.c b/drivers/i3c/master.c
> index f1be38a640ca..4b3d9628bc39 100644
> --- a/drivers/i3c/master.c
> +++ b/drivers/i3c/master.c
> @@ -13,10 +13,12 @@
> #include <linux/dma-mapping.h>
> #include <linux/err.h>
> #include <linux/export.h>
> +#include <linux/i2c.h>
> #include <linux/kernel.h>
> #include <linux/list.h>
> #include <linux/of.h>
> #include <linux/pm_runtime.h>
> +#include <linux/property.h>
> #include <linux/slab.h>
> #include <linux/spinlock.h>
> #include <linux/workqueue.h>
> @@ -491,7 +493,7 @@ static void i3c_bus_cleanup(struct i3c_bus *i3cbus)
> mutex_unlock(&i3c_core_lock);
> }
>
> -static int i3c_bus_init(struct i3c_bus *i3cbus, struct device_node *np)
> +static int i3c_bus_init(struct i3c_bus *i3cbus, struct fwnode_handle *fwnode)
> {
> int ret, start, end, id = -1;
>
> @@ -501,8 +503,8 @@ static int i3c_bus_init(struct i3c_bus *i3cbus, struct device_node *np)
> i3c_bus_init_addrslots(i3cbus);
> i3cbus->mode = I3C_BUS_MODE_PURE;
>
> - if (np)
> - id = of_alias_get_id(np, "i3c");
> + if (fwnode && is_of_node(fwnode))
> + id = of_alias_get_id(to_of_node(fwnode), "i3c");
>
> mutex_lock(&i3c_core_lock);
> if (id >= 0) {
> @@ -837,7 +839,7 @@ static void i3c_masterdev_release(struct device *dev)
> WARN_ON(!list_empty(&bus->devs.i2c) || !list_empty(&bus->devs.i3c));
> i3c_bus_cleanup(bus);
>
> - of_node_put(dev->of_node);
> + fwnode_handle_put(dev->fwnode);
> }
>
> static const struct device_type i3c_masterdev_type = {
> @@ -1044,7 +1046,7 @@ static void i3c_device_release(struct device *dev)
>
> WARN_ON(i3cdev->desc);
>
> - of_node_put(i3cdev->dev.of_node);
> + fwnode_handle_put(dev->fwnode);
> kfree(i3cdev);
> }
>
> @@ -1928,7 +1930,7 @@ i3c_master_register_new_i3c_devs(struct i3c_master_controller *master)
> desc->info.pid);
>
> if (desc->boardinfo)
> - desc->dev->dev.of_node = desc->boardinfo->of_node;
> + device_set_node(&desc->dev->dev, desc->boardinfo->fwnode);
i3c_device_release() "puts" the node so there should be a "get" here.
Should probably fix that before switching to device properties.
Also seems like the of_node_get() for boardinfo for both i3c and i2c
has no balancing put. Again, it would be good to get that sorted out
before switching to device properties.
next prev parent reply other threads:[~2026-07-22 10:38 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-21 4:07 [PATCH v6 00/12] Support ACPI and SETAASA device discovery Akhil R
2026-07-21 4:07 ` [PATCH v6 01/12] dt-bindings: i3c: Add mipi-i3c-static-method to support SETAASA Akhil R
2026-07-21 4:16 ` sashiko-bot
2026-07-21 4:07 ` [PATCH v6 02/12] i3c: master: Use unified device property interface Akhil R
2026-07-21 4:25 ` sashiko-bot
2026-07-22 10:38 ` Adrian Hunter [this message]
2026-07-21 4:07 ` [PATCH v6 03/12] i3c: master: Support ACPI enumeration of child devices Akhil R
2026-07-21 4:32 ` sashiko-bot
2026-07-21 4:07 ` [PATCH v6 04/12] i3c: master: Add support for devices using SETAASA Akhil R
2026-07-21 4:30 ` sashiko-bot
2026-07-21 4:07 ` [PATCH v6 05/12] i3c: master: Add support for devices without PID Akhil R
2026-07-21 4:26 ` sashiko-bot
2026-07-21 4:07 ` [PATCH v6 06/12] i3c: master: match I3C device through DT and ACPI Akhil R
2026-07-21 4:25 ` sashiko-bot
2026-07-21 4:07 ` [PATCH v6 07/12] i3c: dw-i3c-master: Add SETAASA as supported CCC Akhil R
2026-07-21 4:24 ` sashiko-bot
2026-07-21 4:07 ` [PATCH v6 08/12] i3c: dw-i3c-master: Add ACPI core clock frequency quirk Akhil R
2026-07-21 4:26 ` sashiko-bot
2026-07-21 4:07 ` [PATCH v6 09/12] i3c: dw-i3c-master: Add ACPI ID for Tegra410 Akhil R
2026-07-21 4:22 ` sashiko-bot
2026-07-21 4:07 ` [PATCH v6 10/12] hwmon: spd5118: Remove 16-bit addressing Akhil R
2026-07-21 4:25 ` sashiko-bot
2026-07-21 4:07 ` [PATCH v6 11/12] hwmon: spd5118: Add I3C support Akhil R
2026-07-21 4:35 ` sashiko-bot
2026-07-21 4:08 ` [PATCH v6 12/12] arm64: defconfig: Enable I3C and SPD5118 hwmon Akhil R
2026-07-21 4:28 ` sashiko-bot
2026-07-21 16:52 ` [PATCH v6 00/12] Support ACPI and SETAASA device discovery Frank Li
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=97465893-3650-4f37-98b7-1db76fc6fd03@intel.com \
--to=adrian.hunter@intel.com \
--cc=Frank.Li@nxp.com \
--cc=akhilrajeev@nvidia.com \
--cc=alexandre.belloni@bootlin.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=jonathanh@nvidia.com \
--cc=krzk+dt@kernel.org \
--cc=linux-hwmon@vger.kernel.org \
--cc=linux-i3c@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-tegra@vger.kernel.org \
--cc=linux@roeck-us.net \
--cc=miquel.raynal@bootlin.com \
--cc=p.zabel@pengutronix.de \
--cc=robh@kernel.org \
--cc=thierry.reding@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox