Takashi Iwai ea1e9f
From a26cc2934331b57b5a7164bff344f0a2ec245fc0 Mon Sep 17 00:00:00 2001
Takashi Iwai ea1e9f
From: Saravana Kannan <saravanak@google.com>
Takashi Iwai ea1e9f
Date: Thu, 9 Mar 2023 22:39:09 -0800
Takashi Iwai ea1e9f
Subject: [PATCH] drm/mipi-dsi: Set the fwnode for mipi_dsi_device
Takashi Iwai ea1e9f
Git-commit: a26cc2934331b57b5a7164bff344f0a2ec245fc0
Takashi Iwai ea1e9f
Patch-mainline: v6.4-rc2
Takashi Iwai ea1e9f
References: git-fixes
Takashi Iwai ea1e9f
Takashi Iwai ea1e9f
After commit 3fb16866b51d ("driver core: fw_devlink: Make cycle
Takashi Iwai ea1e9f
detection more robust"), fw_devlink prints an error when consumer
Takashi Iwai ea1e9f
devices don't have their fwnode set. This used to be ignored silently.
Takashi Iwai ea1e9f
Takashi Iwai ea1e9f
Set the fwnode mipi_dsi_device so fw_devlink can find them and properly
Takashi Iwai ea1e9f
track their dependencies.
Takashi Iwai ea1e9f
Takashi Iwai ea1e9f
This fixes errors like this:
Takashi Iwai ea1e9f
[    0.334054] nwl-dsi 30a00000.mipi-dsi: Failed to create device link with regulator-lcd-1v8
Takashi Iwai ea1e9f
[    0.346964] nwl-dsi 30a00000.mipi-dsi: Failed to create device link with backlight-dsi
Takashi Iwai ea1e9f
Takashi Iwai ea1e9f
Reported-by: Martin Kepplinger <martin.kepplinger@puri.sm>
Takashi Iwai ea1e9f
Link: https://lore.kernel.org/lkml/2a8e407f4f18c9350f8629a2b5fa18673355b2ae.camel@puri.sm/
Takashi Iwai ea1e9f
Fixes: 068a00233969 ("drm: Add MIPI DSI bus support")
Takashi Iwai ea1e9f
Signed-off-by: Saravana Kannan <saravanak@google.com>
Takashi Iwai ea1e9f
Tested-by: Martin Kepplinger <martin.kepplinger@puri.sm>
Takashi Iwai ea1e9f
Link: https://lore.kernel.org/r/20230310063910.2474472-1-saravanak@google.com
Takashi Iwai ea1e9f
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
Takashi Iwai ea1e9f
Acked-by: Takashi Iwai <tiwai@suse.de>
Takashi Iwai ea1e9f
Takashi Iwai ea1e9f
---
Takashi Iwai ea1e9f
 drivers/gpu/drm/drm_mipi_dsi.c | 2 +-
Takashi Iwai ea1e9f
 1 file changed, 1 insertion(+), 1 deletion(-)
Takashi Iwai ea1e9f
Takashi Iwai ea1e9f
diff --git a/drivers/gpu/drm/drm_mipi_dsi.c b/drivers/gpu/drm/drm_mipi_dsi.c
Takashi Iwai ea1e9f
index b41aaf2bb9f1..7923cc21b78e 100644
Takashi Iwai ea1e9f
--- a/drivers/gpu/drm/drm_mipi_dsi.c
Takashi Iwai ea1e9f
+++ b/drivers/gpu/drm/drm_mipi_dsi.c
Takashi Iwai ea1e9f
@@ -221,7 +221,7 @@ mipi_dsi_device_register_full(struct mipi_dsi_host *host,
Takashi Iwai ea1e9f
 		return dsi;
Takashi Iwai ea1e9f
 	}
Takashi Iwai ea1e9f
 
Takashi Iwai ea1e9f
-	dsi->dev.of_node = info->node;
Takashi Iwai ea1e9f
+	device_set_node(&dsi->dev, of_fwnode_handle(info->node));
Takashi Iwai ea1e9f
 	dsi->channel = info->channel;
Takashi Iwai ea1e9f
 	strlcpy(dsi->name, info->type, sizeof(dsi->name));
Takashi Iwai ea1e9f
 
Takashi Iwai ea1e9f
-- 
Takashi Iwai ea1e9f
2.35.3
Takashi Iwai ea1e9f