Received: by 2002:a05:6358:3188:b0:123:57c1:9b43 with SMTP id q8csp2551791rwd; Fri, 19 May 2023 07:14:07 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ4yDUtZYvuuS4Vhwi6T21ZjmobjYSzmFAIas00HFJ6VMCuyNwDrfRsSns2CXpL8MY/KBKfE X-Received: by 2002:a17:902:b596:b0:19e:e001:6a75 with SMTP id a22-20020a170902b59600b0019ee0016a75mr2689240pls.6.1684505647105; Fri, 19 May 2023 07:14:07 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1684505647; cv=none; d=google.com; s=arc-20160816; b=rDPHAXhrpDhucD/CzCnEPmk9nWUToCxEETPOkDVjQ3Cy2Hf3i2WquRGUUDrWE8/Mza fapZ3DRC3zY2dD5UKT2+eov9YUjVa9mZR0XTIzKPinDanUg6e54nLu3CryDBeuXSfndr OJpns6t++k3/tOgaKbRyQUrsSrZXvEG4kVkHBaOLdoq1nxTbHqlLHu62x+6WurnBJzpq UqXD7VpLLwvUGZIMaWo+bmYi4qV90kLa04+KO9NJTUL44MmqifZha46bQUfUmvFewyhK cAeHyv8keAxpgXN43WDr8yPahMB1k4EP/xiLfQfm6PgMoT38iCNB2QK1r7LZ06L3q3ms ZgAg== 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 :message-id:date:subject:cc:to:from:dkim-signature; bh=KlUcxwV3gHbaA4F0tBqjLsI2LgjbYmHKZKwiT7gbhio=; b=GYFCZJJsPTEAYNE2fCwgdh382LxyOltnHtdeGALLRJFcrdIVi9gMIK5Wo7fNwkedve C3U3Hs2EgwzxwlcpUgk5EyN2FyNmFhE/hlZXg1Ejj2sa/cgO4Xt9S2uPQTMvmlsUVtqJ gDTE1lcQfSUXlKrua3jiqzht/xiSnk+SX0cymzdpmq7D36axWP4eRbzsVMhSsx8DV6aI 25UVz+XTxBN80MeReGfjiah/rKcJoq6I03Pz5806id2wTZpeIyT6IjA0aTRs/jkDe9/Q KBEt7/7DZWBvmH2ySQh/G4trcNAwlrA+khmU6uLhYiO1PGrI18lkZxGZy2qdF7c5FAS+ biqA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=gyQPvSS0; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id e23-20020a170902ed9700b0019d038765f6si3459563plj.449.2023.05.19.07.13.52; Fri, 19 May 2023 07:14:07 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=gyQPvSS0; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-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 S232025AbjESN6U (ORCPT + 99 others); Fri, 19 May 2023 09:58:20 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37452 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231982AbjESN6T (ORCPT ); Fri, 19 May 2023 09:58:19 -0400 Received: from mail-pf1-x42e.google.com (mail-pf1-x42e.google.com [IPv6:2607:f8b0:4864:20::42e]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id ACA571AD for ; Fri, 19 May 2023 06:58:15 -0700 (PDT) Received: by mail-pf1-x42e.google.com with SMTP id d2e1a72fcca58-64d24136663so1251402b3a.0 for ; Fri, 19 May 2023 06:58:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1684504695; x=1687096695; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=KlUcxwV3gHbaA4F0tBqjLsI2LgjbYmHKZKwiT7gbhio=; b=gyQPvSS053XBYCQ+ulxO8jW8Fmtq1OHPBkIElOynEB24rNWum9fd4vNcGVumCLQXHr H0lHQIY4KR77DtaPP+1Pqc3orpKb5wJCzyOMlsFVsKJM3elUlcrYz+Yji8FmZXl+mIHi zgO5cYxUO8SnLM4MUgrFSOqdDDWqwoES4wUMXLI++QZ35Yb+yv45TlScA6FPoRp49aQR T0e6Yl9Sq/nopmZSvgSqqSitQNGtePYTeAXih5RAU48oohyWoz6W6sUpDez8EvZrsXbZ WgONjcXu+KFY6fxAegXn1eMfobcpNUElTWVjXGII/LR1IyHBnQGlnMHN6BeDBl11uVlI 0jTw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1684504695; x=1687096695; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=KlUcxwV3gHbaA4F0tBqjLsI2LgjbYmHKZKwiT7gbhio=; b=OWBeMv5SSE8JzanBoQMl0S20snrNPIm6OodLMgcEYH9ZNp+gcf9Fdr3xROhXQuMYwy A8w1D9d9lcQofT2yz4kAnka76tqhYDI8o87OUITHhJOiqp6NTFIn+GASGbN9mxWYGdYC y8DO9udEAPEtSa3SoRjZDH7NDVwQKe7R4/1EctWBVrdmUs8gWp+j2VCKKitVhH+hEZtw 99fjvtBTBx2vszJi8Xnn7oXAwF8wgA5xNbUT50VccRcbwaGlUhW/0lJy9ohn6U+I0gm0 6E6ayH/0J15dhw12yl3YRdM6pXay+wGK/71x9mV4h0zS4G/1Fprbs1flmbKSDxoCYvQZ MHsw== X-Gm-Message-State: AC+VfDx+hIJNQzqakTo+CZeLfEUCPOg9B3Ut4HkdFSV71V11O7UDpoJh EAJjVgPLx9EHeBVb8nzr5Wil X-Received: by 2002:a05:6a20:72a8:b0:100:c7bd:9f5d with SMTP id o40-20020a056a2072a800b00100c7bd9f5dmr2169335pzk.44.1684504695128; Fri, 19 May 2023 06:58:15 -0700 (PDT) Received: from localhost.localdomain ([117.202.184.13]) by smtp.gmail.com with ESMTPSA id i3-20020a63e443000000b0052873a7cecesm3112096pgk.0.2023.05.19.06.58.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 19 May 2023 06:58:14 -0700 (PDT) From: Manivannan Sadhasivam To: mhi@lists.linux.dev, linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org Cc: loic.poulain@linaro.org, quic_krichai@quicinc.com, Manivannan Sadhasivam Subject: [PATCH] bus: mhi: host: pci_generic: Add support for IP_SW0 channels Date: Fri, 19 May 2023 19:28:03 +0530 Message-Id: <20230519135803.13850-1-manivannan.sadhasivam@linaro.org> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED 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 IP_SW0 channels are used to transfer data over the networking interface between MHI endpoint and the host. Define the channels in the MHI v1 channel config along with dedicated event rings. Signed-off-by: Manivannan Sadhasivam --- drivers/bus/mhi/host/pci_generic.c | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/drivers/bus/mhi/host/pci_generic.c b/drivers/bus/mhi/host/pci_generic.c index db0a0b062d8e..70e37c490150 100644 --- a/drivers/bus/mhi/host/pci_generic.c +++ b/drivers/bus/mhi/host/pci_generic.c @@ -212,6 +212,19 @@ struct mhi_pci_dev_info { .offload_channel = false, \ } +#define MHI_EVENT_CONFIG_SW_DATA(ev_ring, el_count) \ + { \ + .num_elements = el_count, \ + .irq_moderation_ms = 0, \ + .irq = (ev_ring) + 1, \ + .priority = 1, \ + .mode = MHI_DB_BRST_DISABLE, \ + .data_type = MHI_ER_DATA, \ + .hardware_event = false, \ + .client_managed = false, \ + .offload_channel = false, \ + } + #define MHI_EVENT_CONFIG_HW_DATA(ev_ring, el_count, ch_num) \ { \ .num_elements = el_count, \ @@ -237,8 +250,10 @@ static const struct mhi_channel_config modem_qcom_v1_mhi_channels[] = { 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), - MHI_CHANNEL_CONFIG_HW_DL(101, "IP_HW0", 128, 3), + MHI_CHANNEL_CONFIG_UL(46, "IP_SW0", 64, 2), + MHI_CHANNEL_CONFIG_DL(47, "IP_SW0", 64, 3), + MHI_CHANNEL_CONFIG_HW_UL(100, "IP_HW0", 128, 4), + MHI_CHANNEL_CONFIG_HW_DL(101, "IP_HW0", 128, 5), }; static struct mhi_event_config modem_qcom_v1_mhi_events[] = { @@ -246,9 +261,12 @@ static struct mhi_event_config modem_qcom_v1_mhi_events[] = { MHI_EVENT_CONFIG_CTRL(0, 64), /* DIAG dedicated event ring */ MHI_EVENT_CONFIG_DATA(1, 128), + /* Software channels dedicated event ring */ + MHI_EVENT_CONFIG_SW_DATA(2, 64), + MHI_EVENT_CONFIG_SW_DATA(3, 64), /* Hardware channels request dedicated hardware event rings */ - MHI_EVENT_CONFIG_HW_DATA(2, 1024, 100), - MHI_EVENT_CONFIG_HW_DATA(3, 2048, 101) + MHI_EVENT_CONFIG_HW_DATA(4, 1024, 100), + MHI_EVENT_CONFIG_HW_DATA(5, 2048, 101) }; static const struct mhi_controller_config modem_qcom_v1_mhiv_config = { -- 2.25.1