From patchwork Sun Apr 6 14:07:52 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yassine Oudjana X-Patchwork-Id: 878759 Received: from mail-10697.protonmail.ch (mail-10697.protonmail.ch [79.135.106.97]) (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 459A221A458; Sun, 6 Apr 2025 14:08:05 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=79.135.106.97 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1743948488; cv=none; b=NXXfGf57z2U58D3wLTZ83B3xzVOv0BzAvO+vjG+QXobtd6nWdYtopkfHwdrIc7nrEMTsTPoQQ92U5l538/lensM2Qo+JtY1c5ridZI1cR8YpFKjtuhvnzQEA6iC3UyggpAGpLx041nzs5L52fDI7pUHNCuqEjzZGvXFieG5vS+s= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1743948488; c=relaxed/simple; bh=8bNJAi8xxXq+/m14iR6Ou+lDszwsEnU976P/oQWgg08=; h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=lSHRizKSyfIVt1HkaAf/pNZpWRGJWc8fqN0SJMMXp5pzerEJKPxJjqkgLBN1FBETr0sq0ex3m3ZHT35NmqH5RSZhFpHL09M9ScdLsFIhRRnvJ0pTr7OqUFBV5xxZUQd0Oe0wTy9vBMNtlLRwf0FZJkFgg1bXW+XR3Zrg2YYGuWg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=protonmail.com; spf=pass smtp.mailfrom=protonmail.com; dkim=pass (2048-bit key) header.d=protonmail.com header.i=@protonmail.com header.b=oDFCi6kH; arc=none smtp.client-ip=79.135.106.97 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=protonmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=protonmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=protonmail.com header.i=@protonmail.com header.b="oDFCi6kH" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com; s=protonmail3; t=1743948477; x=1744207677; bh=Fs70yQ+s38J5++rsuygjPAam7o8B1WNkzsc+ZqyqCuc=; h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References: Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID: Message-ID:BIMI-Selector:List-Unsubscribe:List-Unsubscribe-Post; b=oDFCi6kHVP9mLPsmce9qUBjFlWM48jbkQBovuCD3WHwtlc1IbZRyK+SZ29c9ygh4E 9gan9bp5dUqAYN+mOCXIO8FMtYzfx2Te+TDn8THk2B6QJBQAY5hfyHKCwvmCYpGyQU B2Gerkd7dSpjONxS0sT/4zQN09jTEdmqh4abj5cXFnfG7t4+Ir6Y6cLfcKaA5H28si KQaOSCOe7PZevjthcw8vBMwHPHqQQEjwyar3c4Vxqq0Kg5LoFpFqJR8hGEe4unkybW ZO3RCM7ksLg6zrrt6YDcLqXcii24eYhhamIvDqtlN/9w3Sva0V6wQnSPUeaQgQP3+9 CpJn/qHbuvtpg== Date: Sun, 06 Apr 2025 14:07:52 +0000 To: Jonathan Cameron , Lars-Peter Clausen , Bjorn Andersson , Konrad Dybcio , Manivannan Sadhasivam , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Simon Horman , Masahiro Yamada , Nathan Chancellor , Nicolas Schier , Alexander Sverdlin , Sean Nyekjaer , Javier Carrasco , Matti Vaittinen , Antoniu Miclaus , Ramona Gradinariu , "Yo-Jung (Leo) Lin" <0xff07@gmail.com>, Andy Shevchenko , Neil Armstrong , =?utf-8?b?QmFybmFiw6FzIEN6w6lt?= =?utf-8?b?w6Fu?= , Danila Tikhonov , Antoni Pokusinski , Vasileios Amoiridis , Petar Stoykov , shuaijie wang , Yasin Lee , "Borislav Petkov (AMD)" , Dave Hansen , Tony Luck , Pawan Gupta , Ingo Molnar From: Yassine Oudjana Cc: Yassine Oudjana , Yassine Oudjana , linux-kernel@vger.kernel.org, linux-iio@vger.kernel.org, linux-arm-msm@vger.kernel.org, netdev@vger.kernel.org, linux-kbuild@vger.kernel.org Subject: [PATCH 2/3] net: qrtr: Define macro to convert QMI version and instance to QRTR instance Message-ID: <20250406140706.812425-3-y.oudjana@protonmail.com> In-Reply-To: <20250406140706.812425-1-y.oudjana@protonmail.com> References: <20250406140706.812425-1-y.oudjana@protonmail.com> Feedback-ID: 6882736:user:proton X-Pm-Message-ID: aa0750afc961828b592cdebd97b546926de2b946 Precedence: bulk X-Mailing-List: linux-arm-msm@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Move QRTR instance conversion from qmi_interface into a new macro in order to reuse it in QRTR device ID tables. Signed-off-by: Yassine Oudjana --- drivers/soc/qcom/qmi_interface.c | 5 +++-- include/linux/soc/qcom/qrtr.h | 2 ++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/drivers/soc/qcom/qmi_interface.c b/drivers/soc/qcom/qmi_interface.c index bc6d6379d8b1..cb57b7e1f252 100644 --- a/drivers/soc/qcom/qmi_interface.c +++ b/drivers/soc/qcom/qmi_interface.c @@ -14,6 +14,7 @@ #include #include #include +#include static struct socket *qmi_sock_create(struct qmi_handle *qmi, struct sockaddr_qrtr *sq); @@ -173,7 +174,7 @@ static void qmi_send_new_lookup(struct qmi_handle *qmi, struct qmi_service *svc) memset(&pkt, 0, sizeof(pkt)); pkt.cmd = cpu_to_le32(QRTR_TYPE_NEW_LOOKUP); pkt.server.service = cpu_to_le32(svc->service); - pkt.server.instance = cpu_to_le32(svc->version | svc->instance << 8); + pkt.server.instance = cpu_to_le32(QRTR_INSTANCE(svc->version, svc->instance)); sq.sq_family = qmi->sq.sq_family; sq.sq_node = qmi->sq.sq_node; @@ -236,7 +237,7 @@ static void qmi_send_new_server(struct qmi_handle *qmi, struct qmi_service *svc) memset(&pkt, 0, sizeof(pkt)); pkt.cmd = cpu_to_le32(QRTR_TYPE_NEW_SERVER); pkt.server.service = cpu_to_le32(svc->service); - pkt.server.instance = cpu_to_le32(svc->version | svc->instance << 8); + pkt.server.instance = cpu_to_le32(QRTR_INSTANCE(svc->version, svc->instance)); pkt.server.node = cpu_to_le32(qmi->sq.sq_node); pkt.server.port = cpu_to_le32(qmi->sq.sq_port); diff --git a/include/linux/soc/qcom/qrtr.h b/include/linux/soc/qcom/qrtr.h index 4d7f25c64c56..10c89a35cbb9 100644 --- a/include/linux/soc/qcom/qrtr.h +++ b/include/linux/soc/qcom/qrtr.h @@ -13,6 +13,8 @@ struct qrtr_device { #define to_qrtr_device(d) container_of(d, struct qrtr_device, dev) +#define QRTR_INSTANCE(qmi_version, qmi_instance) (qmi_version | qmi_instance << 8) + struct qrtr_driver { int (*probe)(struct qrtr_device *qdev); void (*remove)(struct qrtr_device *qdev);