Received: by 2002:a05:7412:8d10:b0:f3:1519:9f41 with SMTP id bj16csp5540508rdb; Wed, 13 Dec 2023 11:31:55 -0800 (PST) X-Google-Smtp-Source: AGHT+IFq+Z/b7CF9vo/bp5kt8+QUzUh4pSkNEkknlwxSBq88aE24q20Gq2aBZXfWCqXbF8VE2jH6 X-Received: by 2002:a17:902:7295:b0:1d0:b503:2edb with SMTP id d21-20020a170902729500b001d0b5032edbmr7957127pll.69.1702495914542; Wed, 13 Dec 2023 11:31:54 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1702495914; cv=none; d=google.com; s=arc-20160816; b=0UUgmFqThvYMFjWszbFnWb8DSiIhR58tjmf0vIp5n6K1trCyEb7VufGp4ADhVEQjdS fa9rxO8veJKZOtVCjgd9RlxklbDfFJZ8xonUTV++ucPnqA9khESzB1FrXlFJ6TYHURb2 ThgTXRFf8GR9YH/uNv3IgJwoezb+pQ24hiXGddtZfK+Cucw5qn+eLV2EeJH/Rs8MY/Ba hg2uECJZhY/D+gesa/bIxUlJnKYC7U/n7DdMTDSg5401pCymZfvJ321gp/Tur5OLnMUC vKy77vQCMihsuy97unOsyWVHKRMYP+y1TPSGh8ZZ4QS5UpULyEBY5KsbW5YACsNjsEZH Mt4g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :message-id:subject:cc:to:from:date:dkim-signature; bh=0c0Hae93+Ec+b9FrkUlK7GaE23yB6zrIowsYpMu6TjM=; fh=O+9HUmWCV4XGUWR+bbJVbCczM38iOfTI09R+VESlivo=; b=Z7AoitamxPn1D0bCeZrIQP1Ia7iBF8is8vSvmX6B9SMVHKGtzTzIrslmALsXCGSEnx lzqhTBNT4qVgfDUqga59BgwZHp6we3taCLRkQg2Se80hg5iazcIJLOFsTXkJhVwcyDaC kHnxWv9tL1xeYvbuqjRk6FOoWl6pydyDE0hgpjmyhnnnJBOaVQ4oXkKU/If3WojPTJ6j th9bmtOTxn7GXrNpJ38pWstcDNfAzDTQzuZPkvcZneqBwZCuH40660f0QhBN9/D0tmgD kmUbLWnVSpEkFJofEwMvBo3FWNPKK7Q3YuN5DpxhhiKx+PPRBVan/WLiU3SNcnnB0Rje AKZw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=t50l+WwE; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from snail.vger.email (snail.vger.email. [23.128.96.37]) by mx.google.com with ESMTPS id j14-20020a170903024e00b001d1ce46f067si10140299plh.485.2023.12.13.11.31.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 13 Dec 2023 11:31:54 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) client-ip=23.128.96.37; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=t50l+WwE; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by snail.vger.email (Postfix) with ESMTP id 988B080775B4; Wed, 13 Dec 2023 11:31:11 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at snail.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233674AbjLMTbA (ORCPT + 99 others); Wed, 13 Dec 2023 14:31:00 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46678 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229671AbjLMTa7 (ORCPT ); Wed, 13 Dec 2023 14:30:59 -0500 Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E6EBB129 for ; Wed, 13 Dec 2023 11:31:05 -0800 (PST) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 51784C433C8; Wed, 13 Dec 2023 19:31:05 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1702495865; bh=ck/wlW7lhdixRCwMQVnEmgl26YYLiC5AomhVJrGXoWI=; h=Date:From:To:Cc:Subject:In-Reply-To:From; b=t50l+WwEfAt/LGh4Ix2wvMwsh/CHAo3nLKe60yRg+3qJWYBp/9vKdQ4ZZ9Bo+afXz 0qsXAlRxqeVqvkrSOIdrn3AKeQaXAr/jdXZ+X9LMPyIosDKqE2gxI/XuBXGz7ewjl0 nUaCBMhUlqExx00VdlFSxo3dA7fs28UMzU6ATnLQc2uV6He+KOYu6IJvSl/30LFuOy Krpox1tNxidH4FckA5pHM3Lg/OhhZXAt+hMHO713K1ygfLo1H0hT6tMDUMmFjkOQgn W3uvJwvSUKgBXgjILpjz+uE8xxVnfJxBXsD4SXjxdfwQ3YxMHBRn56FIb0ucV/1gT8 2cjSXGEudvYZg== Date: Wed, 13 Dec 2023 13:31:03 -0600 From: Bjorn Helgaas To: Manivannan Sadhasivam Cc: lpieralisi@kernel.org, kw@linux.com, kishon@kernel.org, bhelgaas@google.com, mhi@lists.linux.dev, linux-arm-msm@vger.kernel.org, linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 0/9] bus: mhi: ep: Add async read/write support Message-ID: <20231213193103.GA1054774@bhelgaas> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20231127124529.78203-1-manivannan.sadhasivam@linaro.org> X-Spam-Status: No, score=-4.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_MED, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (snail.vger.email [0.0.0.0]); Wed, 13 Dec 2023 11:31:11 -0800 (PST) On Mon, Nov 27, 2023 at 06:15:20PM +0530, Manivannan Sadhasivam wrote: > Hi, > > This series add async read/write support for the MHI endpoint stack by > modifying the MHI ep stack and the MHI EPF (controller) driver. > > Currently, only sync read/write operations are supported by the stack, > this resulting in poor data throughput as the transfer is halted until > receiving the DMA completion. So this series adds async support such > that the MHI transfers can continue without waiting for the transfer > completion. And once the completion happens, host is notified by sending > the transfer completion event. > > This series brings iperf throughput of ~4Gbps on SM8450 based dev platform, > where previously 1.6Gbps was achieved with sync operation. > > - Mani > > Manivannan Sadhasivam (9): > bus: mhi: ep: Pass mhi_ep_buf_info struct to read/write APIs > bus: mhi: ep: Rename read_from_host() and write_to_host() APIs > bus: mhi: ep: Introduce async read/write callbacks > PCI: epf-mhi: Simulate async read/write using iATU > PCI: epf-mhi: Add support for DMA async read/write operation > PCI: epf-mhi: Enable MHI async read/write support > bus: mhi: ep: Add support for async DMA write operation > bus: mhi: ep: Add support for async DMA read operation > bus: mhi: ep: Add checks for read/write callbacks while registering > controllers > > drivers/bus/mhi/ep/internal.h | 1 + > drivers/bus/mhi/ep/main.c | 256 +++++++++------ > drivers/bus/mhi/ep/ring.c | 41 +-- > drivers/pci/endpoint/functions/pci-epf-mhi.c | 314 ++++++++++++++++--- > include/linux/mhi_ep.h | 33 +- > 5 files changed, 485 insertions(+), 160 deletions(-) Mani, do you want to merge this via your MHI tree? If so, you can include Krzysztof's Reviewed-by tags and my: Acked-by: Bjorn Helgaas If you think it'd be better via the PCI tree, let me know and we can do that, too. Bjorn