From mboxrd@z Thu Jan 1 00:00:00 1970 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 BD8DE3D7D8C for ; Tue, 24 Mar 2026 08:50:58 +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=1774342261; cv=none; b=OPn54F6pTVghi8ePJM6KnaZj9/9eUK9ItdeGmkNHHhRwW8zhouDDd2n3fxgeAM71mDMFJPCZOsKX4qPYz7KodWbruJ5QqevOWbK4HbWfHSCyQepPhm5SGJ9ig0gp3bdEJSIufZSWmEcvzcq3T5pB2JvORc4tAlMsv8n4tWOjdco= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774342261; c=relaxed/simple; bh=IlszfQZzCRvNsvTO1OkusnhnoBzFmnsl/FgN1a7N2yQ=; h=From:Subject:Date:Message-Id:MIME-Version:Content-Type:To:Cc; b=k1DiUfVjUZe6jQ4mUXSj6ntjFcG8XHVOdvVzAgePPKbb+zW+UfwWwqV4xzXpn1arnPhZa6YoZVfkJvBn+/NPr5oZvAC4LxjIC9MixRYRwMA/A/rNAQ2eJkEwedED9qO8pvnpEOIux9dACrPlYms+wGvaEgfc9G1kulSQiIA404U= 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=G56peE6L; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=T6Ds4OKS; 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="G56peE6L"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="T6Ds4OKS" Received: from pps.filterd (m0279873.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 62O3WLRb3903733 for ; Tue, 24 Mar 2026 08:50:57 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:message-id :mime-version:subject:to; s=qcppdkim1; bh=S94ffhFC3aRVULJSKVPQbc o2ZINqmw4aom4ninAXgAE=; b=G56peE6LX+d/cVYUZ8qAIKItVvMdZPcFWxCMsb Fh3JbjqqieIX4xWPj8lyFC8vFcHLSU++EJ6vjnK0k1SOv0Vgol2Vn3bjqSJ93zAB /f2JA9mZ0bqYyLipWpTjWcAJe/55jcB+wXo9H12IhCoTAZZtbtiM2kuxOQW4WkBQ tj7Y4NeXwJPBg9ENQ7ySvF9hlwoWH7IvqN4RK1dJdAcW2CN3JzLyKRvjz7eGW9Xf eENyTIPkZluB4JmO4gma0mnmehlRQ16M1cdaSWC644XtgkCQZqaMsAQAPREPwKby PhkBwUfU2xw6Qw50gA1S09oy4pq3LfCYhc0OYxUxoZH7d5IA== Received: from mail-pl1-f197.google.com (mail-pl1-f197.google.com [209.85.214.197]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4d3jt0h23k-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Tue, 24 Mar 2026 08:50:57 +0000 (GMT) Received: by mail-pl1-f197.google.com with SMTP id d9443c01a7336-2b06395b8deso16305895ad.1 for ; Tue, 24 Mar 2026 01:50:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1774342255; x=1774947055; darn=vger.kernel.org; h=cc:to:content-transfer-encoding:mime-version:message-id:date :subject:from:from:to:cc:subject:date:message-id:reply-to; bh=S94ffhFC3aRVULJSKVPQbco2ZINqmw4aom4ninAXgAE=; b=T6Ds4OKS7eOF5u21M3uxSsjIfrm+AZZMUHYQy+h3sVXSM2FgFYACowgE9gofYBT3nN MqDRZfAaPPO7NpYBq9E2jetK60Dd0pZ9LGwvEcCpYXoeqiEBwEb4JeWq5V/17sy+C5UC 6iZ5VeMgiwBHegOG+NqwBFjMI6xSExQcF2tf7cxAe5Wwm+NGyOmmvmerThpLCWlwqNhi CHbANdF4lB9ndZOKHleRRc/v98evQqn11i5mrWh1QD+LxiszN/RcTGIQHBaV3XBxSOCM SN0XNSSlPsFIRTJcycJ6XxiDehPZvjKvD19HPyiwybK00H3s456YbqRjGj5wmJo5xyUN TqHA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774342255; x=1774947055; h=cc:to:content-transfer-encoding:mime-version:message-id:date :subject:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=S94ffhFC3aRVULJSKVPQbco2ZINqmw4aom4ninAXgAE=; b=sR/dgfO4GTuaoyorXbPJCcK+gpIeGZV/cmf7zBG46kKGzZV7VQuny/TnfoDEUkVHaG dVoJhtxGarXv0KwJgxMcLxCJBDtMJn9xqnQahiKph+w60Qw7TjibKnOj6uVnVzQF8kQK H+6ytX3vRPHz7cgpobaYrvwPz5D1Vo9kmc33nHkbkpw9hPcRLCGvxtdsK4zLgew9Oo3K uh5Q8s/cAqraRHpO/FtjcpvVYlDJr+x+wbqV+n0S4rTg6tCSbRWkGtb9PTxvDeCrz25X m+sa2SJD0fSPPAgHVQogap8CEK/aidyO3IKJ6vs5DCJJDOAqSgeLcoFvJH07M0/Nstbe F4wg== X-Forwarded-Encrypted: i=1; AJvYcCWD/IsJCGHIwNAvIIphB1w5Q9CDRAsECIRA2QtMKwIwCoyKZUI1R0ZvbjGKcUwkLS26JZXB7zpWaOVahpg=@vger.kernel.org X-Gm-Message-State: AOJu0Yxatndrc2v3MYpiVq9N85XBPpE7xdKdEYihCivQu8dVEJy3S1Iy EINmBrTOwR5wp/xNVJ/HmCgfnnAqxb+kDKMRHnKvTY5apu464/KYB0e3rn5i4V3gQuiaZn8vvjs +htfrpg6G0Gq4GA43GTFNPrcp3qqv/HP8FW33258GP0d3GDjnXpz55GFKr+eoxYOK7JsYS9H5Li s= X-Gm-Gg: ATEYQzwcjHekcfiMUBKgBpWPvhem6tx/sZN3NwglcI4V8jBUQcitxSq+NJkA1eaURfg 3kfrL5G0e4akcIW5swJAf3zLTy5x+5MZoLBme4rBYeNcAtvAQY0ZH/9gO0zQ7znFi6m+hbDuqB7 ef6nm8k5GQj8X8ipIcAeZQm19+2vXePy1m/pZFkVsb3QQ2d+rU9Blm/Q3/7oaFWMUPsTVdhEADA C5/YoamYn7izX4J4CXKSLC7DE3EfDLd/Nawqm9MYaANwd/m0LyDrqv61casPKPRleo4OJFT7f7Q meNy1kl7aBcNTB4BhXBAcxFHV5XyLcjIhq7HjzUTsNjwp2wmAu6v1mp5Q7Uj7zWCVvY4hxb96As GeTU4BRoO8tsNGTTtnZUQYVsZlFYLZoXz+cNuBz66veJ50GfoU7XAgfdrxKY= X-Received: by 2002:a17:903:4b47:b0:2b0:66bc:22a3 with SMTP id d9443c01a7336-2b0826b8854mr133559205ad.10.1774342255218; Tue, 24 Mar 2026 01:50:55 -0700 (PDT) X-Received: by 2002:a17:903:4b47:b0:2b0:66bc:22a3 with SMTP id d9443c01a7336-2b0826b8854mr133558745ad.10.1774342254632; Tue, 24 Mar 2026 01:50:54 -0700 (PDT) Received: from hu-vpernami-hyd.qualcomm.com ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2b08366c4f1sm135752265ad.59.2026.03.24.01.50.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 24 Mar 2026 01:50:53 -0700 (PDT) From: Vivek Pernamitta Subject: [PATCH v9 0/2] net: mhi: Add support to enable ethernet interface Date: Tue, 24 Mar 2026 14:20:47 +0530 Message-Id: <20260324-vdev_eth_next-20260323-v9-0-da6e4e486437@oss.qualcomm.com> 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: 8bit X-B4-Tracking: v=1; b=H4sIAGdQwmkC/y2MQQqAIBQFrxJ/nWAqkV0lQqJe9TcWGiJEd0+i5 QzM3BQRGJH66qaAxJEPX8DWFc375DcIXgqTkqqVWhmRFiSHa3ce+RK/1kLbTjYSyjZGU4nPgJX zNx7G53kB949DPWgAAAA= X-Change-ID: 20260324-vdev_eth_next-20260323-398010e29143 To: Andrew Lunn , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, Vivek Pernamitta X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1774342251; l=6409; i=vivek.pernamitta@oss.qualcomm.com; s=20241114; h=from:subject:message-id; bh=IlszfQZzCRvNsvTO1OkusnhnoBzFmnsl/FgN1a7N2yQ=; b=HlDi4OnUaS2jbikmThFvkY0z/ArpF4pQn9oc5u7pH3iTBrINTtFPtjF9ZLjgYx2eQDmDyH5fc fAXsLFaibwyCRkTG3wkHQgpKzjGYXvpt4/IEabJtNX6XiJUUEhg/bbn X-Developer-Key: i=vivek.pernamitta@oss.qualcomm.com; a=ed25519; pk=HDwn8xReb8K52LA6/CJc6S9Zik8gDCZ5LO4Cypff71Y= X-Proofpoint-ORIG-GUID: PBn7Cwp2PQfRmQcnfAtQ3_BWM24sW4J_ X-Authority-Analysis: v=2.4 cv=Nc3rFmD4 c=1 sm=1 tr=0 ts=69c25071 cx=c_pps a=cmESyDAEBpBGqyK7t0alAg==:117 a=ZePRamnt/+rB5gQjfz0u9A==:17 a=IkcTkHD0fZMA:10 a=Yq5XynenixoA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=rJkE3RaqiGZ5pbrm-msn:22 a=VwQbUJbxAAAA:8 a=EUspDBNiAAAA:8 a=COk6AnOGAAAA:8 a=A2YzKnAdJIP43pHWjKUA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=1OuFwYUASf3TG4hYMiVC:22 a=TjNXssC_j7lpFel5tvFf:22 X-Proofpoint-GUID: PBn7Cwp2PQfRmQcnfAtQ3_BWM24sW4J_ X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMzI0MDA3MCBTYWx0ZWRfXzxp61S/AeT6D KaDpMFe5lj6RPS7a2YixISFC2Q45za3H9w1+ZqrPHelwddu8vinBmED7jT6Op0u/i7o2JexaGdA UeTbbL8753vr8OukfoTd4fmjccOjr8Gg7jPJi3bRJN8/JuIVDIAn+dq7TfJQexYlc4Np6wph34D ssLMiMt+z8n0I9IVlPPihuNxC8ewZY5TvGEfiaytqzU9X0LJifjemm47r+1JGqVsEmd4BuXjVJl lXHs73PafumN6pFerlqnhqxObwYMs3wURLKtLpZlUVqxeBuk6QwzRsQ86KQiLGVdHGZIKWwAAHL OTWrWj/6oyA1NFxx3tfTDj5TNz5i6W15WBmcqQcK5O9wTKWHBjbauXP7kl03Qg8zHMDbm+iT6kN 6sd2ZMWBeKyh11LOlV0VxZL5oZyK2DGd2m2OSwvgnHlUbsVMCgN+5QgBCfyiyi4A57k5UmKQV3F amdMI4Qb1OjB+zfG5NA== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-03-24_02,2026-03-23_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 impostorscore=0 spamscore=0 clxscore=1015 priorityscore=1501 bulkscore=0 lowpriorityscore=0 malwarescore=0 suspectscore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2603050001 definitions=main-2603240070 Add support to configure a new client as Ethernet type over MHI by setting "mhi_device_info.ethernet_if = true". Create a new Ethernet interface named eth%d. This complements existing NET driver support. Enable IP_SW1 (ch:48/49), IP_ETH0 (ch:50,51) and IP_ETH1 (ch:52, 53) channels over MHI for M-plane, NETCONF and S-plane interface for QDU100. IP_ETH channels as representing the Ethernet interface of the MHI device, and create a corresponding netdev instance to expose this interface to the host networking stack. M-plane: Implement DU M-Plane software for non-real-time O-RAN management between O-DU and O-RU using NETCONF/YANG and O-RAN WG4 M-Plane YANG models. Provide capability exchange, configuration management, performance monitoring, and fault management per O-RAN.WG4.TS.MP.0-R004-v18.00. YANG model based interface aligned with O-RAN WG4 M-Plane specifications over TCP between the OAM application on the host and the DU M-Plane software running on the X100 platform. Netconf: Use NETCONF protocol for configuration operations such as fetching, modifying, and deleting network device configurations. This interface is used for IETF Netconf communication, enabling a Netconf server on the ORU to interact with a Netconf client running on the host. S-plane: Support frequency and time synchronization between O-DUs and O-RUs using Synchronous Ethernet and IEEE 1588. Assume PTP transport over L2 Ethernet (ITU-T G.8275.1) for full timing support; allow PTP over UDP/IP (ITU-T G.8275.2) with reduced reliability, as per ORAN spec O-RAN.WG4.CUS.0-R003-v12.00. To support accurate phase and time synchronization between the host (L2) and device (L1-High), the system must exchange PTP messages as raw Layer-2 Ethernet frames, because the ITU-T G.8275.1 profile operates strictly over Ethernet multicast and not over IP networks. This means the device’s PTP stack can only send and receive PTP Announce, Sync, Follow-Up, and Delay messages in native Ethernet format, not as IPv4/IPv6 packets. However, the host and device communicate only through MHI/PCIe, which provides no native Ethernet interface. Therefore, the system must implement a virtual Ethernet interface over MHI on both sides. This virtual Layer-2 link enables true Ethernet-frame transport, ensuring the device’s PTP implementation remains fully compliant with the G.8275.1 Ethernet-based timing model. The actual link between the device (QDU100) and the host is PCIe/MHI. The device has the Ethernet interface and is exposed as the MHI channel to the host. So this patch creates the Ethernet interface on the host based on the 'IP_ETH' channel so that the host can use this interface for exchanging the NETCONF packets. The patch primarily addresses host-to-DU(QDU100) communication. However, the NETCONF/M-Plane packets originating from the host will eventually be transmitted from the DU to the RU over the fronthaul, which uses Ethernet. For additional details on this architecture and data flow, refer to the O-RAN Management Plane Specification: O-RAN.WG4.MP.0-v07.00 O-RAN Alliance Working Group 4 – Management Plane Specification Chapter 4: O-RU to O-DU Interface Management MHI_CHANNEL_CONFIG defines channel attributes for the host controller to set up channel rings. These entries are part of the MHI controller’s configuration so that client drivers, such as the MHI network driver, can attach to them. Each interface is mapped to an MHI channel (for example, eth0 → IP_ETH0 channels 50/51), which is why this configuration resides in the bus code. Allocate MHI netdev's using NET_NAME_ENUM to reflect kernel-enumerated naming. This updates the reported name_assign_type for MHI net interfaces created by this driver, aligning naming semantics across existing and new devices. No functional or interface naming changes are introduced. Signed-off-by: Vivek Pernamitta --- patchset link for V8 : https://lore.kernel.org/all/872d3520-f749-4d4d-a8c3-25dba30e947c@oss.qualcomm.com/#r patchset link for V7 : https://lore.kernel.org/all/20260205-eth_vdev_next-20260204_eth-v7-0-f85645210f81@qti.qualcomm.com/ patchset link for V6 : https://lore.kernel.org/all/20251209-vdev_next-20251208_eth_v6-v6-0-80898204f5d8@quicinc.com/ patchset link for V1 (first post) : https://lore.kernel.org/all/20250724-b4-eth_us-v1-0-4dff04a9a128@quicinc.com/ changes to v9: - Updated patchset as per comments provided by Mani to check for ARPHRD_ETHER type while assigining ethernet protocol and also removed explictly setting ethernet_if to false for IP_SW/IP_HW interfaces. - Moved adding IP_SW1 channel to different patch in same series. - Added more description in comments. - As MHI(pci_generic) got merged, dropping the patch from series. changes to v8: - Removed skb_copy_to_linear_data call as it is not needed, updated as per Loic Poulain and Paolo Abeni. - Removed ethernet_if member in struct mhi_net_dev instead used !!ndev->header_ops check for ethernet protocol as per paolo Abeni. - Updated more infromation in commit text for change from NET_NAME_PREDICTABLE to NET_NAME_ENUM. changes to v7: - Updated to NET_NAME_ENUM while allocating netdev as per Andrew - Updated more information as per comments from Jakub and Mani changes to v6: - Removed interm variable useage as per comments from Simon and Dmirty. - Squashed gerrits 1 and 2 in single gerrit. - Added more description for M-plane, Netconf and S-plane. changes to v5: - change in email ID from "quic_vpernami@quicinc.com" to "vivek.pernamitta@oss.qualcomm.com" - Renamed to patch v5 as per comments from Manivannan - Restored to original name as per comments from Jakub - Renamed the ethernet interfce to eth%d as per Jakub --- Signed-off-by: Vivek Pernamitta --- Vivek Pernamitta (2): net: mhi: Enable Ethernet interface support net: mhi: Add IP_SW1 interface for M-plane support over MHI drivers/net/mhi_net.c | 66 +++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 54 insertions(+), 12 deletions(-) --- base-commit: 09c0f7f1bcdbc3c37a5a760cbec76bf18f278406 change-id: 20260324-vdev_eth_next-20260323-398010e29143 Best regards, -- Vivek Pernamitta