Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/1600613/?format=api
{ "id": 1600613, "url": "http://patchwork.ozlabs.org/api/patches/1600613/?format=api", "web_url": "http://patchwork.ozlabs.org/project/uboot/patch/20220303204400.2787389-15-sean.anderson@seco.com/", "project": { "id": 18, "url": "http://patchwork.ozlabs.org/api/projects/18/?format=api", "name": "U-Boot", "link_name": "uboot", "list_id": "u-boot.lists.denx.de", "list_email": "u-boot@lists.denx.de", "web_url": null, "scm_url": null, "webscm_url": null, "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<20220303204400.2787389-15-sean.anderson@seco.com>", "list_archive_url": null, "date": "2022-03-03T20:43:57", "name": "[14/17] arm: smh: Add some functions for working with the host console", "commit_ref": null, "pull_url": null, "state": "superseded", "archived": false, "hash": "b0b3e72011be021121437df71fc0c7b451565827", "submitter": { "id": 80860, "url": "http://patchwork.ozlabs.org/api/people/80860/?format=api", "name": "Sean Anderson", "email": "sean.anderson@seco.com" }, "delegate": { "id": 3651, "url": "http://patchwork.ozlabs.org/api/users/3651/?format=api", "username": "trini", "first_name": "Tom", "last_name": "Rini", "email": "trini@ti.com" }, "mbox": "http://patchwork.ozlabs.org/project/uboot/patch/20220303204400.2787389-15-sean.anderson@seco.com/mbox/", "series": [ { "id": 288836, "url": "http://patchwork.ozlabs.org/api/series/288836/?format=api", "web_url": "http://patchwork.ozlabs.org/project/uboot/list/?series=288836", "date": "2022-03-03T20:43:44", "name": "arm: semihosting: Cleanups and new features", "version": 1, "mbox": "http://patchwork.ozlabs.org/series/288836/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/1600613/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/1600613/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<u-boot-bounces@lists.denx.de>", "X-Original-To": "incoming@patchwork.ozlabs.org", "Delivered-To": "patchwork-incoming@bilbo.ozlabs.org", "Authentication-Results": [ "bilbo.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=seco.com header.i=@seco.com header.a=rsa-sha256\n header.s=selector1 header.b=f/Dr8UT4;\n\tdkim-atps=neutral", "ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de\n (client-ip=2a01:238:438b:c500:173d:9f52:ddab:ee01; helo=phobos.denx.de;\n envelope-from=u-boot-bounces@lists.denx.de; receiver=<UNKNOWN>)", "phobos.denx.de;\n dmarc=pass (p=reject dis=none) header.from=seco.com", "phobos.denx.de;\n spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de", "phobos.denx.de;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=seco.com header.i=@seco.com header.b=\"f/Dr8UT4\";\n\tdkim-atps=neutral", "phobos.denx.de;\n dmarc=pass (p=reject dis=none) header.from=seco.com", "phobos.denx.de;\n spf=pass smtp.mailfrom=sean.anderson@seco.com", "dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=seco.com;" ], "Received": [ "from phobos.denx.de (phobos.denx.de\n [IPv6:2a01:238:438b:c500:173d:9f52:ddab:ee01])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange X25519 server-signature RSA-PSS (4096 bits))\n\t(No client certificate requested)\n\tby bilbo.ozlabs.org (Postfix) with ESMTPS id 4K8jj11ggkz9sG1\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 4 Mar 2022 07:47:17 +1100 (AEDT)", "from h2850616.stratoserver.net (localhost [IPv6:::1])\n\tby phobos.denx.de (Postfix) with ESMTP id 863F383D5A;\n\tThu, 3 Mar 2022 21:45:24 +0100 (CET)", "by phobos.denx.de (Postfix, from userid 109)\n id F313D83CD6; Thu, 3 Mar 2022 21:44:50 +0100 (CET)", "from EUR03-AM5-obe.outbound.protection.outlook.com\n (mail-am5eur03on0608.outbound.protection.outlook.com\n [IPv6:2a01:111:f400:fe08::608])\n (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n (No client certificate requested)\n by phobos.denx.de (Postfix) with ESMTPS id 79B1583CF2\n for <u-boot@lists.denx.de>; Thu, 3 Mar 2022 21:44:36 +0100 (CET)", "from DB7PR03MB4523.eurprd03.prod.outlook.com (2603:10a6:10:19::27)\n by VI1PR03MB4893.eurprd03.prod.outlook.com (2603:10a6:803:ba::33) with\n Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5017.25; Thu, 3 Mar\n 2022 20:44:34 +0000", "from DB7PR03MB4523.eurprd03.prod.outlook.com\n ([fe80::9130:93ae:6e27:e9a]) by DB7PR03MB4523.eurprd03.prod.outlook.com\n ([fe80::9130:93ae:6e27:e9a%4]) with mapi id 15.20.5038.014; Thu, 3 Mar 2022\n 20:44:34 +0000" ], "X-Spam-Checker-Version": "SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de", "X-Spam-Level": "", "X-Spam-Status": "No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED,\n DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_PASS,SPF_PASS,\n T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.2", "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=an1VrFqKspCRCkvo7EhpIy4AKFg34sDaL7vHmaYnQJq2HEiBwsoEVTrDPaFxqANbSuCg6an5QAl9WKEyr6x7KeSwiJJJ07cqGO+w9Ns9/wp4FzFHoHRKkNQtyt1wyKfr27aNwPgmB1rQ7PtES8ej1G9vzgN58QbvRletuOCI8KHTvZOJHx1R9vgHvDM6CUUQHK4HJMjGAz5M//stirAE2xGmVbN8kmOyL08odxn/3Q06f2wwbgRRMCynEs2ayrD5CekbMSv0pNlG8UPq1qbKxTTWdUKIvsi7PFro1TSrmOtCA3SVHJ7Wx/3pds2hFxdkNy3sSkao3s9vw0aFDniyfQ==", "ARC-Message-Signature": "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector9901;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;\n bh=5r2H45pJ7J1ZOSGANTBq9VE9po9u0Tgu9rY3xBUUIgM=;\n b=CGuH6r4fG/6Ax2wvAehIH28yZuVcDkHqIeBe4Mf0bnEQ2aLwi3+ZFq1tXQrIBbGEODgzwfeHowtWvrRjfe/oe79KpuZkbHW6uZz3mQprNcLXSxoX3bzOLwiWXTgxEN/DHC8J/puqMrdiNO9D/gMAyxE9CC5NdkC4T9kD77/SAiMZXds2HRoaUzCB0UF22AEr/6GalLkG8vmoEkMYnpiejIHFAFHq7PBqHEJd8l0mR8bhvaOWRzPkx/7KE0q2UlnqFo2Ceoqd9UDdDovcu7JXDe5oPY6v+Pjtd0lhYMG8ZhZXrSOlYb+oUCeqMRC1krF2g6Ig5bKAK+UTA91mDoYWLA==", "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=seco.com; dmarc=pass action=none header.from=seco.com;\n dkim=pass header.d=seco.com; arc=none", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=seco.com; s=selector1;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=5r2H45pJ7J1ZOSGANTBq9VE9po9u0Tgu9rY3xBUUIgM=;\n b=f/Dr8UT4EWQEdMP4HQ9VzEejVFJm2AiZQN7pgLciC3jGylNoJtL4CXMJCG+04Q5HkRylWzIU8TF99Ba4Oztm/pGFq8ZN/rXomcNNaiY6wm5OEmJxhxrAoQBgsKReL6V12Rr5PORRQG1C2QEczP8geg6JSDvzOyh6qI3+uRovhy/M/OSdej3SqcKQxP9T4yrNaOV5Ae59bdhIMTZ7K6aeIcc6L82pISBpj/QyS1iOEed53iP5aFYPTIk1Lv6zr7qTR2ETEsD1y1TQYr/qgLMFI2N1YmjfXNXOEjE4VYcFYhIr+dnGrz1dIBIXM/CVfRy5zYrCbhKUTO0rEJXrf9Q92A==", "From": "Sean Anderson <sean.anderson@seco.com>", "To": "Simon Glass <sjg@chromium.org>", "Cc": "Linus Walleij <linus.walleij@linaro.org>, Tom Rini <trini@konsulko.com>,\n u-boot@lists.denx.de, Sean Anderson <sean.anderson@seco.com>", "Subject": "[PATCH 14/17] arm: smh: Add some functions for working with the host\n console", "Date": "Thu, 3 Mar 2022 15:43:57 -0500", "Message-Id": "<20220303204400.2787389-15-sean.anderson@seco.com>", "X-Mailer": "git-send-email 2.25.1", "In-Reply-To": "<20220303204400.2787389-1-sean.anderson@seco.com>", "References": "<20220303204400.2787389-1-sean.anderson@seco.com>", "Content-Transfer-Encoding": "8bit", "Content-Type": "text/plain", "X-ClientProxiedBy": "MN2PR16CA0013.namprd16.prod.outlook.com\n (2603:10b6:208:134::26) To DB7PR03MB4523.eurprd03.prod.outlook.com\n (2603:10a6:10:19::27)", "MIME-Version": "1.0", "X-MS-PublicTrafficType": "Email", "X-MS-Office365-Filtering-Correlation-Id": "87438df7-c79f-4bce-30e7-08d9fd56a032", "X-MS-TrafficTypeDiagnostic": "VI1PR03MB4893:EE_", "X-Microsoft-Antispam-PRVS": "\n <VI1PR03MB489311FE7047D4BC2F279F4C96049@VI1PR03MB4893.eurprd03.prod.outlook.com>", "X-MS-Exchange-SenderADCheck": "1", "X-MS-Exchange-AntiSpam-Relay": "0", "X-Microsoft-Antispam": "BCL:0;", "X-Microsoft-Antispam-Message-Info": "\n QsAMFCt+WaQdiIePwKxGcgpaS8AwJTfSmSCJu0zJKFJ27Zzpi6y94kijNWR651s8YiTV1ZVNNjClW2mCWdOEzEX3rpDNsaHwpI032jNUhd4nSz9pEAkWnwRJyDGiVsFsEkgDqOhqKEIhPBnD4l+wkzk9nKtcF6cU1ieoQoBpz13rIDtKCz9KuY4vmG3F+PbTTicNV7m7VDx7dlSXO+Z/KjstpJwH+LKFMMU4qaiL5ROGIdtoKOKSBXX8B1mVUAmtcI14EwMpaWmRZFy8Tb11vC7f3tqiAvIKmgQx6HdhkInzm0AssA29Kme+ingyKgOkDeN3FmjlNnKxkmOeF+PWMk6IOOFnLgqMUvTa1GyFznvSEu/ZheQynUI2XEbXnzKPDtVwy2rsgsXuwqDjYPjguhR8EDdqy5rH2hkuZwm2el7qajSBTfC3attBfKc32yD03t2v+btEOZn/N0cfWu2TKB1/DQDzikINaWb2ElSGt8K1L55+BJuO3zexQVl93qEojRIIG1MZXfHKMTCD17LJ+UKiBFrUr9QfnLYQzSDRi4aSQg6Auq2TyhUuLGwa7ZWmQhCzlFO2SnQcw/aqAMf2wLv23P8k7rp99jeHDITt/59OlNSv+wbcytaG1XGkqmfBFu8umfiZ0CVv2axECEM9L1DDwSu5lgaU7vfG0Y1FxaN+Swc52hreh4ctuhOf1KiQAPe1XU4FDvf+n6LwDzmmvQ==", "X-Forefront-Antispam-Report": "CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;\n IPV:NLI; SFV:NSPM; H:DB7PR03MB4523.eurprd03.prod.outlook.com; PTR:; CAT:NONE;\n SFS:(13230001)(366004)(38350700002)(38100700002)(44832011)(36756003)(2906002)(186003)(8936002)(26005)(5660300002)(508600001)(2616005)(8676002)(4326008)(107886003)(1076003)(83380400001)(52116002)(66946007)(66556008)(86362001)(66476007)(316002)(54906003)(6916009)(6506007)(6512007)(6666004)(6486002);\n DIR:OUT; SFP:1101;", "X-MS-Exchange-AntiSpam-MessageData-ChunkCount": "1", "X-MS-Exchange-AntiSpam-MessageData-0": "\n PFg9Xjd5HNFKnX5R/rEBy3tMM5OXWdJZFT6jLAvTHoH6nkPC70rE+uCRO+/MQdM+aYbLLOecVsTfExqTLOxxrFMdVox/Q6kRzxEXgnhqk8qOdqzm2lEnwCsE+qiJXG6ZQF4khZMl/fjgjU61zapVCZ1DZsdx2ganGkO+UG5Ax+DbTJNalEugk78L2M46gfNNAp17f7WIm8cBl3ZSppu+TYxrArxpz+TOuMJpjTL6OcCmHq/YZ5MSqAq/9F38c0IDJ27uBJ0pRZZqOZnGlUhViFihce3FqI/HirkMI3BIKo0CcnjoJPLygjK2RZxmGzM3hjmkIZ7D7lJrMRz/ZbBtbTx28P+jFGE5WzNV/vWlpenjs8PZ98TbawnzcAzhICR3mW+JLZj/cC4n1PTsNMltQCSEhZdTGrdMPk6rx1zNI5mwMATz9lLQvhm7URgpiSLS7icJ+vlgeSoHB125q2Yor065PZmLcMoZzEAPyuFg1fAqNX6kztuueyNWMLuNOIe3usAxacfwQBsSU6xkPsoDOtbI1QrWnxv6EvjZhUeQ4INlTAYHOhR445OG8d6vscTYAA/DUTZtpViRFJQ47MuvJSM9J2tDMQtub5vGbCuCDspGxqKG4+ejfvls4MMA6n+s8hvpQgdaP6Af1kr4VlfSu/cY+/a6JxO4dweb9CTvRq2FFXVo9OehyUqO3x2g7iE3wSXJ5Plf3hgeyCAc61kfZVlpzLpwPurO66vvpobdKCuTzF78V+3dKNmdFHoEBBTAW4WqGlQ9i1AI9n5rgHq39zys3Hyxu/Ky6ZSkZCV5NdblWG+VI8wHV8hgUYulhq8AJCu1ViK7k+uz4/p0ynnQhAA5jX79fz5tbqO9xNL3mQVBXG/RbrCzDKmt9MM5x6BygrNWaELhdXZkJxiJvD6BH3eCQRCd/d6V3Nnx5b8SfcFOGQafp7SqMhIPu8VsPDdQYPzcifBP29YYei9w7OChJzBYUFpP9JAXfozEwHDXG4EH4LiNhnoLAm+5B99BkMoyhZRtzRw6pZTGkm+4r6uviVvgOc/N+hhCg1ohswqEf7+4sqhjIE5RWEPRtTS5uRgn16k39rrtcAYyaqLsu8ZyklaMsafEvWcDFgLVfnIdV+qmsbFOpQBUCdWfh/4+Jst0FFKQNibLk6ZOTROZrIoOu6/gtIPmRL8xVKnkic8wteevtGJaNS1GPUSmMTrtZNcrDv0FnNpFA0WNG7Q3P+QDpvOmBaEASnKtcHD46kGGvcqyQEcBNQY3ZHoBNlbYXgRN+ozS0SFxoI84kF9Nvx6/IzF7hsLb4Ek4hgtgIYYQLmwLNJ+TDS48sV8MT+D4kGobV3eIYYLktWAqEFqw9ayN0C8tswOVgDnl9xCrx2IAOlG0MXudKvcsgocgilzhLRswUafR1ffhsuX95Re6DPYixQSwzNZ/hCg7n13Zno6ZI14NijeiW5O1FJj81vpFG1D9qAuUg46+STWckPWDY6ocd7nuRqkEQwDwLLmRVIK+zPddt/yVD91mAQdm8jCTkXco83ybK4onVvLZ7zuTe8udsWw0lfmQ79SnnIfFaVxdYTLfbc+DhVLOmYhXcjN7ub6Ix6c6wdo9C3WiuaFinTlgrzuCo4vi+bPtGIqiii2E4PI=", "X-OriginatorOrg": "seco.com", "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n 87438df7-c79f-4bce-30e7-08d9fd56a032", "X-MS-Exchange-CrossTenant-AuthSource": "DB7PR03MB4523.eurprd03.prod.outlook.com", "X-MS-Exchange-CrossTenant-AuthAs": "Internal", "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "03 Mar 2022 20:44:34.7388 (UTC)", "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted", "X-MS-Exchange-CrossTenant-Id": "bebe97c3-6438-442e-ade3-ff17aa50e733", "X-MS-Exchange-CrossTenant-MailboxType": "HOSTED", "X-MS-Exchange-CrossTenant-UserPrincipalName": "\n 6VwTNjsYokh/C95nO/BfrpQMWVHplXgZHnXG7A73HCMreIWILPG+56d/H9t16Kkp3GTSOjLVJsSJC/t24EL3Qw==", "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "VI1PR03MB4893", "X-BeenThere": "u-boot@lists.denx.de", "X-Mailman-Version": "2.1.39", "Precedence": "list", "List-Id": "U-Boot discussion <u-boot.lists.denx.de>", "List-Unsubscribe": "<https://lists.denx.de/options/u-boot>,\n <mailto:u-boot-request@lists.denx.de?subject=unsubscribe>", "List-Archive": "<https://lists.denx.de/pipermail/u-boot/>", "List-Post": "<mailto:u-boot@lists.denx.de>", "List-Help": "<mailto:u-boot-request@lists.denx.de?subject=help>", "List-Subscribe": "<https://lists.denx.de/listinfo/u-boot>,\n <mailto:u-boot-request@lists.denx.de?subject=subscribe>", "Errors-To": "u-boot-bounces@lists.denx.de", "Sender": "\"U-Boot\" <u-boot-bounces@lists.denx.de>", "X-Virus-Scanned": "clamav-milter 0.103.5 at phobos.denx.de", "X-Virus-Status": "Clean" }, "content": "This adds three wrappers around the semihosting commands for reading and\nwriting to the host console. We use the more standard getc/putc/puts\nnames instead of readc/writec/write0 for familiarity.\n\nSigned-off-by: Sean Anderson <sean.anderson@seco.com>\n---\n\n arch/arm/lib/semihosting.c | 18 ++++++++++++++++++\n include/semihosting.h | 19 +++++++++++++++++++\n 2 files changed, 37 insertions(+)", "diff": "diff --git a/arch/arm/lib/semihosting.c b/arch/arm/lib/semihosting.c\nindex 57ab25294f..7595dbc4a9 100644\n--- a/arch/arm/lib/semihosting.c\n+++ b/arch/arm/lib/semihosting.c\n@@ -15,8 +15,11 @@\n \n #define SYSOPEN\t\t0x01\n #define SYSCLOSE\t0x02\n+#define SYSWRITEC\t0x03\n+#define SYSWRITE0\t0x04\n #define SYSWRITE\t0x05\n #define SYSREAD\t\t0x06\n+#define SYSREADC\t0x07\n #define SYSSEEK\t\t0x0A\n #define SYSFLEN\t\t0x0C\n #define SYSERRNO\t0x13\n@@ -167,3 +170,18 @@ long smh_seek(long fd, long pos)\n \t\treturn smh_errno();\n \treturn 0;\n }\n+\n+int smh_getc(void)\n+{\n+\treturn smh_trap(SYSREADC, NULL);\n+}\n+\n+void smh_putc(char ch)\n+{\n+\tsmh_trap(SYSWRITEC, &ch);\n+}\n+\n+void smh_puts(const char *s)\n+{\n+\tsmh_trap(SYSWRITE0, (char *)s);\n+}\ndiff --git a/include/semihosting.h b/include/semihosting.h\nindex b53c650444..6f3c29786c 100644\n--- a/include/semihosting.h\n+++ b/include/semihosting.h\n@@ -86,4 +86,23 @@ long smh_flen(long fd);\n */\n long smh_seek(long fd, long pos);\n \n+/**\n+ * smh_getc() - Read a character from stdin\n+ *\n+ * Return: The character read, or a negative error on failure\n+ */\n+int smh_getc(void);\n+\n+/**\n+ * smh_putc() - Print a character on stdout\n+ * @ch: The character to print\n+ */\n+void smh_putc(char ch);\n+\n+/**\n+ * smh_write0() - Print a nul-terminated string on stdout\n+ * @s: The string to print\n+ */\n+void smh_puts(const char *s);\n+\n #endif /* _SEMIHOSTING_H */\n", "prefixes": [ "14/17" ] }