From patchwork Fri Jul 16 07:51:06 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Manivannan Sadhasivam X-Patchwork-Id: 478364 Delivered-To: patch@linaro.org Received: by 2002:a02:c94a:0:0:0:0:0 with SMTP id u10csp1116524jao; Fri, 16 Jul 2021 00:51:40 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyzNUA95MPjmFxjMxQ0EYaOMN+V+B/DpTZzUpUqpjQcKmTrV8VPT7yeWWfcteHTtreBh1+Y X-Received: by 2002:aa7:c9d8:: with SMTP id i24mr12925160edt.79.1626421900759; Fri, 16 Jul 2021 00:51:40 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1626421900; cv=none; d=google.com; s=arc-20160816; b=EkNqUYZb65T7Sl/SjmHpCHyHf1l8MR5n80uzhuycejKfFFK0g8nA/gHkQgdMyNZ/c+ dvD3NCK8Z/tNeBV6SayziaG9xJe1k5Ltl8+IH8sDsZFp8R6zftKi2K1nOAoa7n00a12A 65NbAA+IXMiMK/VgLAzfkl0tMGotysy/EO2NP7EMXz3OO2p4U1udphwr1Gk4N8RIYxwg xURHEJRxoydaPkOjIHyVs7vfsfpkn4tCNXfEnusKtjIK1U/3ZFjnHnPyI1dh6u83q3Fu YSMHAbYE3IAeXvEtYAFaThtNmF4qihGp3N6MpsC3sc6QDZvgmrX6MWwMbQGjnyuclOTS 3aRg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=A5YTg0MnmWJbRIWQkegAwKJdKUa9X9i6zjHdjizNY+o=; b=BpUcx+YrqB7H+gb11Fr94lN0E9R6JKKaKDZag4oCc4I2H8HiKUcVfWh02bkasV5W/l G4aur/03qZlVdm43PyOSPxyrhE3oKwyS2pgWE8YQxO036DqzRJprZxcYd/XmxPiOhE1L 7ZFNdKbKOzaYkbOoM5NfFgt1CAiTVP9n2DBwFSBrhzYjDlQSN0zcxIdNOVNL6HQ2HHIL oDtVQQ2d21PigmCHCYvXLdiDECnTyh19IsagELrNwg+Q7cHFz5FYNN+DTFShT2V9uILA z1UULxvb34r/Ogi+s1rRrQ0AGCA5opcp2WrACOsWpTO39QFnKskOC8xYMQyAIyxHEiDJ aZZA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=Jc3SqWk2; spf=pass (google.com: domain of stable-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=stable-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id du3si8183371ejc.406.2021.07.16.00.51.40; Fri, 16 Jul 2021 00:51:40 -0700 (PDT) Received-SPF: pass (google.com: domain of stable-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=@linaro.org header.s=google header.b=Jc3SqWk2; spf=pass (google.com: domain of stable-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=stable-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236908AbhGPHyd (ORCPT + 12 others); Fri, 16 Jul 2021 03:54:33 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35704 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236450AbhGPHyc (ORCPT ); Fri, 16 Jul 2021 03:54:32 -0400 Received: from mail-pf1-x430.google.com (mail-pf1-x430.google.com [IPv6:2607:f8b0:4864:20::430]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D0EABC06175F for ; Fri, 16 Jul 2021 00:51:37 -0700 (PDT) Received: by mail-pf1-x430.google.com with SMTP id u126so513476pfb.8 for ; Fri, 16 Jul 2021 00:51:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=A5YTg0MnmWJbRIWQkegAwKJdKUa9X9i6zjHdjizNY+o=; b=Jc3SqWk2rhU0EU8oc/KfB7YReeHkXS37Fzs+U9Pc5NXU3sEp+5NMNpROi/+0AP/wLZ M61GrRqFVq+A7BxmNH6XY8bZY0Fk7f9zwQZJ2S9ADp3ilmyM23I9UO9oDESd/OBREOhp ofraqRypc3xRe2gGaVijrhFZiwDPUanL/u+zFBzmuKZ6WMvRA85t6+YCOIuM/G++3UWK Wd84197KT81ZT608yNFy2VCJ5Yp6JnlLpeNLhfzDh3T9QIuYA2OYV+QH8E6xEt77EgPg W8QQ1b3+etohCmXNzUm8VduavoTdYaYNciKBm36EzC5TlJ3k/t4zY2OkGeSn9nodPGEQ CIoQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=A5YTg0MnmWJbRIWQkegAwKJdKUa9X9i6zjHdjizNY+o=; b=NU88qczLX0gZr/jYdSi6BnDDlg2ckhr9uw9jkXQnzK3XZ1aiOqaUpCX+Y3tdDSilLh lBsr0Ao8lY+DL5875vn8EMY7wb7DHDfDFZIUFxpKzdqxrpSnkspZh7OaEOe/Vk8bDjtj uVDezsGYxdnp8cXWntus0TEgRNaB/mD19OzAfHJrLPYH3Ip6KRYjc2WP5a/11BfMlPfN pvh1X28GbOVFprQL6BHDO01bqA8zlIr2WLqlRiqhkYdnnuBQ6CENU1fDLPByJABLZxBj COPeyQwGPFYeYS+SY/s0IG4KjdtBsRKvJU4J2Pfk8Dsczdzbe9CxCqCLKY+ot3Gm+Dtp bGsA== X-Gm-Message-State: AOAM531yHm4ffG0wMOkFPsL6jfhH/1DmHOFnaSDVVtxYNvcRzySrX9zy Dj5pBtwxhHPtNtMQ7Ix8af9a X-Received: by 2002:aa7:95a4:0:b029:332:f4e1:1dac with SMTP id a4-20020aa795a40000b0290332f4e11dacmr8210346pfk.34.1626421897372; Fri, 16 Jul 2021 00:51:37 -0700 (PDT) Received: from localhost.localdomain ([120.138.12.214]) by smtp.gmail.com with ESMTPSA id 21sm9253357pfp.211.2021.07.16.00.51.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 16 Jul 2021 00:51:36 -0700 (PDT) From: Manivannan Sadhasivam To: gregkh@linuxfoundation.org Cc: hemantk@codeaurora.org, bbhatt@codeaurora.org, linux-arm-msm@vger.kernel.org, jhugo@codeaurora.org, linux-kernel@vger.kernel.org, loic.poulain@linaro.org, stable@vger.kernel.org, Manivannan Sadhasivam , Manivannan Sadhasivam Subject: [PATCH 3/3] bus: mhi: pci_generic: Fix inbound IPCR channel Date: Fri, 16 Jul 2021 13:21:06 +0530 Message-Id: <20210716075106.49938-4-manivannan.sadhasivam@linaro.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20210716075106.49938-1-manivannan.sadhasivam@linaro.org> References: <20210716075106.49938-1-manivannan.sadhasivam@linaro.org> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: stable@vger.kernel.org From: Loic Poulain The qrtr-mhi client driver assumes that inbound buffers are automatically allocated and queued by the MHI core, but this doesn't happen for mhi pci devices since IPCR inbound channel is not flagged with auto_queue, causing unusable IPCR (qrtr) feature. Fix that. Cc: stable@vger.kernel.org #5.10 Fixes: 855a70c12021 ("bus: mhi: Add MHI PCI support for WWAN modems") Signed-off-by: Loic Poulain Reviewed-by: Hemant kumar Reviewed-by: Manivannan Sadhasivam Link: https://lore.kernel.org/r/1625736749-24947-1-git-send-email-loic.poulain@linaro.org [mani: fixed a spelling mistake in commit description] Signed-off-by: Manivannan Sadhasivam --- drivers/bus/mhi/pci_generic.c | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) -- 2.25.1 diff --git a/drivers/bus/mhi/pci_generic.c b/drivers/bus/mhi/pci_generic.c index 3396cb30ebec..4dd1077354af 100644 --- a/drivers/bus/mhi/pci_generic.c +++ b/drivers/bus/mhi/pci_generic.c @@ -75,6 +75,22 @@ struct mhi_pci_dev_info { .doorbell_mode_switch = false, \ } +#define MHI_CHANNEL_CONFIG_DL_AUTOQUEUE(ch_num, ch_name, el_count, ev_ring) \ + { \ + .num = ch_num, \ + .name = ch_name, \ + .num_elements = el_count, \ + .event_ring = ev_ring, \ + .dir = DMA_FROM_DEVICE, \ + .ee_mask = BIT(MHI_EE_AMSS), \ + .pollcfg = 0, \ + .doorbell = MHI_DB_BRST_DISABLE, \ + .lpm_notify = false, \ + .offload_channel = false, \ + .doorbell_mode_switch = false, \ + .auto_queue = true, \ + } + #define MHI_EVENT_CONFIG_CTRL(ev_ring, el_count) \ { \ .num_elements = el_count, \ @@ -213,7 +229,7 @@ static const struct mhi_channel_config modem_qcom_v1_mhi_channels[] = { MHI_CHANNEL_CONFIG_UL(14, "QMI", 4, 0), MHI_CHANNEL_CONFIG_DL(15, "QMI", 4, 0), MHI_CHANNEL_CONFIG_UL(20, "IPCR", 8, 0), - MHI_CHANNEL_CONFIG_DL(21, "IPCR", 8, 0), + MHI_CHANNEL_CONFIG_DL_AUTOQUEUE(21, "IPCR", 8, 0), MHI_CHANNEL_CONFIG_UL_FP(34, "FIREHOSE", 32, 0), MHI_CHANNEL_CONFIG_DL_FP(35, "FIREHOSE", 32, 0), MHI_CHANNEL_CONFIG_HW_UL(100, "IP_HW0", 128, 2),