From patchwork Mon Feb 24 09:18:26 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mykyta Poturai X-Patchwork-Id: 13987652 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 lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id B92F8C021B3 for ; Mon, 24 Feb 2025 09:19:12 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.894982.1303638 (Exim 4.92) (envelope-from ) id 1tmUbi-0005FT-IA; Mon, 24 Feb 2025 09:18:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 894982.1303638; Mon, 24 Feb 2025 09:18:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1tmUbi-0005En-E7; Mon, 24 Feb 2025 09:18:34 +0000 Received: by outflank-mailman (input) for mailman id 894982; Mon, 24 Feb 2025 09:18:33 +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 1tmUbh-0003pb-0i for xen-devel@lists.xenproject.org; Mon, 24 Feb 2025 09:18:33 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com (mail-dbaeur03on20603.outbound.protection.outlook.com [2a01:111:f403:260d::603]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 5059ae58-f290-11ef-9aae-95dc52dad729; Mon, 24 Feb 2025 10:18:32 +0100 (CET) Received: from PAVPR03MB10102.eurprd03.prod.outlook.com (2603:10a6:102:30d::12) by AS8PR03MB8859.eurprd03.prod.outlook.com (2603:10a6:20b:56f::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8466.18; Mon, 24 Feb 2025 09:18:26 +0000 Received: from PAVPR03MB10102.eurprd03.prod.outlook.com ([fe80::35ac:8893:c31c:b971]) by PAVPR03MB10102.eurprd03.prod.outlook.com ([fe80::35ac:8893:c31c:b971%3]) with mapi id 15.20.8466.016; Mon, 24 Feb 2025 09:18:26 +0000 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: 5059ae58-f290-11ef-9aae-95dc52dad729 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=lLE7WwhonQoGgTC8F2vONGYnZ2qYX2hRoEoFIIVyHyT+/D1r7qycWr1blVUKlIOoXN44AlZoPZTYQ4F+3pM4rBhxvIXLq+l1hRLSaE1mbRfKYytiErKJHFnfwoPpBJnmM5QUcQtIqg/NyCZRZg7oWrE1B5WzcVJZomglJO1Ix3CxqgvSI+znMRnySy4vt8KZ113P+/TFwQ3UKigWqyiVGomJMUj3lr8n+DgCMqhOsuDvHbPecn6rGesTD4+0GXeICNNME3HT+dQn8+5/U5Y1G0AWS1GyKOANyDxLNSzQ3sN4RmYTq0rqDZCdOE4COdRjN+14kxpNR8yAKEiuNQvGBA== 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=ArXy3H4w82OCwUvmpq0NyU7K5YqtXJp08wLVcf0//QI=; b=Bglo5RvP+NJLDbAijYFS1kN26UZKeHfsUZtUyKnE1y3iSEnV3UaVPPWo3GOs2th04JSHwXAdaS5MJtG4uS3JsloNL1gCkZ2NWhuY5rMjTwgyvBh0jX1ZoWLjpzBb2y86iaPzUb/LV10moljpmj3/vcE6bq3ISJOvsvhItbZeLWVXqOLNzzJn+0s8uevUMsZzES9cl6QQMWCSWdcWzyW8xxTQbRjCCIfwh9OjD7g0Q3w9fCyK2SyYLHSm7ZJF5CHPuHv7oNurkbNY4WZCt94YNKE+FZFToHzN+ssmq6U+LBPmR3ZUx4lSHyTO/8VtGDjTzavg/MiArxF1l6h129XIFg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=epam.com; dmarc=pass action=none header.from=epam.com; dkim=pass header.d=epam.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ArXy3H4w82OCwUvmpq0NyU7K5YqtXJp08wLVcf0//QI=; b=BseJo9CYO9fLje9obak6umL98CRbuBNiyA+R5fTjh6WxNFrlffwKgN3WmzbwK6Mq82+0SYCKNUZV8JmiyLH/zleJyUC5CqtUUSDYARYoPfZdL5n0q8AVrv9tieq6AVrHgcbAmArevVxHvVJjBlWQhmaphbgyPjY1eja69fRnvpUDcjv5b4K9XX2psv1rpy1TCCSZ8b6sOdpYrhIudbWv2JdrBpbtV4rfS+JJ4ETHcIogHapen1Sa3RLZogO+Qx4CkHbl6hSLEXWZgHG/9qmFpl2lxhJETz4UTnI5I8oAiwbOXmYvz/AAEI8IfP+dd1nfz8t9d1F62sJGzCAvfRaNAA== From: Mykyta Poturai To: "xen-devel@lists.xenproject.org" CC: Volodymyr Babchuk , Stefano Stabellini , Julien Grall , Bertrand Marquis , Michal Orzel , Volodymyr Babchuk , Mykyta Poturai Subject: [PATCH 6/7] xen/arm: rcar4: add simple optimization to avoid ATU reprogramming Thread-Topic: [PATCH 6/7] xen/arm: rcar4: add simple optimization to avoid ATU reprogramming Thread-Index: AQHbhp0P6SKfNkaWykyl+zsyAHE9bw== Date: Mon, 24 Feb 2025 09:18:26 +0000 Message-ID: <499ef211f469949e5fefd47b17e135b26325e0e5.1740382735.git.mykyta_poturai@epam.com> References: In-Reply-To: Accept-Language: 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=epam.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: PAVPR03MB10102:EE_|AS8PR03MB8859:EE_ x-ms-office365-filtering-correlation-id: c336d425-a5e3-4e6f-084e-08dd54b431c8 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0;ARA:13230040|376014|366016|1800799024|38070700018; x-microsoft-antispam-message-info: =?iso-8859-1?q?GdcYRgYiWWgTcGd4xJPgS83ZHP?= =?iso-8859-1?q?T4oAEtgLlKEvVhDRIXMUDLCwYOSusAyrcW0zAj/vRA+QFEnx6LKIpePhhqXd?= =?iso-8859-1?q?QuNfPTD7Z0EHaBLywFIKIBmG7r3H2/QCsI99ehX984rgkkC7bWxLdAzEnf74?= =?iso-8859-1?q?J3S0fnbNQp9EfF1TLOmO6TGorwzc9+qMeVZ2PLjfdnxCG7/9FwG6Gne9loYj?= =?iso-8859-1?q?gsFuTMxwd2/fMbTcXsMZI1850e4xcvM0q9VNWrpY05daLD/vT/5PVFpA1FCM?= =?iso-8859-1?q?WMmY7HKukJTwS9o82R0dNQME2nqIzJqfIVSrX+9NbVsRIRu5YwC9lnHVTbLz?= =?iso-8859-1?q?YgiZeVKGqHgnL1PGFOywBN8BWUGjhiUTcaL2+KFdGsSmUxmTN00kiHDC0rRz?= =?iso-8859-1?q?UaK2pr7nS+efIvU1mzZK5DoCImgvenJpL1plTHqUEKHCf4hci3An9tPB/95G?= =?iso-8859-1?q?zwv4cM7DFKTRygUrNAhadmSRTjAWvLL9oiHPH94qrAxEQ8mWjt4nGtkzBINX?= =?iso-8859-1?q?cYK7Xx4Pc/DyDK5bGCXab48aK8KATvskijAtjWJ3Yl8Vsoxdp/OFx6wujnyc?= =?iso-8859-1?q?0ydNsYQvP7/ylAvD0Sly4BeBZOfCyveacLjZn09dqnhSgTLHuQaS5Rm3Ghjy?= =?iso-8859-1?q?IGc9pvvaFPbYwb/0D9GzzgZTm54BacWi75eVGH+XtH0TvmQBEX6ip36nhR1E?= =?iso-8859-1?q?zaOw76Ey3bst/brDKhcZ+fTpStBzXHquYUn1Fzlt12La8P4YXNRSO2eIhFC3?= =?iso-8859-1?q?Fb1WWkEBqFesRjbUIQGycClxDeTssK066v/qwplpFl/Y3J0EO7qoUXhgYRyW?= =?iso-8859-1?q?lWcDpjDirmjioLJSBMv4DDK4DwmwcwU0cu5brCgEPNNy47jpm/yDsXbFm6Jm?= =?iso-8859-1?q?TQvOrUiSP0wyfeNh0nLYAnFSRj6MY1zZhyPhkijZjJfk/Gaxx2Y1kB56LtLI?= =?iso-8859-1?q?usYCTln3aXx7G3Cx0RCOT4iM1YZL32Ms8PDR8Z5ohP8eFWJS6cXQmODltqMY?= =?iso-8859-1?q?FT4nV+v7SZCm2wDdg0FQZO0GhETzAtPIosASwDlsCCmh8wQEh/YnkntZklNx?= =?iso-8859-1?q?6fhvCozWVDUYD3wkFTdq2/J1sOXw20XpTIRp6qnCvb4EyR1zdEqaysgWwMlr?= =?iso-8859-1?q?drb5vmkkKu0+LsdIMUDxgg8tSMzsAJ4MibisHd1h3JTlvbeWz1LIRqsY5yqe?= =?iso-8859-1?q?y2Ld8L1qnVvqGuL5ONTWsrVeOp0cCTSbkxBFUZWhSJCL0OJB+bf1p8oaEm8I?= =?iso-8859-1?q?Aym7duS95LBYCwp1hzSACsUbeQ6s+KT7DrzYXLAEh2RUqaL7jWrhXmQ0d4by?= =?iso-8859-1?q?coy3fI0041WgQ0by68JNxH+Bz4FCH/TR5I5OS1mJu+3B9zAevntBph4aZJPN?= =?iso-8859-1?q?bWrMCBck9FhEOv7xuN9+ilwaknPv+rxX8LMKc+sOYhbtskqrJV49etSuBhuh?= =?iso-8859-1?q?YF2/XDva/kkZcFenNg8y1GnOcxLbe1vO+TZqDl5Cx8Ep1CRxiM0LXNG/pzK3?= =?iso-8859-1?q?r/YK+s?= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PAVPR03MB10102.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(366016)(1800799024)(38070700018);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?q?sxVR42xMPy2vkDxWy/OpaNF?= =?iso-8859-1?q?ZgXaywl1rwNzsJq2IQvBHosqCTx5yiE4GJeMbr2Pqx9Q7TOfDWbY/qqE5VDt?= =?iso-8859-1?q?Ie+C1A+OP6ydMVS5A6B7Ry2LVnw5TstES0aJKHTWCz2+iBd94jxRstR0dsj3?= =?iso-8859-1?q?cZATskDnTUyAH0E+T/o2+5ppJ15oKTLe8wN1tLOsU1aFLmUXvrUT4kRtmcm8?= =?iso-8859-1?q?P16lqY+mYjLSdoFyU+SLsHjyZ78NpIzgzlGMjEFMnGbQwjl/qNurSqf5NvcH?= =?iso-8859-1?q?YT7TBjY87zRI4xJO+Co0OZD/uUCBNvkpG3JNOUKxHuG13B5e8xcICcxu28jj?= =?iso-8859-1?q?q5Gs/vHIAhOy6w3J0HA7jLsKOlMa3+q84dfhwDeOKAbF0giSRe0zZsZwUIT5?= =?iso-8859-1?q?ji8SEcGl33ZVKif6N5NWhuNlE0K4ypXoHDSWUzGykXsZ7wlOG6DSMOLFHDup?= =?iso-8859-1?q?XEbB++GnX+RrpFy5Msyu3c++jc6mr1z1RpTuIrv+bOrLQPHF1nkCZ+udXoSR?= =?iso-8859-1?q?klON+XdAfrxaUWTB7S0XpVgshZ83ardywURnETsU66WVVM5DXNEOPqHD93pS?= =?iso-8859-1?q?LrGJKXK9RT8vtrCnNxOxv5py+dIKBOLbibrEaST8vs6S9/kvrCL+PVNrHl2e?= =?iso-8859-1?q?eaGsVsgH5T7rspP8XE0ZuwsA+tJvwxM15iPWxH1OpnQNUc5/Kt/YFGBs1Co6?= =?iso-8859-1?q?Oofye4LW1y+x+VlJ5xN6bIr7xnrT2eHOxERdohcBRM81EIUpPUHLx77NfYAT?= =?iso-8859-1?q?4fvspEIFyM4qaOkths3OFJwqZnKZP31ucthrSDDYfjVqki6y0MzlGh5BnTrk?= =?iso-8859-1?q?XbbUm2D/NdHa2JAQkr51U85fIa3Lg0jj3s8ELxvWzZ6jmeYwCE4qkKTbVL2I?= =?iso-8859-1?q?x3z4OicRYE2IXksdxrplIZsP4+VU49iq69lt0WSo7q7hOpxU8QYtNs0ZZLXo?= =?iso-8859-1?q?8uNsronB4bvtT9hCzmCaTDXbQo55QDd6gdPrNQ0XGKNoOIUK+1Ek+KUtVZSG?= =?iso-8859-1?q?FUqTcalKGl37HIUNNOVmBH5LKLYCER4H2O7zhHbe5F4WD+aPinTxjn9Hn74W?= =?iso-8859-1?q?9FYZ+MMHz0MV9Srvo148mAPCGQItdZVqw/NPvwfQqXCfqhkez/t7eveHpAE5?= =?iso-8859-1?q?3hLD6tDFhUzdOrm37yYUedHYQ4AeTFPcvO4vjd+tg3YiZiybIAupbBiRMRUo?= =?iso-8859-1?q?js/hM4F8/+NgPvS7nfW87vfpaZPQsFJXZ+NbxsWjLwvhlKie7le0K9tgA5rG?= =?iso-8859-1?q?aXvesCuF9x5G0eBPDi621aByBTHyrxo5H3OX+7Hg5Fz4bLs4ZdkXLNxAcijr?= =?iso-8859-1?q?4phTpieZQJB9ykFQcFYcwmTeRCPWwytbM+0ZcjiaNbN13SLgTX8WQYKOjN/C?= =?iso-8859-1?q?WlZNwk51yHxdDqIBMc1rv3p8nvpNK7xwkiMrDiRn4DQByOqLOBsu1XLNxZPe?= =?iso-8859-1?q?dTNoxVRsjwrhotWtWDJclnNeU3txGFzywdmYhvRvz/Tr1MQdkIFOb0mQv9Y/?= =?iso-8859-1?q?ZKl8XxZ1Bda74VDQEBvqv5Zk63u6BE9P8OGyZK1kujXPI40dx1WDljs2b3fw?= =?iso-8859-1?q?nVCj/g9RPbYg5kDr8/XDXcTIaNJP8xq5y11hZdGdbj2PZl6vg7KehlnsClJS?= =?iso-8859-1?q?jZAaU4Y5mJmBnu3XsIXicvXf2ch+vZeVZ73Jmgg=3D=3D?= MIME-Version: 1.0 X-OriginatorOrg: epam.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PAVPR03MB10102.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c336d425-a5e3-4e6f-084e-08dd54b431c8 X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Feb 2025 09:18:26.1947 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: lEB9BFdBtHm6W5ktqzIae5+ZL3guFSoflT6bGNaDgm94IyWp1ZdF6SdRGXGaOMRO8O3/U5rRnnI0OAaQFx9S3w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR03MB8859 From: Volodymyr Babchuk There are high chances that there will be a number of a consecutive accesses to configuration space of one device. To speed things up, we can program ATU only during first access. This is mostly beneficial taking into account the previous patch that adds 1ms delay after ATU reprogramming. Signed-off-by: Volodymyr Babchuk Signed-off-by: Mykyta Poturai --- xen/arch/arm/pci/pci-host-rcar4.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/xen/arch/arm/pci/pci-host-rcar4.c b/xen/arch/arm/pci/pci-host-rcar4.c index 3b97bf138a..3e3e073b09 100644 --- a/xen/arch/arm/pci/pci-host-rcar4.c +++ b/xen/arch/arm/pci/pci-host-rcar4.c @@ -367,6 +367,14 @@ static void dw_pcie_prog_outbound_atu(struct pci_host_bridge *pci, int index, int type, uint64_t cpu_addr, uint64_t pci_addr, uint64_t size) { + static uint64_t prev_addr = ~0; + + /* Simple optimization to not-program ATU for every transaction */ + if (prev_addr == pci_addr) + return; + + prev_addr = pci_addr; + __dw_pcie_prog_outbound_atu(pci, 0, index, type, cpu_addr, pci_addr, size); }