From nobody Wed Dec 17 00:42:17 2025 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id EF9522165EA for ; Thu, 11 Dec 2025 08:17:23 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765441045; cv=none; b=TxlEHAvK0qGu7m1TxXuUO04uGiHPSgFqcBnD7YO/Z2TH2J5ANmMBQSwJ2m/BYyiPzY0MZu2MxLEQVxsw976/lekbM+k/gBy7QOc7a1b9zLKtndH6EC/TGSp4Yry8a2VMMCc7F4H8EUtr3set41gbg/EP4zV6mabN4I65JfQpsCs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765441045; c=relaxed/simple; bh=FG/JzSMGgL4uZxzhIPE7NmY+Cm5lzWZgROtbT8zLswk=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=erh9G2oEGp35I9XhNPBEz0qXQGNpzHtbZI2tYFA5G9Mk5VIqMSc37a58GacYmVBG3Z4H24ZiRPCxgZUM/bp/fDcgFNnj0WiKGjR9JHlc/z7qWJ5LjddvcpYaV1Urt/4oYcmxbgUw8HzoF2XsedOjvbmZHYERk5KxqfEN0SdtbWk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=eZWLV6/i; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=YqB6hjR1; arc=none smtp.client-ip=205.220.180.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="eZWLV6/i"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="YqB6hjR1" Received: from pps.filterd (m0279872.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5BB8GxfM4062233 for ; Thu, 11 Dec 2025 08:17:23 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= iidZ6t9v0OpycyHAGbJSN9L0jNaWnZWJx8xHEveAVG4=; b=eZWLV6/iK63c3SSo VZ+k09dMjoXf40ZGp4RKmQeNKv5loSOoo/WwTZGP5kz2iv4EnbxXxvbAUsLS9mf/ s6eiZA11blZ5MSu9o7aHBcjlnjnQmdoC/SBwUnRo8DH4kBqlGRB3jHelECcp1azX vuO4Vah4qOlstVn/MmPpAhvPXVlBrNWDKWvxFV2tVo8Dnsw+Ms1IF8rhmP/nYEXy tvBhvlirc8qKFWSzAvQGjlMQRWtDfJmw3IEwupuoxYAltrFu0mpxnmlhG2sX/NkY AT77bXXdPjrR93m/4fle/gDuFeE6K5sRKNJcWD0aiNs8IRpaDh3WasfdFAE2/Uag FMf1tg== Received: from mail-qv1-f69.google.com (mail-qv1-f69.google.com [209.85.219.69]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4ayguqhh2k-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Thu, 11 Dec 2025 08:17:22 +0000 (GMT) Received: by mail-qv1-f69.google.com with SMTP id 6a1803df08f44-880501dcc67so27129266d6.3 for ; Thu, 11 Dec 2025 00:17:22 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1765441042; x=1766045842; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=iidZ6t9v0OpycyHAGbJSN9L0jNaWnZWJx8xHEveAVG4=; b=YqB6hjR1B/9kAw9V5aB0RQGCWHGew8hA0hWeUP2ip/PMAiehlpz1Lpuopago9RmScT 8KZHEU3INf8P/eZUYvXl+jYzwf0vFwDd6gtMRZEAbl68qxBfqk/Zhhy1UNa7EmwEmEu5 eC/zgh08WnuwaFs3bfCuEgCDbSSzX5OXD1as1YhRg0GTEK9rjQhmHk6dl9i44F0VfX/U 7Jhx/uwwp/RkfPZDM3VYHGzpOKYDOse5IajI5HaWl9eUHHpVTsWPmjjsf8VjDjytSClv +PH2XQJj2vTSs3NSPBykTdJ7t76Edt7B4OwZkyVspA1TBIOLC7eNLVfcA+KT3olNd11B QeVQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1765441042; x=1766045842; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=iidZ6t9v0OpycyHAGbJSN9L0jNaWnZWJx8xHEveAVG4=; b=ZwJJI2BMn1YfB24WhoBw9gLU6F+EOLb18ht35wBRRnuRxXuLrx01yEtP3ue+8nnbnG IaAkK1mcvD3hQqBDh54/uk43/J6SrlaYXYsoGvobFyy5vxHhYOA0gZ2Z5wVh+qqkdhLv lRqTAWE1JOrmrcjg2RZQiikaLnlqMxdzqsIu6tky8Eh2FI1Wl3SdcZnbgzYs2RZnc1qu FCyC5mI6sA7n+/9ntWxDvtf9SYoJ3G8qKUmweIE6MT/jsGVOfijmp15vLK/B8xWcFSFz aHpE1CJOeTl3sWWOsTBMWAFlwjhV/zfiwFHRO+zyfS7I4NV9gK045Y6h3ewYp54FuFSM r9IQ== X-Forwarded-Encrypted: i=1; AJvYcCUqThjICzhxSKajsFolt3GuSyCQUrkcp1HYTUmNKQxd1psqIHylkCpERmOuUvNOnOA2mm7Z1yhkgBwfquY=@vger.kernel.org X-Gm-Message-State: AOJu0Yz31gL97URF44Vk0X5PZz5l4ACKQQSBuEmkE0ILKWW3+7HkrsM8 bNEVuOK7Tufgdhquj3VrkUbHUFzErhgcOeYuvvim356fOPC+eLDnfbjBw0TV6QgosEzwBGP0yV7 KxtzCYpFjGXgYCPBYMwSPuAdPeM0WxXG+MezGxRufO6WZpxVjx9jk2xkBKZFQNuW1mbQ= X-Gm-Gg: AY/fxX4gjf3Qvr7RPe7tVpJHmkPbpqvKTry+hMbZJE9Woet4m+C1sxZ1aXflbMY2nln cKXt0l3HaRo3jYkTNA7AT3tX0n5hEmiW5SJKK89UW0s4d8O+664FdQ4l9CaZmQuskYnOeI9eVcK TyoJhlqLgRsKm4ApyRsKH7/SwYxYUALk6Y47074ATmXlQGNK9cinpiPZB3RTpTseXMifu3SUHK9 uCv5SsiC7iy8/i890P7DAygeYmcVdSAecMzO2JbRkbOBRSOIqvsAq4i4p9Hv8OQNejKlAHwC3wm bilX/GNoATTBu6nDP9mBGsHXAUFlUFI43e9TEhKZaiySCyqB/Kou7G8S+787K3isFR5nojEKo18 3yyOkdp5ikrwDT2f2gclkN6hCYdtn1hRsug== X-Received: by 2002:a05:6a00:1490:b0:7e8:43f5:bd24 with SMTP id d2e1a72fcca58-7f2301c45ccmr5419519b3a.57.1765440469177; Thu, 11 Dec 2025 00:07:49 -0800 (PST) X-Google-Smtp-Source: AGHT+IE9Cx6y8uP13Ikw1vw4vVQay4UNjLSPnosVIPhdgzqLBVbSZrppTah8VFOPVHYJ4m578xyq9A== X-Received: by 2002:a05:6a00:1490:b0:7e8:43f5:bd24 with SMTP id d2e1a72fcca58-7f2301c45ccmr5419489b3a.57.1765440468695; Thu, 11 Dec 2025 00:07:48 -0800 (PST) Received: from [10.213.102.126] ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-7f4c22848a7sm1706651b3a.3.2025.12.11.00.07.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 11 Dec 2025 00:07:48 -0800 (PST) From: Sivareddy Surasani Date: Thu, 11 Dec 2025 13:37:34 +0530 Subject: [PATCH 02/11] bus: mhi: pci_generic: Add Data plane channels for QDU100 VF's Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20251211-siva_mhi_dp2-v1-2-d2895c4ec73a@oss.qualcomm.com> References: <20251211-siva_mhi_dp2-v1-0-d2895c4ec73a@oss.qualcomm.com> In-Reply-To: <20251211-siva_mhi_dp2-v1-0-d2895c4ec73a@oss.qualcomm.com> To: Manivannan Sadhasivam , Jonathan Corbet , Arnd Bergmann , Greg Kroah-Hartman Cc: mhi@lists.linux.dev, linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org, Upal Kumar Saha , Himanshu Shukla , Sivareddy Surasani , Vivek Pernamitta X-Mailer: b4 0.15-dev-47773 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjExMDA2MSBTYWx0ZWRfX4p1u671+uvLY IzaDxIhRN8sf4tzy9B/Z0VYA60tYhsu/eEARuTcD+8EZJQGxTuisppIVMvnMbinDBRUkeTLsx4l rHpp0IMGCJu3OmeMScf7U+XzBj3wbcTyUBkzgpbG1ZVh3tjhjlakW8XBPUV9ePg+EipimW1/iXM m6g/3oPLYPJTFT3DpBU8ixaMMkRb5UzZwLCezKbi1PriTwg9aY/6gfG3iQ4PTL8OHaDLewqFPk0 MpeoH511PlpdK3sRoL0jco8VhPPI3NIzSmJULJbAQLRh8zkTBkuA5Fm74gtx7YOaHR2MiBWEC1e OhOwBwJ3l9UUwrbNWylMB6/q2vPye+OTlqnkYj8uyV3Kw9BXm76beW1pLU36cbdAJHSLcn1G1Ds WILaU4Fc1MMI88/93wCdyBpdHHTx3Q== X-Authority-Analysis: v=2.4 cv=deGNHHXe c=1 sm=1 tr=0 ts=693a7e12 cx=c_pps a=wEM5vcRIz55oU/E2lInRtA==:117 a=ZePRamnt/+rB5gQjfz0u9A==:17 a=IkcTkHD0fZMA:10 a=wP3pNCr1ah4A:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=tHQqvTiQzOQ45HI-0IoA:9 a=QEXdDO2ut3YA:10 a=OIgjcC2v60KrkQgK7BGD:22 X-Proofpoint-GUID: H323N3wnjL4MlN29oZko4e8AWOKjlJ1p X-Proofpoint-ORIG-GUID: H323N3wnjL4MlN29oZko4e8AWOKjlJ1p X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-12-10_03,2025-12-09_03,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 clxscore=1011 phishscore=0 suspectscore=0 malwarescore=0 bulkscore=0 priorityscore=1501 lowpriorityscore=0 impostorscore=0 spamscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2510240001 definitions=main-2512110061 From: Vivek Pernamitta Add Data plane channels and event ring for QDU100 VF's. Disable IRQ moderation for HW channels. IP_HW1: Control configuration procedures over the L1 FAPI P5 interface include initialization, termination, restart, reset, and error notification. These procedures transition the PHY layer through IDLE, CONFIGURED, and RUNNING states. IP_HW2: Data plane configuration procedures control DL and UL frame structures and transfer subframe data between L2/L3 software and PHY. Supported procedures include subframe message transmission, SFN/SF synchronization, and various transport channel operations. Signed-off-by: Vivek Pernamitta Signed-off-by: Sivareddy Surasani --- drivers/bus/mhi/host/pci_generic.c | 43 ++++++++++++++++++++++++++++++++++= ++++ 1 file changed, 43 insertions(+) diff --git a/drivers/bus/mhi/host/pci_generic.c b/drivers/bus/mhi/host/pci_= generic.c index b64b155e4bd7..bb3c5350a462 100644 --- a/drivers/bus/mhi/host/pci_generic.c +++ b/drivers/bus/mhi/host/pci_generic.c @@ -253,6 +253,20 @@ struct mhi_pci_dev_info { .channel =3D ch_num, \ } =20 +#define MHI_EVENT_CONFIG_HW_DATA_NO_IRQ_MOD(ev_ring, el_count, ch_num, cl_= manage) \ + { \ + .num_elements =3D el_count, \ + .irq_moderation_ms =3D 0, \ + .irq =3D (ev_ring) + 1, \ + .priority =3D 1, \ + .mode =3D MHI_DB_BRST_DISABLE, \ + .data_type =3D MHI_ER_DATA, \ + .hardware_event =3D true, \ + .client_managed =3D cl_manage, \ + .offload_channel =3D false, \ + .channel =3D ch_num, \ + } + static const struct mhi_channel_config mhi_qcom_qdu100_channels[] =3D { MHI_CHANNEL_CONFIG_UL(0, "LOOPBACK", 32, 2), MHI_CHANNEL_CONFIG_DL(1, "LOOPBACK", 32, 2), @@ -278,6 +292,14 @@ static const struct mhi_channel_config mhi_qcom_qdu100= _channels[] =3D { =20 }; =20 +static const struct mhi_channel_config mhi_qcom_qdu100_vf_channels[] =3D { + /* HW channels */ + MHI_CHANNEL_CONFIG_UL(104, "IP_HW1", 2048, 1), + MHI_CHANNEL_CONFIG_DL(105, "IP_HW1", 2048, 2), + MHI_CHANNEL_CONFIG_UL(106, "IP_HW2", 2048, 3), + MHI_CHANNEL_CONFIG_DL(107, "IP_HW2", 2048, 4), +}; + static struct mhi_event_config mhi_qcom_qdu100_events[] =3D { /* first ring is control+data ring */ MHI_EVENT_CONFIG_CTRL(0, 64), @@ -294,6 +316,17 @@ static struct mhi_event_config mhi_qcom_qdu100_events[= ] =3D { MHI_EVENT_CONFIG_SW_DATA(8, 512), }; =20 +static struct mhi_event_config mhi_qcom_qdu100_vf_events[] =3D { + /* first ring is control+data ring */ + MHI_EVENT_CONFIG_CTRL(0, 64), + /* HW channels dedicated event ring */ + MHI_EVENT_CONFIG_HW_DATA_NO_IRQ_MOD(1, 4096, 104, 0), + MHI_EVENT_CONFIG_HW_DATA_NO_IRQ_MOD(2, 4096, 105, 1), + MHI_EVENT_CONFIG_HW_DATA_NO_IRQ_MOD(3, 4096, 106, 0), + MHI_EVENT_CONFIG_HW_DATA_NO_IRQ_MOD(4, 4096, 107, 0), + +}; + static const struct mhi_controller_config mhi_qcom_qdu100_config =3D { .max_channels =3D 128, .timeout_ms =3D 120000, @@ -303,11 +336,21 @@ static const struct mhi_controller_config mhi_qcom_qd= u100_config =3D { .event_cfg =3D mhi_qcom_qdu100_events, }; =20 +static const struct mhi_controller_config mhi_qcom_qdu100_vf_config =3D { + .max_channels =3D 128, + .timeout_ms =3D 120000, + .num_channels =3D ARRAY_SIZE(mhi_qcom_qdu100_vf_channels), + .ch_cfg =3D mhi_qcom_qdu100_vf_channels, + .num_events =3D ARRAY_SIZE(mhi_qcom_qdu100_vf_events), + .event_cfg =3D mhi_qcom_qdu100_vf_events, +}; + static const struct mhi_pci_dev_info mhi_qcom_qdu100_info =3D { .name =3D "qcom-qdu100", .fw =3D "qcom/qdu100/xbl_s.melf", .edl_trigger =3D true, .config =3D &mhi_qcom_qdu100_config, + .vf_config =3D &mhi_qcom_qdu100_vf_config, .bar_num =3D MHI_PCI_DEFAULT_BAR_NUM, .dma_data_width =3D 32, .vf_dma_data_width =3D 40, --=20 2.34.1