From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from phobos.denx.de (phobos.denx.de [85.214.62.61]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 5B0AFC433F5 for ; Tue, 22 Mar 2022 23:21:47 +0000 (UTC) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 3079483B59; Wed, 23 Mar 2022 00:21:45 +0100 (CET) Authentication-Results: phobos.denx.de; dmarc=pass (p=reject dis=none) header.from=seco.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (2048-bit key; unprotected) header.d=seco.com header.i=@seco.com header.b="K4xDx1Ae"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 942CB83B58; Wed, 23 Mar 2022 00:21:42 +0100 (CET) Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on0619.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe0c::619]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id DE66D83B59 for ; Wed, 23 Mar 2022 00:21:37 +0100 (CET) Authentication-Results: phobos.denx.de; dmarc=pass (p=reject dis=none) header.from=seco.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=sean.anderson@seco.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Nr7IN+yHVXJ3yUcPXbkeBLO8z7KTJ2dVR+B0aTfWggcPU9202VvsjUQxhhNqot/71ILZQE70h7G7Z+FCFjokcc1p/ZWZVl9gPAWMXZ8tPX5wK3HU8ZXfgIkYkwT+aqjinYOsh4vcu7RUD3Cxf9J+Or1AE6AvotQy5eFa2WS+leSpwG9NTO9R9S5Gm2TG6H5C28qoQiI7UR5F6JpfZpUZJe2jaS3YbBtYqjbvkvtqeckkxXPYa3mHbha8e3hNUGMkVOyuzbdGBqhg9WcETaEAlGvFA+ckb/YTrmltbONOP6iBvbH4fN4W+dYBGmcnZinFl/xyGOA4hddRCdiahMGKXw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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; bh=PqQcpbQtugLVeXspDXtYh6SwQyMg+2p0/2mGjHdwD1w=; b=LkeSymfk+OTRbPRofX243xhj9ocdT9qUehbPJmp+4Z8oqyFK4pcPAr7IV+BqzOubJT+P3lqm3kcYj1k2/KbbDnzXcHpSxf0kjJr/VFnj+/sBs2LqlooOV0oO/YUb0G1ei/T63i3hGuOuUcemAabejSVpqupyEvbzhaQn43vVjxm9zbrann5KvzPJG7uPQAE2X/qVD84nZz7fQoCPCmGfHCq9kLnEbviyndjeHDTOQAgTJpKxyv1mtqqBn+ughEfsmlNYSCAdJ32qMv4uYK9+yALjrGLBK5KBaKPauYFYRwDE6nsiuUi+KiPWfJl2Zg1etKQaQVFPsMrf/iXlWcf2bg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=seco.com; dmarc=pass action=none header.from=seco.com; dkim=pass header.d=seco.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=seco.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=PqQcpbQtugLVeXspDXtYh6SwQyMg+2p0/2mGjHdwD1w=; b=K4xDx1Aey39yO888Vj9EKpByJOvAn8snKb12iu76HB85mUncDUymvFvMXa6HPmGXif5iCLGgnSq5/zeWUPhv3CWZ9CDj1ZL1yRO0akAx0SWrTL8nmoQq+nndMEKrCyxXyaViJQthWLdMR9NVs9A+Udvm6bc3FbYCKjxJ/XF6S8Iro0oeO9whv27CnCwq0avJ1Ze/JjHXdo/A0bPzTElO1/t8r9EwDglPcW4RdWeVfqZC284W4gwzDdH1CUd47UBlcFRwZQ6NrErXLnTwgtGPqA+4cZbHi30gCBdPIaHPOFtdbefnKm8QPNZIbLS/uh6p5qzV40NY0foUUKgB/Ba9MA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=seco.com; Received: from DB7PR03MB4972.eurprd03.prod.outlook.com (2603:10a6:10:7d::22) by AM5PR03MB2899.eurprd03.prod.outlook.com (2603:10a6:206:23::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5102.16; Tue, 22 Mar 2022 23:21:36 +0000 Received: from DB7PR03MB4972.eurprd03.prod.outlook.com ([fe80::2414:8ad5:9fd6:3bff]) by DB7PR03MB4972.eurprd03.prod.outlook.com ([fe80::2414:8ad5:9fd6:3bff%5]) with mapi id 15.20.5081.023; Tue, 22 Mar 2022 23:21:36 +0000 Subject: Re: [PATCH v3 00/29] arm: semihosting: Cleanups and new features To: Heinrich Schuchardt Cc: Linus Walleij , Liviu Dudau , Andre Przywara , Simon Glass , u-boot@lists.denx.de, Mingkai Hu , =?UTF-8?Q?Pierre-Cl=c3=a9ment_Tosi?= , Priyanka Jain , Rajesh Bhagat , Tom Rini References: <20220322205938.1721846-1-sean.anderson@seco.com> <44a46bd9-4ed3-1594-770d-bb3ba517a473@gmx.de> From: Sean Anderson Message-ID: <7868d240-28c8-2123-dae8-ebed95a61328@seco.com> Date: Tue, 22 Mar 2022 19:21:30 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 In-Reply-To: <44a46bd9-4ed3-1594-770d-bb3ba517a473@gmx.de> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-ClientProxiedBy: MN2PR16CA0053.namprd16.prod.outlook.com (2603:10b6:208:234::22) To DB7PR03MB4972.eurprd03.prod.outlook.com (2603:10a6:10:7d::22) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: c21e0ede-dc98-421f-d471-08da0c5ab5ce X-MS-TrafficTypeDiagnostic: AM5PR03MB2899:EE_ X-Microsoft-Antispam-PRVS: X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: k1+5+TiDR8sNA25uiQFwzaMCbpScIkooDnWA8HSVbPjkufUdxtUPYWG0QHFndptV/xz8xtKKlBM0kflJy8lYPsqHQiwBDqhb9nXMvTEppwAMSHvBGHciCbzQGOX/W6IleFIn7PcBuHrpmjfQaOmprMCHKBuvuA1ek+5VXth1HouSgY5jz2iGgBX2GKFSKs2XkYfoSO9ImOiJpllMwQZGner3PBdIFFNTqeQRNCbvsh4+xkxYT36m5sVrJnsj1JNrw3sS8n6unx/C3yk+QY31kKUj8e2DwY0+0rCCpENVa4UkSImu0nSTA7T8qICCu8DGAgWe9p1xwdnsFXZIc4eUzYPYgGyVqGeRglw/Exj3KsTuHPn0Vk3dgpQi5obUc1XSdxn3HuMiZJGkKTjwQ0R+qI5mpYEVA0B0gnf7YgriyiEsv0icGZsNPSF51qmfqzGQuhJpibZp7+9cA+resQqW0oPG4nHwvKYYOm7v2lcB172zokCP/e5FI/pkEo3V/oWjJcrbJgkMKdg6HDKZQEVUlWp4gMdSMDqmXAcM1VxZlvSYqrk4fSSxthrLEr/gwesk/z3SYHK7TwDCI0f5DbN0McwHJW28PKcBEq36Avjc3/qr8ssKfNLU3+grcNBIqqSG8idlP3eedq7XNBM8PUO1UbkBasSsGrkz/SxRYs3irhhg+BhXykkp1lhRUxF4sK+H6+YnrCBoXGVXz39YDZ/6GNnhPmBw1dtMuZvgpKMCayKKoSJQ7vNflLI5ieaSlVrN5shNob5VyarF1TqdPm+0AA== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DB7PR03MB4972.eurprd03.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230001)(366004)(6486002)(2906002)(966005)(86362001)(6666004)(508600001)(26005)(53546011)(31696002)(52116002)(6506007)(6512007)(186003)(2616005)(38100700002)(38350700002)(83380400001)(66556008)(66476007)(31686004)(66946007)(6916009)(54906003)(316002)(8676002)(4326008)(5660300002)(44832011)(7416002)(8936002)(36756003)(45980500001)(43740500002); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?WjIrdG5WVDk1WkJKb0ZPNDgrVDdIeUZLZngrUzMzT1puNEhpOTVrUVZJWTNp?= =?utf-8?B?Y0kvNkFObDdsNTFjWHhnTzBNTjJ0RFV4ZkJoVlpWU1JiR1h2Skw1Tmd4ZDdN?= =?utf-8?B?NnJES1gzeUlBWnZNZnNyakNVL05yVnJNNlJyZXFPQ2RKL3Q2RWxSdGR3ZHRq?= =?utf-8?B?Sm83b2NnSkdsKzZIVHAyOGx2bUd5TkRKdEo2dElteml5UzQyaG1mQ1VWOTdX?= =?utf-8?B?blFheFlpNmxqQ0FKTksrZ1NFbGh6YzZiZzArbDRSWWQ4d1RsdWtPaHp2dG82?= =?utf-8?B?Z0k2UVE3M2xDZFAvZWV2V0JMSDlETEF2c0kxYkZ6VDFqQVdvVjZqNUZETmNX?= =?utf-8?B?UVJuMVcyWVhpTUg1ZzNhcXlTTlhENjJ1WE5SMjZMeVZyUXE3cTlSMTRNRG9y?= =?utf-8?B?c01kYjMwNk4rSUo1OFMvcUlzcUFGbE5lZGhXNGlnN3R3TzU5MW9EbmJ2NUdt?= =?utf-8?B?TkhYUnNab2Vlb0VtSktORExKWC90WWhUMyt1Q2dlY2xtVzRHbFBoNmJVUVZH?= =?utf-8?B?UHg2ejEzTEgzaGZabHI2aGkrV2dnUk0vUHFkb3E3bGUzdjZaYTdVbWMyV3hK?= =?utf-8?B?OHVkV2syZmwvd2Ewb1M4bHdoNEpkQXZWMW9IM0xqanpTUW4xYkl4U0xNV2hu?= =?utf-8?B?b3N4SE43UnBhNW5aeDZsV0M3cVEwbFh5SkhZU2hHWTRLSlpqNWVlQURZd0Zh?= =?utf-8?B?cm03b2p5b2Zkb2RBUzlKL3QvdTlkZVZ0cnRXL1pKU0ZSTjRLNEsvZ3VEaHky?= =?utf-8?B?c0dWQjVoeFlVZWp6V3p1QkxaZW5IOWJDcnZuS3BjNml3aUhUYVRjSk8xWmFK?= =?utf-8?B?Nk9aYkVsMWtETHZvOW9YYlVkMjIyd2FvY2ZULzloQi9OcDNNUjVZVjF3RHl1?= =?utf-8?B?YjkrYmM1UldFcHB0cXZTNFBIaXc0RWhLOWhsMzdINEo3em03bHpSM2RVY0hK?= =?utf-8?B?ZTJBWTFLRm93b2NMU2hQN2VqMHR2WXRQMnQ2ZENTOWlwV1R6d2FIOGpzN01Z?= =?utf-8?B?SW50ZkFSSGhHZFpUTFhZTXNUcGFBcGNUYTV3YnFzbm9nWWU1bTZUZ3lDZUw1?= =?utf-8?B?YlhBWldiNXV5YTdqZG9QcytWaC9FWExJcHJLL2ZENTBWWVZnVll0UWs4MVgx?= =?utf-8?B?bTc3ZzM0Z0tuZFkzeEErcWZjWEF4a0JJdlZwdlo5a3NqcVZqc3pMM25UejQ1?= =?utf-8?B?c09GQ2NEd0RMT3RQakZQT0xRTXFsY3RuTlR4TU52bnVGdFBPT2VrYjRQeUl0?= =?utf-8?B?T1NtUDBRMVBzSURpN01xZDNZWXlLdnpLa1Q2Z1pUM2JNNVNMRVVObFMyUmpt?= =?utf-8?B?cVdYZlZPV3dhTkRMM3ZYSUlIOVdrSWNSK05ENTZ5Y2NrQzJ6dmowOUVGOE1o?= =?utf-8?B?azkzeWlVcWhtQkpsQWpJWEUxaWlpVnQ1d3B2ZGwxUDhEK3Q0bWF0bHlOSjVn?= =?utf-8?B?akhGdnVmQkRoU3JFU251MnUwazFzMVR6TmFORWRBM2ZMTUN2NllNL0x6SmFX?= =?utf-8?B?bkFNbWkydDZMYy9WREVQdzlRTWdFU0Z6SUd2dm5QOWJ4d3RGRGdLdmI2eEdG?= =?utf-8?B?bW1abEJHSWFZNnNSN294RDlVVkpMOHRSNVpUc3V0bGdPMk50YnhXZ0RhblVr?= =?utf-8?B?WGRnWjB4d1BPTm5pd3g5S0dSOTBDRkNHZHBKWW5TSTY1aEVjdEVyQjllUWVa?= =?utf-8?B?TEhxUVlTbDkzZnpVcVowNWFVRjVyMHZJOURVV2UzaUx4bE96SjI2Q3pOcDZO?= =?utf-8?B?R09ic293djQ2S2l0cjVNNVlNK2h6YU1iaXY3RnM5TlNaSTJCVlBJTWF3WkRm?= =?utf-8?B?cXRBYkFNYTlqNUhBYlM3OEVnKzFyVXdmbTR6b2s0bjlwbDhPcEt1eUkremps?= =?utf-8?B?WUxrcVYrUm4xNjgrMXQ5MERqTGVHemV1N1Y0OWk3S2RicmRKMkhST3dTM25T?= =?utf-8?B?aW9ndnIrbVQyaitlc2lQMGJtS0xYWGhISERXRjB3VDlrK0tSRlFrQktHL3Iw?= =?utf-8?B?V1RFZndBb1JnPT0=?= X-OriginatorOrg: seco.com X-MS-Exchange-CrossTenant-Network-Message-Id: c21e0ede-dc98-421f-d471-08da0c5ab5ce X-MS-Exchange-CrossTenant-AuthSource: DB7PR03MB4972.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Mar 2022 23:21:36.5667 (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: aN/uXMRKAd/rpqrjkNpXnqxF+gET/WuHKcApfjT+gHVOO4uJQTIh0HkgSlEv3WUU+cXzSq7qjBcBqPTaYHu/dQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR03MB2899 X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.39 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" X-Virus-Scanned: clamav-milter 0.103.5 at phobos.denx.de X-Virus-Status: Clean On 3/22/22 6:11 PM, Heinrich Schuchardt wrote: > On 3/22/22 21:59, Sean Anderson wrote: >> This cleans up the semihosting code and adds the following new features: >> >> - hostfs support (like sandbox) >> - support for being used as a SPL boot device >> - serial device support >> - falling back to normal drivers if semihosting is disabled >> >> The main device affected by these changes is vexpress64, so I'd appreciate >> if Andre (or anyone else) could try booting. >> >> These changes are motivated by bringup for ls1046a. When forcing JTAG >> boot, this device disables most communication peripherals, including >> serial and ethernet devices. This appears to be fixed in later >> generation devices, but we are stuck with it for now. Semihosting >> provides an easy way to run a few console commands. >> >> The patches in this series are organized as follows: >> >> 0-4: rST conversions and other documentation updates >> 5-9: Semihosting cleanups >> 10-14: Filesystem support (including SPL boot device) >> 15-16: Serial support >> 16: Documentation update >> 17: JTAG boot support for LS1046A >> 19-25: Semihosting fallback >> 26-29: DM puts support >> >> The last two groups of patches are "bonus;" the first 17 patches stand >> on their own. The last two groups could be broken out as separate >> series, but I have kept them in this one to help with my sanity (and not >> have to deal with too many outstanding series). >> >> Patch 14 depends on [1] to apply cleanly. Patch 17 depends on [2] for >> correctness. This series should be applied to u-boot/next (in >> particular, the EROFS series must have been applied). > > Treating semihosting like the sandbox host file system is valuable > change. Thanks for addressing this. > > Semihosting is not ARM specific. On QEMU it is available for ARM, M68K, > Xtensa, MIPS, Nios II, RISC-V. Cf. > https://qemu.readthedocs.io/en/latest/system/qemu-manpage.html > > A good part of the code should be moved out of arch/arm/. I agree that this code is mostly not arm-specific. However, this series is already very long, so I would like to defer moving these files for a later series (probably done on my personal time). In addition, I think it when doing this we will need to determine what is arm/riscv-specific and what can be shared between arches. From the link you sent, it seems like m68k/xtensa/mips/nios2 use a different API than arm/risc-v. --Sean