[PATCH 2/4] upl: Correct handling of ISA serial

Simon Glass sjg at chromium.org
Fri Jan 3 08:46:08 CET 2025


The current implementation sets stdout-path to /isa/serial even if the
serial port actually has a unit address. It also uses the wrong name for
the compatible string.

Fix these two problems.

Also, the hard-coded serial port turns out not to be needed, so drop
that.

Signed-off-by: Simon Glass <sjg at chromium.org>
---

 boot/upl_write.c | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

diff --git a/boot/upl_write.c b/boot/upl_write.c
index d8211b2cf77..85d4004cd4a 100644
--- a/boot/upl_write.c
+++ b/boot/upl_write.c
@@ -537,14 +537,10 @@ static int add_upl_serial(const struct upl *upl, ofnode root,
 
 	parent = root;
 	if (ser->access_type == UPLAT_IO) {
-		ret = ofnode_write_string(node, UPLP_STDOUT_PATH, "/isa/serial");
-		if (ret)
-			return log_msg_ret("uc0", ret);
-
 		ret = ofnode_add_subnode(root, "isa", &node);
 		if (ret)
 			return log_msg_ret("uc1", ret);
-		if (ofnode_write_string(node, UPLP_UPL_PARAMS_COMPAT, "isa") ||
+		if (ofnode_write_string(node, UPLP_COMPATIBLE, "isa") ||
 		    add_addr_size_cells(node, 2, 1))
 			return log_msg_ret("uc2", -EINVAL);
 		parent = node;
@@ -563,7 +559,6 @@ static int add_upl_serial(const struct upl *upl, ofnode root,
 		}
 	}
 
-	// ret = ofnode_write_string(node, UPLP_COMPATIBLE, "ns8250");
 	ret = ofnode_write_string(node, UPLP_COMPATIBLE, ser->compatible);
 	if (!ret)
 		ret = ofnode_write_u32(node, UPLP_CLOCK_FREQUENCY,
-- 
2.43.0



More information about the U-Boot mailing list