From patchwork Fri May 28 10:15:49 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Heinrich Schuchardt X-Patchwork-Id: 1485207 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.infradead.org (client-ip=2607:7c80:54:e::133; helo=bombadil.infradead.org; envelope-from=opensbi-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org; receiver=) Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; secure) header.d=lists.infradead.org header.i=@lists.infradead.org header.a=rsa-sha256 header.s=bombadil.20210309 header.b=v5ifDbaK; dkim=fail reason="signature verification failed" (1024-bit key; secure) header.d=gmx.net header.i=@gmx.net header.a=rsa-sha256 header.s=badeba3b8450 header.b=Ay/xSOlj; dkim-atps=neutral Received: from bombadil.infradead.org (bombadil.infradead.org [IPv6:2607:7c80:54:e::133]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4Fs23k3vVgz9sSn for ; Fri, 28 May 2021 21:08:18 +1000 (AEST) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject:Cc :To:From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=xLlyaj2dbaUimQufqQqzlaEQg+kzMHTa0msNOqEiyns=; b=v5ifDbaK9BkZAg IgppREFrOD9q5bHQW+NtwynE8cSRnTsno9HguP+MgmQdtB17/4FmVBm5m2U1u/iCzsJZwtEqJAKMJ 6WbO+o4MENHuJRWELkwAnx74TBF/SDjBLzwER2Ti1qsHfi5agBpWBj0FZwUWyIoioZusjv4/LvPDo 9aWCeESxgh1w8YAVg4qz34vnqr0qklzQmA5dpWOcyhfem1oRYQJ2e7uxkGMbdvhU7+MDjlwP0V8mn da+y4kinZh7mIyE6waD+r7nfP+LCqdblCLj8P2B6aOlyDnX2+tfRkJZZrL1CATYOpiQDMwQ2pKRyN GmhbLMQurB4h44lde/Kg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1lmaLY-00EgGV-NC; Fri, 28 May 2021 11:08:08 +0000 Received: from mout.gmx.net ([212.227.15.19]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1lmZXB-00EIPB-Ju for opensbi@lists.infradead.org; Fri, 28 May 2021 10:16:07 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1622196957; bh=1b8afD7lUpVEIy+OMmNSj9l+TMmF7MozZIu39Ixv8l0=; h=X-UI-Sender-Class:From:To:Cc:Subject:Date; b=Ay/xSOljux3j4BJWZxAUZLntFdKT8odKb/j3+NiUO7Kx2msOTm1ra4tPC+XVKDpzv 5mlzqvrF3rmALQzmju/2ghWTDeMwFP8pG6vGE2tOfXqYjDuwTHWYJLkapuB+g/E+PN qpp9MQNps4s3/NXWAvtNJE8mUcOrZHqfbhOSahlg= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from workstation4.fritz.box ([62.143.247.63]) by mail.gmx.net (mrgmx005 [212.227.17.184]) with ESMTPSA (Nemesis) id 1Mzyya-1lS2Gp2F6s-00x6c7; Fri, 28 May 2021 12:15:57 +0200 From: Heinrich Schuchardt To: opensbi@lists.infradead.org Cc: Anup Patel , Atish Patra , Heinrich Schuchardt Subject: [PATCH v2 1/1] lib/utils: consider ':' in stdout-path Date: Fri, 28 May 2021 12:15:49 +0200 Message-Id: <20210528101549.31097-1-xypron.glpk@gmx.de> X-Mailer: git-send-email 2.32.0.rc0 MIME-Version: 1.0 X-Provags-ID: V03:K1:I5tSYoNZLoMC1W+mqfLrowko1hUA11lL0plO57ocZlYkACksDOH rQYxBUCXQe73blWammKXGtX4+UbqQBE0jwFW8wd5eW1tGUdAeaTLmPkA2hTZSRTdZVn5X2c 8rosPjsy+UDvjgjXQguO7yppf8JsqyVk27IjiXSmGm5CduQURuYsezoxwadNpqCElB81bGy 71VrTcY18vkfnVBWrxtHg== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:fY01Qcfonvs=:TG2U/NqTvf0Py6s/kJx1f6 9JUSq0TiJj+R3oyicdDToSS58rYS3rTBlE6uPMzZlNv5GqySg8H3SeCkA2PVV+NoajLOOHG3j aAxITf7nYtHWcKYZGGTd6oSB7cYQjXI3gdRkY+koFPqkYm8WF01PcMyUl40I233w/3zDJe6qw wwrgwEAEXr30Wu+PK10od2eKT7exAcfV48mvS+JxWMh94K4f8qphgoR8VHHvy29OxnXYa/3Xz 5vBWonQI9nhyfzzcOBgopWCxCRboOj2jKIH++Y+U0rLxkX9hqLPfpKveSykBqz6/isPAhZmgs 66lG11+boMlpAG/soqkll3uyd5+vy+MgdCPCCmtrhbHbdm/c70Gt8J0OF20ZyDjU4mm1BWvO9 WIRNINE9safKxa2bjEzOjh/lXCYTtEZbnh9ANABZ3vSXWh0NDVGePZFKtxLFsL2XG1JvK3hTe i3K0U7IFbPBRwYRayOuQUdJ0Ej8pS/cilioeY/HJFX1EqzvEVrqZGToDpKRk2cbHWRCXqBw4e 4O8JHbBPIIpossoXTzRowWPT7r0K+/yqapL3ROfv1hjPw116QkfeIL/NHdubxPvbtOVrQ3f3t ajhDpTnIck9bQxjcIshmSwhrXVu0i7KviK7uieVKRnRejsL6urj+lXNj+X2RdC/HjNzrwOEs4 VihiJs1mAqA/EJ9DKF5YCwIDZivDqB20z+RPI/Q1P/DBrLxuuh4sjaC0pJz12yMmjTDEhGJf+ fcZkCO9nrFNBeJ4+9E9j6xRUXeLDeiW+8PEGs0ojJD3DaRpMn5oLzVssvrEsuVMZVVnS6koAn FR6PFn+n5WyUj0LldO544Ow1ifirgcdArAwjiUD/BWFc9mN8HFeVNmDI9axPoHmrLiXi3lEGH UTz9Ng8ZwNYK1eT3t0GWwrKmscrVuhTtHMIXrgFerR55+i5ppavdwRbmSj+oEM5Alnfx16U+k Nc6XBVEzECt5gw6LpXqTb6dx97Qi5meusF72QXq1UJyU4ZNBPesl/JangTVTzKfsG6MQ1Kz27 uP15YhesFfDp6N8sE8Enfdm7EuXGwxX05SmGNXtayOzSR6uezqRFP45ZzH0VzryZvjXvsQoIt 9qeebrPyOw0hB4+uZbQInNOH0xFdV2U2/0tsLL3Q1NSgYdmg5e/mUQxfb4DcMt24WCTHgFR/w /WSD7D9V0gmBrwMXdE3iMQ56EdHfpTB+ajgtAIrntlP30U5Qf6CA3eXj+pX3PMrQHjG+0= X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210528_031605_987224_58680CC5 X-CRM114-Status: GOOD ( 11.30 ) X-Spam-Score: -0.7 (/) X-Spam-Report: =?unknown-8bit?q?Spam_detection_software=2C_running_on_the_sy?= =?unknown-8bit?q?stem_=22bombadil=2Einfradead=2Eorg=22=2C?= =?unknown-8bit?q?_has_NOT_identified_this_incoming_email_as_spam=2E__The_ori?= =?unknown-8bit?q?ginal?= =?unknown-8bit?q?_message_has_been_attached_to_this_so_you_can_view_it_or_la?= =?unknown-8bit?q?bel?= =?unknown-8bit?q?_similar_future_email=2E__If_you_have_any_questions=2C_see?= =?unknown-8bit?q?_the_administrator_of_that_system_for_details=2E?= =?unknown-8bit?q?_?= =?unknown-8bit?q?_Content_preview=3A__The_value_of_the_/chosen/stdout-path_d?= =?unknown-8bit?q?evicetree_property_is?= =?unknown-8bit?q?_used_to_determine_the_UART_used_by_openSBI=2E_According_to?= =?unknown-8bit?q?_the_devicetree_specification?= =?unknown-8bit?b?IHRoZSB2YWx1ZSBtYXkgY29udGFpbiBhIGh5cGhlbiwgZS5nLiBjaG9z?= =?unknown-8bit?b?ZW4geyDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoHN0ZG91?= =?unknown-8bit?b?dC1wYXRo?= =?unknown-8bit?b?ID0gIi9zZXJpYWxAZjAwOjExNTIwMCI7IMKgwqDCoMKgwqDCoMKgwqB9?= =?unknown-8bit?b?OyA=?= =?unknown-8bit?q?_?= =?unknown-8bit?q?_Content_analysis_details=3A___=28-0=2E7_points=2C_5=2E0_re?= =?unknown-8bit?q?quired=29?= =?unknown-8bit?q?_?= =?unknown-8bit?q?_pts_rule_name______________description?= =?unknown-8bit?q?_----_----------------------_------------------------------?= =?unknown-8bit?q?--------------------?= =?unknown-8bit?q?_-0=2E7_RCVD=5FIN=5FDNSWL=5FLOW______RBL=3A_Sender_listed_a?= =?unknown-8bit?q?t_https=3A//www=2Ednswl=2Eorg/=2C?= =?unknown-8bit?q?_low_trust?= =?unknown-8bit?q?_=5B212=2E227=2E15=2E19_listed_in_list=2Ednswl=2Eorg=5D?= =?unknown-8bit?q?_0=2E0_RCVD=5FIN=5FMSPIKE=5FH3______RBL=3A_Good_reputation_?= =?unknown-8bit?q?=28+3=29?= =?unknown-8bit?q?_=5B212=2E227=2E15=2E19_listed_in_wl=2Emailspike=2Enet=5D?= =?unknown-8bit?q?_0=2E0_SPF=5FHELO=5FNONE__________SPF=3A_HELO_does_not_publ?= =?unknown-8bit?q?ish_an_SPF_Record?= =?unknown-8bit?q?_-0=2E0_SPF=5FPASS_______________SPF=3A_sender_matches_SPF_?= =?unknown-8bit?q?record?= =?unknown-8bit?q?_0=2E0_FREEMAIL=5FFROM__________Sender_email_is_commonly_ab?= =?unknown-8bit?q?used_enduser_mail?= =?unknown-8bit?q?_provider?= =?unknown-8bit?b?IFt4eXByb24uZ2xwa1thdF1nbXguZGVd?= =?unknown-8bit?q?_-0=2E1_DKIM=5FVALID_____________Message_has_at_least_one_v?= =?unknown-8bit?q?alid_DKIM_or_DK_signature?= =?unknown-8bit?q?_0=2E1_DKIM=5FSIGNED____________Message_has_a_DKIM_or_DK_si?= =?unknown-8bit?q?gnature=2C_not_necessarily?= =?unknown-8bit?q?_valid?= =?unknown-8bit?q?_0=2E0_RCVD=5FIN=5FMSPIKE=5FWL______Mailspike_good_senders?= X-BeenThere: opensbi@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "opensbi" Errors-To: opensbi-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org The value of the /chosen/stdout-path devicetree property is used to determine the UART used by openSBI. According to the devicetree specification the value may contain a hyphen, e.g. chosen {                 stdout-path = "/serial@f00:115200";         }; If the character ':' is present, it terminates the path of the device. Signed-off-by: Heinrich Schuchardt --- v2: add a comment describing why the DT is changed in place --- lib/utils/serial/fdt_serial.c | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) -- 2.32.0.rc0 diff --git a/lib/utils/serial/fdt_serial.c b/lib/utils/serial/fdt_serial.c index 25982ec..83a1f95 100644 --- a/lib/utils/serial/fdt_serial.c +++ b/lib/utils/serial/fdt_serial.c @@ -46,8 +46,28 @@ int fdt_serial_init(void) coff = fdt_path_offset(fdt, "/chosen"); if (-1 < coff) { prop = fdt_getprop(fdt, coff, "stdout-path", &len); - if (prop && len) + if (prop && len) { + char *s; + + /* + * The device path may be followed by ':' and + * parameters. Truncate the path accordingly. + * + * Scratch memory is very limited. As long as we cannot + * free scratch memory it is preferable to avoid its + * usage. Hence the devicetree is modified in place. + * + * TODO: + * Use a copy in scratch memory once + * sbi_scratch_free_offset() is properly implemented. + */ + s = strchr(prop, ':'); + if (s) + *s = 0; noff = fdt_path_offset(fdt, prop); + if (s) + *s = ':'; + } } /* First check DT node pointed by stdout-path */