Received: by 2002:a05:6a10:f3d0:0:0:0:0 with SMTP id a16csp5579728pxv; Wed, 7 Jul 2021 07:05:51 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwTA5oDxxHBVhE1LeNl2QsMLCkCJ/mqGzoWSWbO6Fgji6xJxPfImbsWuna/8sTmq+Utafix X-Received: by 2002:a17:906:d54e:: with SMTP id cr14mr21418262ejc.38.1625666751127; Wed, 07 Jul 2021 07:05:51 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1625666751; cv=none; d=google.com; s=arc-20160816; b=ULJTHXWQAdwNHHua4B69UbVGbClvbpVFk8kgmzAuyjv2I/Wtibn4b/WIR84sPffnJp sLA2QntoHOw50hJVADaEehlrbwQkZBiYytLr13AhAUqfkfQRkrlS4rDfUj8TWNXzy6nM QJGM6UtLaMBUBNQaVF67n97s9E1Re4E1C7QX+1A4QH4ex6S4XSHxALvxnE7VdfeZXm1a qvK44OxDpuwj8y5/vY+SwsxXoSvk3hV6P2emtxpIu28haA2cRiAxJM9zRgnLxuD+e8gc 7a8yQBRkTsnXALYMHXoiKmNWrRynWLQ+gBWW+bRY0jAqZ4eB29f9GFamMEHtbfiBeKvC Fsew== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:cc:to:subject :message-id:date:from:in-reply-to:references:mime-version :dkim-signature; bh=xM/HXB6EZ/kjhqMXjRqn3qykSAZCYos8ehhLN3+dqMw=; b=HWMMLHi7y1iqfRZLnyysGwxOMCclT7yI9e20XKlTpt0tgGWtquCVEYCFvtqP2TH0hV iBA1AV7RvZV0PZrhBA8IslF7w71sAJqDTRs8b+XfObvKpv6Ov7d3xS06ufcUt+9vl/R9 KIcMl9y1wHEJLoaldaFMR/P7O6bBYG2n4eZc+wfYIBiLSluQ7A2AXzZ1W2nQW8Jg/tLI ZaJw8Mvr0rmi4k/5Q+AWo+zOwPsEuvpygB43qHJxXcMenYLJbPrB8aJmOKm4QFRIHtIe Nie3fsXGu8YXnxPZi6etym+dMX2QOOvZv3o/uIv7GdSTgTpK7zTA0DMCt+fR3Cnpt3g4 qpIw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=r7KTDuXU; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id dm18si17916111edb.19.2021.07.07.07.05.28; Wed, 07 Jul 2021 07:05:51 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=r7KTDuXU; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231639AbhGGNwi (ORCPT + 99 others); Wed, 7 Jul 2021 09:52:38 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:59808 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230509AbhGGNwi (ORCPT ); Wed, 7 Jul 2021 09:52:38 -0400 Received: from mail-qk1-x72c.google.com (mail-qk1-x72c.google.com [IPv6:2607:f8b0:4864:20::72c]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B6E86C061574; Wed, 7 Jul 2021 06:49:57 -0700 (PDT) Received: by mail-qk1-x72c.google.com with SMTP id s4so1934084qkm.13; Wed, 07 Jul 2021 06:49:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=xM/HXB6EZ/kjhqMXjRqn3qykSAZCYos8ehhLN3+dqMw=; b=r7KTDuXU6VaXhTMjpH4J0bEEV5/S+w5Jf/K3fOExF6GWFS4BObJ6P3qUWutP93lWO4 74OnjHLrjsLztkS8+zPIq7RVg9EAmy+5qKCbnoFA1Gz7uuVHsrbPv/zqozo6fPO1+hyU QX39Xnr5vVk9DRgG2y3ub+t9p2xKONBNgOWfuDHaCxLxjVq/EBvKPf7GFqZeCfCzwxXj Pg4QwKRZnXZhbezwuAT2U+YOKW4dNfEWJkZNTP1aIkc7VXumCcMD8Kn7n75CcXYUkflL tv3WOq9Tdt8W019UYt6xWY/Ssa4pydqGdnQ89yyDNY+wFyDhBmxVLalXheL1tuLTg+s7 6wRA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=xM/HXB6EZ/kjhqMXjRqn3qykSAZCYos8ehhLN3+dqMw=; b=mroY6AySYZ+a69b9x0tFQJyWT+gk1qHX2NZv2O0J04mT83Bahfjp9uwoJEmHc8xyeE 0gPyXgH/ibzbWe21qwhlGP8zP3RFhOY1KnM0zyYKx72VeK+/HYdBoPbAK2O0nowQHxju seKncH2opPzmPp7NOGwVT/PxNXrkA5cgdCqbhNlezb0NmFocET6BXSraEFqBSM9qe8Ic MrQdwQgfVLCtb/HQ4sMXKdii9t6z0UypXfesw36I2Dd4Q45fM338f/ghvShxuoVGgTph FLcuvNYRdXuYYyKCAo9cNiFHpY/MI8yRK7XUE3z1Zb47txUCV4F9CaIFsGiKpsCxHe4q eVbg== X-Gm-Message-State: AOAM533hxIYrwwp2Qe4h9beTWUCyKrVVXlMVV2dctrwwXejn1G4+TqZ9 BEnbPxx1kLBhSSUFF1zY1qgSg9kWngE3fyGQATs= X-Received: by 2002:a05:620a:13ec:: with SMTP id h12mr9480677qkl.217.1625665796840; Wed, 07 Jul 2021 06:49:56 -0700 (PDT) MIME-Version: 1.0 References: <20210705090050.15077-1-reniuschengl@gmail.com> In-Reply-To: From: Renius Chen Date: Wed, 7 Jul 2021 21:49:45 +0800 Message-ID: Subject: Re: [PATCH] [v2] mmc: sdhci-pci-gli: Improve Random 4K Read Performance of GL9763E To: Ulf Hansson Cc: Adrian Hunter , linux-mmc , Linux Kernel Mailing List , Ben Chuang Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Ulf Hansson =E6=96=BC 2021=E5=B9=B47=E6=9C=887=E6= =97=A5 =E9=80=B1=E4=B8=89 =E4=B8=8B=E5=8D=888:16=E5=AF=AB=E9=81=93=EF=BC=9A > > [...] > > > > > Thanks, I understand what you mean. > > > > I simply searched for the keyword "MMC_READ_MULTIPLE_BLOCK" in the > > drivers/mmc/host folder, and found that in some SD/MMC host controller > > driver codes such as alcor.c, cavium.c, ...etc, there are also > > behaviors for monitoring the request in their driver. What's the > > difference between theirs and ours? > > Those checks are there to allow the HWs to be supported properly. > > > > > And if the code that monitors the requstes does not belong the driver, > > where should I implement the code and how to add some functions only > > for GL9763e in that place, in your opinion? > > Honestly, I am not sure what suits your use case best. > > So far we have used runtime PM with a default auto suspend timeout, in > combination with dev PM Qos. In other words, run as fast as possible > to complete the requests in the queue then go back to idle and enter a > low power state. Clearly, that seems not to be sufficient for your use > case, sorry. > Yes, the runtime PM, auto suspend, and PM Qos are all about the suspend/resume behaviors of the system or related to power states such as D0/D3 of the device. But these are totally different from the ASPM L0s/L1 for link states. Entering/exiting the ASPM is pure hardware behavior on the link layer and is not handled by any codes in drivers/mmc/core or drivers/mmc/host. We'd like to try to modify the patch by your opinions, but we are also confused about what or where suits our use case best. So we wonder how to start the modification and may need some suggestions to deal with the work, sorry. Thank you. Best regards, Renius > Kind regards > Uffe