[PATCH] usb: typec: ucsi: Fix printing of a fwnode with %pOFn
From: Asdlerto Korry
Date: Sun Nov 01 2026 - 19:39:03 EST
ucsi_glink and ucsi_huawei_gaokun walk the connector nodes with
device_for_each_child_node(), which yields a struct fwnode_handle, but
print it with %pOFn, which expects a struct device_node. vsprintf then
treats the fwnode_handle as a device_node and calls fwnode_get_name()
on a pointer into the middle of it, so the "missing reg property" error
path oopses instead of printing the message (seen with the same code in
pmic_glink_altmode on a Samsung Galaxy M52 5G).
Use %pfwP, the specifier for the name of a fwnode.
Fixes: c6165ed2f425 ("usb: ucsi: glink: use the connector orientation GPIO to provide switch events")
Fixes: 00327d7f2c8c ("usb: typec: ucsi: add Huawei Matebook E Go ucsi driver")
Signed-off-by: Asdlerto Korry <korryasdlerto@xxxxxxxxx>
---
drivers/usb/typec/ucsi/ucsi_glink.c | 2 +-
drivers/usb/typec/ucsi/ucsi_huawei_gaokun.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/usb/typec/ucsi/ucsi_glink.c b/drivers/usb/typec/ucsi/ucsi_glink.c
index 1db0c88d817e..4b4905624d61 100644
--- a/drivers/usb/typec/ucsi/ucsi_glink.c
+++ b/drivers/usb/typec/ucsi/ucsi_glink.c
@@ -433,7 +433,7 @@ static int pmic_glink_ucsi_probe(struct auxiliary_device *adev,
ret = fwnode_property_read_u32(fwnode, "reg", &port);
if (ret < 0) {
- dev_err(dev, "missing reg property of %pOFn\n", fwnode);
+ dev_err(dev, "missing reg property of %pfwP\n", fwnode);
return ret;
}
diff --git a/drivers/usb/typec/ucsi/ucsi_huawei_gaokun.c b/drivers/usb/typec/ucsi/ucsi_huawei_gaokun.c
index 57b37fca150c..fc74c205181e 100644
--- a/drivers/usb/typec/ucsi/ucsi_huawei_gaokun.c
+++ b/drivers/usb/typec/ucsi/ucsi_huawei_gaokun.c
@@ -430,7 +430,7 @@ static int gaokun_ucsi_ports_init(struct gaokun_ucsi *uec)
device_for_each_child_node(dev, fwnode) {
ret = fwnode_property_read_u32(fwnode, "reg", &port);
if (ret < 0) {
- dev_err(dev, "missing reg property of %pOFn\n", fwnode);
+ dev_err(dev, "missing reg property of %pfwP\n", fwnode);
fwnode_handle_put(fwnode);
return ret;
}
--
2.25.1