From nobody Sun Apr 12 15:18:48 2026 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass header.i=@eviden.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=eviden.com); dmarc=pass(p=reject dis=none) header.from=eviden.com ARC-Seal: i=2; a=rsa-sha256; t=1714664002; cv=pass; d=zohomail.com; s=zohoarc; b=OYRVw4hxfzDQ+Vt9m/7XyOMd9F55BGqQ+o6SXR9GxC9qD0Ny6XPZ00MylgJG9aJhNogy5fQQPXa7DvTxwHRmf10YbdMANDU8pSlmx+HQXkxrA5codH35GRG++wiwksSw3QhF71TqmsGNIeo/8t0X/cCnf5d0yD2UYSJyacBSwZc= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1714664002; h=Content-ID:Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=9FxV2pX7chRK0bdJDSW+G+9YHH7CXug/vkDSNtE3+PE=; b=k8znM5+iKwXqxJUclRc4dUrLgvHknjY94OM5dNIaUzgaZrGSkVBop+pHAfd+3CLCB4wu8R9CK623pghsEGNbCGshkDL0u71L1TvDl7ZM4lwasfp33F8YgF6xuyuMf9v1Ob86qIU6HUNe+wQljh+0MsKLhgPpkAXOV2b0HddNl6o= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass header.i=@eviden.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=eviden.com); dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 171466400213238.01334017454326; Thu, 2 May 2024 08:33:22 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1s2YNY-0003oF-Ar; Thu, 02 May 2024 11:29:48 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1s2YNW-0003n1-PW for qemu-devel@nongnu.org; Thu, 02 May 2024 11:29:46 -0400 Received: from smarthost4.eviden.com ([80.78.11.85]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1s2YNU-0005ys-UQ for qemu-devel@nongnu.org; Thu, 02 May 2024 11:29:46 -0400 Received: from mail-db8eur05lp2104.outbound.protection.outlook.com (HELO EUR05-DB8-obe.outbound.protection.outlook.com) ([104.47.17.104]) by smarthost4.eviden.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 May 2024 17:29:21 +0200 Received: from AM8PR07MB7602.eurprd07.prod.outlook.com (2603:10a6:20b:24b::7) by PAWPR07MB9661.eurprd07.prod.outlook.com (2603:10a6:102:389::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7544.29; Thu, 2 May 2024 15:29:18 +0000 Received: from AM8PR07MB7602.eurprd07.prod.outlook.com ([fe80::fbd7:ca71:b636:6f9d]) by AM8PR07MB7602.eurprd07.prod.outlook.com ([fe80::fbd7:ca71:b636:6f9d%4]) with mapi id 15.20.7519.035; Thu, 2 May 2024 15:29:18 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=eviden.com; i=@eviden.com; q=dns/txt; s=mail; t=1714663785; x=1746199785; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-id:content-transfer-encoding: mime-version; bh=9FxV2pX7chRK0bdJDSW+G+9YHH7CXug/vkDSNtE3+PE=; b=b16vJBOm5WRvRuG3FoKkAQBiRcdoQIORmpPJ4VkxQLSOlyJW0e9i1zLD Qap56Z7FwEaSJZJmVPcywKmOk2Lx9wuJJVSFLQ97wTXv949gFeJTl6hsu RU5iR4b35dCMHBRsZhYE7LsbK+WlK3OCl+4FHum18w95FGYgqEnUZZmVI UByBbv+Uk6FhmOU0RhscJvOkWq4WzFTR1iH/XLH/R71e48Jvl8JYVvovV TfYM/gp/ii5LGrz4daDxUyPnN+8OVbi+NSIsPbdOUNRtnpY80JIOtUx5M UnvIgyc9h5EVv7nbhJ/edwhqVuDBhEQGZfs9/V9cvmWp1KC5+cPDF+u1P w==; X-IronPort-AV: E=Sophos;i="6.07,247,1708383600"; d="scan'208";a="11785881" X-MGA-submission: =?us-ascii?q?MDE4PCaUBIkpJLsr4UMsDamwzf9UlnKxuQ/fll?= =?us-ascii?q?2Wy2JUwWj2Vqroy4SHbVKDn3bqwBJWs9vQ1v1moN59drvqAQtyIkoi/P?= =?us-ascii?q?OQhLHJjWFlO1/hcne83scLVjihzayxK8EJTs1ZAHXLzH/ZnRC05NeeDw?= =?us-ascii?q?JrDUDq04nx0vMD+9Gd/X/oAw=3D=3D?= ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=bn5vAuldfbP+LAIst3Z8c6bfATUo2NTQoVAjVWPItnfZMazQA+IWdQuBlV9I6bGSL1u4jh2z2HTszVmsajjy9hw3Kq4alHQ63WWzYnzhcBhTVn3IiDaCXNX/RWQE2RAu1rGi2F5fOmhbisKaVu619F1WCYszGtTzGk1h/Xi9mADXXnpjeoz3iSzdNllVnukg/+0sEfliD1lGIoTJMzLBveBN7dibRoNRYYkfOIoG6CUXB4bFFMZqYL/AeAk7U6HkB35rNCO6pFjq0GnJD42byXSx3w59MtrXRUCE8syGrTe3GMEhDInCKEj/SZuET1Bbk+qcE4X4dicQI6svkFgM1A== 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=9FxV2pX7chRK0bdJDSW+G+9YHH7CXug/vkDSNtE3+PE=; b=ZbFmmZObTOlj69jZKyw0hPOzL568tBVOk23+vsKZsDHBKxO4/SRdN38fQZLXOX7ZKwnhNd1yoauPSTX1Xt8pRSIGhQlGEiRSGrC4LqNLUZdi9xATo9h4xdrClkxiCkQzLGasSPGPXtLlRTEZyQBLrw3Dwsu6lwNr4jFqQj0LBIX3Jlup7G3+aLUHgXeIcz2DgFoq/Xa1vBYUTQpzIaTCjbIwwRW2qD/t+7dxGtgi0bjHNB5mA5WKVLjU0WMWVZ82/WWPPp2y63ouFmSJwty6PPigtDq+QJqmhJRp+c8Ahd2eiIaQSxKfXQECkM8u1TD5xp5A1z0qT2be6pEcQUQSCQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=eviden.com; dmarc=pass action=none header.from=eviden.com; dkim=pass header.d=eviden.com; arc=none From: CLEMENT MATHIEU--DRIF To: "qemu-devel@nongnu.org" CC: "jasowang@redhat.com" , "zhenzhong.duan@intel.com" , "kevin.tian@intel.com" , "yi.l.liu@intel.com" , "joao.m.martins@oracle.com" , "peterx@redhat.com" , CLEMENT MATHIEU--DRIF Subject: [PATCH ats_vtd v1 08/24] pcie: add helper to declare PASID capability for a pcie device Thread-Topic: [PATCH ats_vtd v1 08/24] pcie: add helper to declare PASID capability for a pcie device Thread-Index: AQHanKV/ZpfW7p59SkGnAmV2rL6amQ== Date: Thu, 2 May 2024 15:29:18 +0000 Message-ID: <20240502152810.187492-9-clement.mathieu--drif@eviden.com> References: <20240502152810.187492-1-clement.mathieu--drif@eviden.com> In-Reply-To: <20240502152810.187492-1-clement.mathieu--drif@eviden.com> Accept-Language: en-GB, fr-FR, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=eviden.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: AM8PR07MB7602:EE_|PAWPR07MB9661:EE_ x-ms-office365-filtering-correlation-id: 7a3182d0-e6d5-48e2-f6c8-08dc6abca218 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230031|366007|1800799015|376005|38070700009; x-microsoft-antispam-message-info: =?utf-8?B?ZnlKVExLME9yNDJCSUpvTVJLK1VodnpRQkxldFJIcE96Z29WRXZFYTVzSERz?= =?utf-8?B?UlFvY3QvbnptVVFBWGo2bmM2bWV6bElhSkJBb1BOdmcxSFZuaFBCcEhRcFBO?= =?utf-8?B?TFVmeldCd2RNUkpKY1pPS1BFcWppYVRvTlNYb0FMb0Q3a3BOdEQ2YlpFOTV2?= =?utf-8?B?VFdvNlFscWloeFNpekY0bDI1M2toZTVQcW5qNzlmVTVjbXZ4UWZCZWhWdFpS?= =?utf-8?B?UTdPUzUrRTh4WUhkai9maDEvTFNZelZ4TTFITUVza2dIaGlTam56OEFvN2Vo?= =?utf-8?B?Q21DelVtS3hPWTlDZDVUMCtydFYwSUtlTzA5eVo0WU1DMWdOMHhrMk9WYnlQ?= =?utf-8?B?RFhzNEkrV2E0OHUydjJ6dGpjdHBRcnc4ak5lSlh5K3JqSzlxRmJSVHBQK2F3?= =?utf-8?B?VCtCNjM5LzlLSUJicFFRY0VHV0R2aTJybndnTllCMzJtamVzb3FtYTI0d1VU?= =?utf-8?B?VXFvTit4Ri9BbStVNnRTdzVzU0FaYnNiK1JkazN4SGF3bEc5cmI0dFE2dWRB?= =?utf-8?B?NHFFSW9wZHZSVUZPcUtsbC81M1ZGTmNnWmdackszdUtSc3NLcFJvZTAzOW42?= =?utf-8?B?TFRJcHBWOVpHTHI1ZjFoWXhkcmllU0k3aGVrQ29BemRUb24wV2dicy84TFdp?= =?utf-8?B?QXk3SlJMTHBaeCtSc2EzejgwaHhmL29kaXBLQ25NUGtBOWFXR1h0VkdhOHlR?= =?utf-8?B?MFhmSW9mdTQyWjMrN3lVeDRoUjFGdGRzNzB3aFJBN0NGdTMrLzlWbFBpbVJL?= =?utf-8?B?VjV6eEovZkxQS092c210ZmZwdFQ1RDltTVBoT1RKamh0SnB1Z2FzV1BVZllL?= =?utf-8?B?Z3RXN2VXYTY5ZG1mWlEwRFk3NHVkSURibnhZTndLaEdTbnBjSldzWkQ4aFMz?= =?utf-8?B?RWdEVzhJanNIZWcxWWc0b2V1YmUwUUNnQWNRZjI1Yy8rSWtoRnRmaEREYm1u?= =?utf-8?B?ZmgwMUh4cGM4eXNTNURQZUcycnVJWmdPa3JVOTZGKzVETy96YVA4UFQyTTlE?= =?utf-8?B?UHB2Yk41Y0FuTTFqejN1YnhKckk0dWU2VnorTlJQVlFNWm1XYjVJZHVyZ2Fm?= =?utf-8?B?RUJxZmFTeUpZVDdDNGlaaytFS1Uzc0VOZHVVSXEzN1NOY01wUzVEMlY3c1Mv?= =?utf-8?B?YXlCTitCZDBCd05wcENYVlNzR0hWZVJhTURldDhOcHY1czdmMS92QXEzWGQv?= =?utf-8?B?YkY1VEJ0ZmVlMW5GYThUb1c5VVhVZ1FKc29nVXY1RElLSUNoL3J0Z1NoZzBR?= =?utf-8?B?RVRRdGhxS0NTVWpLU1hjd0lnZnl5MmEwbFkrbDVEV25hZXdPWGNxVUV2OXFz?= =?utf-8?B?UWRveEEzN3k0Z0t2Myt4UHIyNzFkTzk2WmtCTmpubXlyU3J6RWQzVEFVcGsr?= =?utf-8?B?MkFmSjFwdTNTQTY3aWFGZXBPV3pibG5BZ3hKWDJ1UWVFd0VDMTUrZGFlNDRs?= =?utf-8?B?Z1h5Tk00M0J5T2RiQ1UzTjhSdHZQTzdRRmxkek1VUWxrREVJNUtPNGYzTGxR?= =?utf-8?B?d2lndkZTNGxremYxUzJHMTd0ZlNsSkw2aU5TUVZtMERhZWhlbHFiRWlVNXda?= =?utf-8?B?dzZSTU5IalNNNEFmSHNuVkFObG4xWjhTd1pLWlZSZ2hsQTJ6U3RscWRxTlAv?= =?utf-8?B?MmRVTm92bXN4VHl6d0xtSmFxbWlwRUFMbHBtUHZmRk5zV2haUUlITUF1TlpD?= =?utf-8?B?MTY3bXN1TGQvZEZhWmtCa2tReGFYZmRxbGI0dTBGejNZQVF2YUkzWE1JbVph?= =?utf-8?B?LzFFa3ZtK0NIRFhyWmxhZ01MQzllL2dSZnN3bmNDM3o4alBjSUYzekJTSS9R?= =?utf-8?B?cWovbFRPUGEweEVKbGtWZz09?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM8PR07MB7602.eurprd07.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230031)(366007)(1800799015)(376005)(38070700009); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?Uk5GUVpzRk95MUdWRW5MVW9MYzI0UEs3RVNPZ0dsMkMvNjduTmV6SHY3TFhi?= =?utf-8?B?b1pRUHppVS9RbEl4dnNjSnlSOUNmdmRvT2dIZFl3QkQ1dVRwUndWTWdaVlA0?= =?utf-8?B?Z0tidGlwdDlvN3Bsdk9NeTU0Mm9EU0NUemdaK2hqdk8zdFJ3QndtVDcyeVRF?= =?utf-8?B?S1JOT1JyaVNVL0hGM1hxVWtEYVgzWTN1RkFVUk1CdjBZMW44K1pGak94N0pP?= =?utf-8?B?L2VkOWFHd0xBNTNXSmIxakpqTmpkRUJZRE9SMkw5MUJFalVPZytZRjloMzFl?= =?utf-8?B?V28xbmhJZUZhZjVRUHJnMDdrYXVMU3lwU2lDTDluVTl6bWVvMDFvNXFUL3kv?= =?utf-8?B?ZjVNL2VUc2JHZ0lhSGY0RW1PQXl1bUtaVXM3WG4zTXFoaDV2cjZuTUZkQ3FP?= =?utf-8?B?OWxqU2E2WWxYbEZzSVk1c1FBY0tpajBIQzk1aDEwYnhhaU81dERqVU80ODJ0?= =?utf-8?B?dXFEOEdoeVRHMnB6OVZKdFdpcjlFOElKVUU0QU5ISm9LY2QvRzZQMnNCbE5P?= =?utf-8?B?eXVQVndCZkg0SFYrUVhxajdyNU5nVFNpT1VGQml5a1NhOUFRbHY0NWpRUEtX?= =?utf-8?B?Yml0L1ZrUnhETnc4cXNJTTVBeDdWTHpCQlNBdFpMR3I5NnVkcHdoaEVMZEVV?= =?utf-8?B?WThTS3NuMEs4aDFFRmdYakk5QURmN3Z2dFRyRm5zWFBiSFRYNjhJaWVsejVz?= =?utf-8?B?TUI2NHJsSEZjbEhIR2lCWnJNTVpacEFJZjJUdEpkRmZYa2Jwbi9aRGl0dVNM?= =?utf-8?B?YXBtSHErVWxqMDgvbXBUSVBYc2ZKL0tsYkoza0N5K3czTGVpMWxWM0xNOGNx?= =?utf-8?B?SlM5ZTh4T2l0YmJuNXBPdkMyaUdsTjlkMXAzUXJ2ZUgyZjRlTnlvblpheUxP?= =?utf-8?B?aTkwOTgzRStIMHNQYit4WCtiWXlLSjBmR1FOOWlYSUhrclBNYzRxUmhhVWVo?= =?utf-8?B?WTk5c1Z0eWVBYlJKNkhmaDBpWTBsMytBYlY2WkxGMnBsWnY4YVhwYUZTRnRK?= =?utf-8?B?SnlsU1ZsdW1pT0R3MXFOSTN1MDF0d0F6UmZvS1FISmZxQ0laUmxKbGpPclN2?= =?utf-8?B?K3JkTFY3WUZmWHZlNWxPQkxYeDEzQ3JZZU5JOUQ3Q3hGb1BiNFprN3EwV0xG?= =?utf-8?B?WEpmKzN0amp3SE55aGlYMW9iSjJYUkRGUDNrVTlqRXJVUE9XZmxLa3BvVG9s?= =?utf-8?B?dC9na1BYQmtmKytNdFd2OGIvVDZ0SjhUOXFVTXV1cjdYeSt1QWxzSlFYMGIy?= =?utf-8?B?UGVERWo2clU3Ti82MXc4MnQydy9sUHVGUFpoSFF0Zk1OS0F0UmhoVnBQcFM4?= =?utf-8?B?YWVlbGhYV1JIc3JVTkc0WXlyWm1pYlBXaGtURCswWGpuQ3k4cFovcmExY04w?= =?utf-8?B?dlJxRktkZ1Q2bnY2WUt4QUxSZkFoaExQbnJWdytYU2JMc0RLbW15VjdkV2o2?= =?utf-8?B?dnpkUXVvK1E2Z3NEZElPUHFHd2lqeTlUVENxUlBDRmgxVFNnUmQwTTFKY3hI?= =?utf-8?B?VE1EVXh1NUxXcE1vSENTdi83dDFVZEd0YW0vdHFvOGFVVGNiOGtlamNkZ2s2?= =?utf-8?B?a2xCQWdBKzZXOGtnM1VYYTNwTGZOYVEvNk1zbzJHb05JK2EzZTZlNzhQT2d6?= =?utf-8?B?RnUra2drZ2FQQ0dpT1V2VVhBOGZHbmp1NWt2Vmk5S21hWEdhMElzUERaZDF5?= =?utf-8?B?cUh0NmNKTm5Wd0JZTlhYbnNVNTI5UXpHendZMU1LOXBVeVhTbEt2THZtQ2kx?= =?utf-8?B?K0VOTG90L04xdHc4amlhYndkSVlCQ1N3S1JZT21tanBxaWt2ZFA3NytxSE03?= =?utf-8?B?RXNrN1NtWUN3d3dsdE5LLzZ6L2NqaG5PNmoxdUZhV1J2Zk1tN0hKM0VDR0xH?= =?utf-8?B?c2FKTDhaaHVBSlAweHdic0ZRV0RzcC9nVnNtQm4ydlgzbjFON240ZStzMXN6?= =?utf-8?B?VG1YaDhSb0JGazY5SE5Xc3p2SDZqU1prbUpWcHU1Y3pTUmEwT1JkN3Z5b1FB?= =?utf-8?B?MnZ0V3AxRFJaM3kxWVV4cVZuNzJtNWZaQWVjS2hpSUMrQk16Z2hoemdRdHFZ?= =?utf-8?B?OHQwNzFGUUtvSmJkRjh4UkxLQnNkNytoOVB1ejdJam94blRUQm44eXNQUWFI?= =?utf-8?B?ZGtHa2V4Z0duV1FrZy9qbXVPWHQyc091WTArUnQ0c0VZMzBqTWxNOEo2WHVX?= =?utf-8?Q?ZCiuqS/9QBLXMn31j6I3qfw=3D?= Content-Type: text/plain; charset="utf-8" Content-ID: <750248B27314B54590BA69815BB74B75@eurprd07.prod.outlook.com> Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: eviden.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: AM8PR07MB7602.eurprd07.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7a3182d0-e6d5-48e2-f6c8-08dc6abca218 X-MS-Exchange-CrossTenant-originalarrivaltime: 02 May 2024 15:29:18.5251 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 7d1c7785-2d8a-437d-b842-1ed5d8fbe00a X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: l2xVAx4F+S9BZz+OtF2ybYERV0A6uReOqjyYMkvf0jr2BMQKAQCkgbiq5MJ6ooEZBwHR5DUBppuWTfGvFok6XuSY6GiFIcYUFLIVfJHTOHiKq++fixVsiv/OYISc9p5M X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR07MB9661 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=80.78.11.85; envelope-from=clement.mathieu--drif@eviden.com; helo=smarthost4.eviden.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer2=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @eviden.com) X-ZM-MESSAGEID: 1714664003376100003 Signed-off-by: Cl=C3=A9ment Mathieu--Drif --- hw/pci/pcie.c | 24 ++++++++++++++++++++++++ include/hw/pci/pcie.h | 6 +++++- include/hw/pci/pcie_regs.h | 3 +++ 3 files changed, 32 insertions(+), 1 deletion(-) diff --git a/hw/pci/pcie.c b/hw/pci/pcie.c index 4b2f0805c6..c8e9d4c0f7 100644 --- a/hw/pci/pcie.c +++ b/hw/pci/pcie.c @@ -1177,3 +1177,27 @@ void pcie_acs_reset(PCIDevice *dev) pci_set_word(dev->config + dev->exp.acs_cap + PCI_ACS_CTRL, 0); } } + +/* PASID */ +void pcie_pasid_init(PCIDevice *dev, uint16_t offset, uint8_t pasid_width, + bool exec_perm, bool priv_mod) +{ + assert(pasid_width <=3D PCI_EXT_CAP_PASID_MAX_WIDTH); + static const uint16_t control_reg_rw_mask =3D 0x07; + uint16_t capability_reg =3D pasid_width; + + pcie_add_capability(dev, PCI_EXT_CAP_ID_PASID, PCI_PASID_VER, offset, + PCI_EXT_CAP_PASID_SIZEOF); + + capability_reg <<=3D PCI_EXT_CAP_PASID_SIZEOF; + capability_reg |=3D exec_perm ? PCI_PASID_CAP_EXEC : 0; + capability_reg |=3D priv_mod ? PCI_PASID_CAP_PRIV : 0; + pci_set_word(dev->config + offset + PCI_PASID_CAP, capability_reg); + + /* Everything is disabled by default */ + pci_set_word(dev->config + offset + PCI_PASID_CTRL, 0); + + pci_set_word(dev->wmask + offset + PCI_PASID_CTRL, control_reg_rw_mask= ); + + dev->exp.pasid_cap =3D offset; +} diff --git a/include/hw/pci/pcie.h b/include/hw/pci/pcie.h index 11f5a91bbb..c59627d556 100644 --- a/include/hw/pci/pcie.h +++ b/include/hw/pci/pcie.h @@ -69,8 +69,9 @@ struct PCIExpressDevice { uint16_t aer_cap; PCIEAERLog aer_log; =20 - /* Offset of ATS capability in config space */ + /* Offset of ATS and PASID capabilities in config space */ uint16_t ats_cap; + uint16_t pasid_cap; =20 /* ACS */ uint16_t acs_cap; @@ -147,4 +148,7 @@ void pcie_cap_slot_unplug_cb(HotplugHandler *hotplug_de= v, DeviceState *dev, Error **errp); void pcie_cap_slot_unplug_request_cb(HotplugHandler *hotplug_dev, DeviceState *dev, Error **errp); + +void pcie_pasid_init(PCIDevice *dev, uint16_t offset, uint8_t pasid_width, + bool exec_perm, bool priv_mod); #endif /* QEMU_PCIE_H */ diff --git a/include/hw/pci/pcie_regs.h b/include/hw/pci/pcie_regs.h index 9d3b6868dc..0a86598f80 100644 --- a/include/hw/pci/pcie_regs.h +++ b/include/hw/pci/pcie_regs.h @@ -86,6 +86,9 @@ typedef enum PCIExpLinkWidth { #define PCI_ARI_VER 1 #define PCI_ARI_SIZEOF 8 =20 +/* PASID */ +#define PCI_PASID_VER 1 +#define PCI_EXT_CAP_PASID_MAX_WIDTH 20 /* AER */ #define PCI_ERR_VER 2 #define PCI_ERR_SIZEOF 0x48 --=20 2.44.0