From nobody Tue Feb 10 01:16:27 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; arc=pass (i=1 dmarc=pass fromdomain=amd.com); dmarc=pass(p=quarantine dis=none) header.from=amd.com ARC-Seal: i=2; a=rsa-sha256; t=1770160112; cv=pass; d=zohomail.com; s=zohoarc; b=O6/wQ4OOf55iyYFw2PJevNdBQoJd3EWiS3vZKCRd/v/Y3WrdIbNgtYOJyumwKhjjZVOtchIASMI+MOtHpaqhFGdAfv/vbCikOOMw0iRmKwTwX9Xsj0y7lmhcoM6EEO+NMGd7rg9EH6HRm+1/Cl9waJPEGbL5IohjAM5JJ86oEwA= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1770160112; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=8qQtk1b20aG/kh9W246LWa03j2XOhWS+O5knVRy/lLE=; b=Mw2Z4W98+GWu61iFAnrn9AOeG71p/kU6XYxrrsQC9SI7KK4LQ3eKgvE0ByubW1yZKI3mDL5VNDExP9+RyxY1PJ7kEQ1I1oHFIk7pF2wePtI6356PgIHF1kcIwjyKE4gtOmrkQct2O3ehseXYF2vbjqbanP7ahOQdOp7fk+Gv8Rc= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; arc=pass (i=1 dmarc=pass fromdomain=amd.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1770160112430143.22186131827914; Tue, 3 Feb 2026 15:08:32 -0800 (PST) Received: from list by lists.xenproject.org with outflank-mailman.1219747.1528646 (Exim 4.92) (envelope-from ) id 1vnPVG-0000SF-Nk; Tue, 03 Feb 2026 23:08:14 +0000 Received: by outflank-mailman (output) from mailman id 1219747.1528646; Tue, 03 Feb 2026 23:08:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1vnPVG-0000Qo-KI; Tue, 03 Feb 2026 23:08:14 +0000 Received: by outflank-mailman (input) for mailman id 1219747; Tue, 03 Feb 2026 23:08:13 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1vnPVF-00088F-8w for xen-devel@lists.xenproject.org; Tue, 03 Feb 2026 23:08:13 +0000 Received: from PH7PR06CU001.outbound.protection.outlook.com (mail-westus3azlp170100009.outbound.protection.outlook.com [2a01:111:f403:c107::9]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 34fe7887-0155-11f1-b161-2bf370ae4941; Wed, 04 Feb 2026 00:08:11 +0100 (CET) Received: from CH3P220CA0002.NAMP220.PROD.OUTLOOK.COM (2603:10b6:610:1e8::13) by CH8PR12MB9765.namprd12.prod.outlook.com (2603:10b6:610:264::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9587.12; Tue, 3 Feb 2026 23:08:04 +0000 Received: from CH1PEPF0000A348.namprd04.prod.outlook.com (2603:10b6:610:1e8:cafe::87) by CH3P220CA0002.outlook.office365.com (2603:10b6:610:1e8::13) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9587.12 via Frontend Transport; Tue, 3 Feb 2026 23:08:03 +0000 Received: from satlexmb07.amd.com (165.204.84.17) by CH1PEPF0000A348.mail.protection.outlook.com (10.167.244.4) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9587.10 via Frontend Transport; Tue, 3 Feb 2026 23:08:04 +0000 Received: from satlexmb10.amd.com (10.181.42.219) by satlexmb07.amd.com (10.181.42.216) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.17; Tue, 3 Feb 2026 17:08:03 -0600 Received: from satlexmb08.amd.com (10.181.42.217) by satlexmb10.amd.com (10.181.42.219) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.17; Tue, 3 Feb 2026 17:08:03 -0600 Received: from SATLEXMB04.amd.com (10.180.168.240) by satlexmb08.amd.com (10.181.42.217) with Microsoft SMTP Server id 15.2.2562.17 via Frontend Transport; Tue, 3 Feb 2026 17:08:02 -0600 X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 34fe7887-0155-11f1-b161-2bf370ae4941 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=zCzu5gv3hrH7mMw8LprQZ6inysWDAuF+c2MyuO9VrHZvlyiwIFV0v2OVTSowMmIEmvqNyr3lizTEyO7nqidsnKPSXmSV7LzlLr1qPBZhF9UlXbR6ZOztBtWsBKMwy+Fo92pADkvLKW8ehrrL3RzPLKhkXUgq8TWhut6lfjR+5zbwzorJgnZt1qBpZGER+ruhvNKAsj6B4Swv43xi/oPK11xsRWB7npZGHkPNwD5TW1dOIS/7anlMtuXXg13tWgrkWQStYp7VyJI2zhoWQEpbhZ6KHkWutbJsYAHKLsqphCtwnW7TEXj8ElnHoAawtNXcD2NGei6iXL8Xd4JiTfuCvQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=8qQtk1b20aG/kh9W246LWa03j2XOhWS+O5knVRy/lLE=; b=Cv5ZyW1JjwnUqOyUHSk9NVIUMsAR3Q0OWPJX9GJsi+DkFWcMm/PfkwZ4TasDdvOqRjJSBHWWE8RX2S1go3hAqVJ5x7PUnR6VOW5yCDeWuNg1Be9Yu5kw7iUcYrIptm/i5oSrmOwqF0cAV2/ZtpiJMS5XvILgxbyVjDzxS2W0U36khMTX17FXY25+IXuZGu6m9E7uiZ2RE2NkqzMcsuSWecIjnjaJi+lCsdnZQuJQQS9/iQ6r4Tf70C96K7IT3uzL2BjIU5JWc1iuQztiMyc8PV49OKflNuT0frOSV1WCzgMFLSuvUJy9Btg5/pTl7RU9RIRw0YoCQkFWCx3QpV6pCQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=8qQtk1b20aG/kh9W246LWa03j2XOhWS+O5knVRy/lLE=; b=sOe4hwCiteYHVPn+NnKg44ApDK9J+xNYiW764f7Md6zXxGADz33xLGGShl9ZScX97WE6IB9/+XlLPH0mqbugtvlmiC7oltUZjjqLpQBqkAtoRpBkvuHJvPhU2BDLVXJ74HR99ITzz9FY0VLy7QhjBpcb9cDacj4Wv1LKpKJ/Uww= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=satlexmb07.amd.com; pr=C From: Stefano Stabellini To: CC: , , , , , , , , , , Stefano Stabellini Subject: [PATCH v9 4/4] xen: enable dom0less guests to use console_io hypercalls Date: Tue, 3 Feb 2026 15:07:57 -0800 Message-ID: <20260203230757.3224547-4-stefano.stabellini@amd.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH1PEPF0000A348:EE_|CH8PR12MB9765:EE_ X-MS-Office365-Filtering-Correlation-Id: 98e68f0e-7787-4116-8dda-08de637915cd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|36860700013|82310400026|1800799024; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?lrcjk2n+688ve0Us9x616T/OtzKyojek7avAHRGqraUbAtt7rmGYw6nWgXS1?= =?us-ascii?Q?/IqVXvURzAbMMdwvY51uDKd7MwqRjdjQo+y6cM2PxlcJPRTbp73YyQsQRRce?= =?us-ascii?Q?t9IPxw9suSM0dj2KmJWfrfsyvZK8IEtp+ut0dOMU+85aQl5txmtnruiJxRge?= =?us-ascii?Q?/c+U41MWk9Y+Z8OUHwm0nnYMVlPgfpeYnxKMhG3pe6/OEEEWSsMJXCR8WKyv?= =?us-ascii?Q?lVwnNODoxKNUcQ0vRdy3Ahc+ePyBgYXCUL4JT9rHT5iqb5ZDWHhkVerR2AXc?= =?us-ascii?Q?swFOxzDHUZEzvn1SsmWFEufYxLt2tr2iaOgwhzxFz9mByjcJ+5vNZMgOBtEP?= =?us-ascii?Q?Cwxz9UTR0c3T3U4IgN0tVRHNUdIyxf1g55xn4RdZ/GgV3drNT7QttQU9WL2/?= =?us-ascii?Q?8VhzlgdRNYdmTRiUqSQSgD1/QIaytHjXc2UkCfBNB9qPRpXmRxq6kO3U8+VN?= =?us-ascii?Q?KjUVQLEw8L6d+ajnmoEmc9QrE+i/1v+vG/du68O+NAtj9mhVe/CLC0Qx0UNw?= =?us-ascii?Q?gLnE5FFYA4MKaNcNSp4whSdT6u1WZmOckn/+9bRnW4PsEL2x6OVpgA+znAuI?= =?us-ascii?Q?Wu97LVPUko0ts3qHpPZKhne4WyrjffjaKlLQUSHTiEyC0Raq7I4wZR+DgsI2?= =?us-ascii?Q?V0C7DeCQYOgPuQE6kFu2ofVbpc78ABCTV/SwO0efPpNRzd1/60DcOj6Q2LuU?= =?us-ascii?Q?qkmH6IwUmAqZ2CX3hP2bLxuoeTG23rOvrT6IvG0D7COV7zJ8NLj5iOgRrGFq?= =?us-ascii?Q?xikJK/sjII/6Hfdz6hWyV/Aa0iiWKpp20QQx6s05S6F+lUp4mq6alxAnpwod?= =?us-ascii?Q?UWmO/MvjofdGKnTJd4PBA0+3gv8W3cWLL9/0C4afoJkXwdOmVRZRLoFj3Xlo?= =?us-ascii?Q?UH75a2cxt9hkMXU2ELJPfa7O+XmiXHHEKG1MAs4oUOOih/n9p0cOggdi912q?= =?us-ascii?Q?TIrEx57+RvQPGwiCz+ZNKrYEuewQEfGmPzP4937Id+roFbimn8KCg7PNyY7e?= =?us-ascii?Q?oGR0Tmhx1eYfqTqeF12yXqT5NblQrvRCzdL7g9qjA6qKcfVJEj34uJh/D0k0?= =?us-ascii?Q?B0xg1cAGgpKcp5M/6eGh17NR0sZx8EhImI7YrS7LcmBfyH2nOwrGsZWEg83Q?= =?us-ascii?Q?8mcIkSlKbJtT9Ji71zDzg8sH2KLDc5vUubYA72lIuM8Obn7CHZ/qBlaj1HzQ?= =?us-ascii?Q?Ip8mbKMvvF6N5FQXXLN/4jogjpIfp6jlItGUGUvLyFSG+S49MLf9bwHDrm9q?= =?us-ascii?Q?Fx//BagnOV8xmyABu/kyyCg3VFeG60mTon3d3lvzVgj6eDY/pyTME2RkuEBQ?= =?us-ascii?Q?qyLoRxhebkyUPbcPVX+6Tc7geExDumqO5Mue//mH3NNut5ECmOAjqDk9DnFF?= =?us-ascii?Q?mzFYJMj7wBLtE5NbcW17auGqa5r3qcjqvuqqCOzXxuGxKg9M2g00+pPYBZjD?= =?us-ascii?Q?BwY7Obk2EJTDfWDQIDlnVkZWoN4aVZGEHuvnQ9ZfbZvjIN/0bUxAmARPIIU5?= =?us-ascii?Q?ShQFwDmg98ON3p7KDXbY0YAHxEdEgI6JZpmTTz+p56t3EhOpz/ZBUXBlH2Fs?= =?us-ascii?Q?0aMCh5ama+9YoDCOa3DNHhQGjznzLD5/lV/B54OvlUg/aQQw4h3QlMz5UCWa?= =?us-ascii?Q?vLEY3R5UZVwisLAP+Wlb8hxDoZbPa6Vk2ocLv5qZrHws+kOGLFqDiqomvtQO?= =?us-ascii?Q?v52xvQ=3D=3D?= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:satlexmb07.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(376014)(36860700013)(82310400026)(1800799024);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: IhdGaBbSzBJzeC2aVMaQBPGeWdJsFjVqocNzqGOi8teFEgK0v8X57o/OEri6VutDVtLW6/mpLptZKBiyDOa2lnWD7GKRrDgfh1bOSgkVRMR2SD+HDJHZZ40mldYDNAxjjm4FLXHkFsG5AjhQFOxiSnhf2GesCDnx1lHcUlB2Z2ToZtFlSIXBKl7UiXZUSxrXNrP+n7e9whYxOAYuqaUH3G+sTvnT1Vz53Q/5WavkzRvvm6vacXThSY8HY8CJZIJJro+gfVh9y0tra7J8HwrrcOTRPJREqowQOq8sKf/M3VvQvkZaapPFBXXbvuCXN8FaaXUMiUayxeXjWgoVox1oNMQ8Jt7QOka8SFPmvVeJDNP+FrkgZp9OZJGaaI7pI3g2KYoOY/5aUZo1HaIAU5xNtdtEzFDuAeDSBKtj+ia/r1YoFqLzZAO1KFoSGa0r4BkF X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Feb 2026 23:08:04.0881 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 98e68f0e-7787-4116-8dda-08de637915cd X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[satlexmb07.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CH1PEPF0000A348.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH8PR12MB9765 X-ZohoMail-DKIM: pass (identity @amd.com) X-ZM-MESSAGEID: 1770160114610158500 Content-Type: text/plain; charset="utf-8" Enable dom0less guests on ARM to use console_io hypercalls: - set input_allow =3D true for dom0less domains - update the in-code comment in console.c - prioritize the VUART check to retain the same behavior as today Signed-off-by: Stefano Stabellini --- xen/common/device-tree/dom0less-build.c | 2 ++ xen/drivers/char/console.c | 16 ++++++++++------ 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/xen/common/device-tree/dom0less-build.c b/xen/common/device-tr= ee/dom0less-build.c index 840d14419d..cb7026fa7e 100644 --- a/xen/common/device-tree/dom0less-build.c +++ b/xen/common/device-tree/dom0less-build.c @@ -829,6 +829,8 @@ static int __init construct_domU(struct kernel_info *ki= nfo, =20 rangeset_destroy(kinfo->xen_reg_assigned); =20 + d->console->input_allowed =3D true; + return rc; } =20 diff --git a/xen/drivers/char/console.c b/xen/drivers/char/console.c index b59ebdeddb..7afe9cfd41 100644 --- a/xen/drivers/char/console.c +++ b/xen/drivers/char/console.c @@ -610,11 +610,20 @@ static void __serial_rx(char c) if ( ACCESS_ONCE(console_rx) =3D=3D 0 ) return handle_keypress(c, false); =20 + /* Includes an is_focus_domain() check. */ d =3D console_get_domain(); if ( !d ) return; =20 - if ( is_hardware_domain(d) ) +#ifdef CONFIG_SBSA_VUART_CONSOLE + /* Prioritize vpl011 if enabled for this domain */ + if ( d->arch.vpl011.base_addr ) + { + /* Deliver input to the emulated UART. */ + rc =3D vpl011_rx_char_xen(d, c); + } + else +#endif { unsigned long flags; =20 @@ -633,11 +642,6 @@ static void __serial_rx(char c) */ send_guest_domain_virq(d, VIRQ_CONSOLE); } -#ifdef CONFIG_SBSA_VUART_CONSOLE - else - /* Deliver input to the emulated UART. */ - rc =3D vpl011_rx_char_xen(d, c); -#endif =20 if ( consoled_is_enabled() ) /* Deliver input to the PV shim console. */ --=20 2.25.1