From nobody Sun Dec 14 12:18:10 2025 Received: from mx0b-0024c301.pphosted.com (mx0b-0024c301.pphosted.com [148.163.153.153]) (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 1CD7733B943 for ; Fri, 14 Nov 2025 15:08:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=148.163.153.153 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763132903; cv=fail; b=E2rjb5fyNVW6ZfOcvakOruOfH72rxzQcXPp3uCV8eS0jWB6YxJqSUg9ghxMoHJnaWPLwynOqQoyApBr3aoUy8iKz8e48UD3m+pPNrKE5aPBmjL6yvhNJ4HeUvDlj5vq5RRrJpA4JLZi8e/dBbpP51GD/ht2Kp7KuqJotIrapaJI= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763132903; c=relaxed/simple; bh=T3eIGJOKybAa1REAvJu+Xz1ClqFb8yssCTXF61XEk+s=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=EPW7EflgJGQ0jRCq1daBcBqw4gQZOdVYnBgtRcPhDhNbkLUrxjsQWQ7Qd+u/Uv7rzHbaC0aQ1G1dcNr1/KOVXEaWhLzZZiK7IaNKcdZxv1ex/8qCC0/3QSdRNPPLuGnmY6H4U/fK0fB5KEkAZHPpQc+v80PxKHmPh31lcUaLE/4= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=silabs.com; spf=pass smtp.mailfrom=silabs.com; dkim=pass (2048-bit key) header.d=silabs.com header.i=@silabs.com header.b=UmJOg396; dkim=pass (1024-bit key) header.d=silabs.com header.i=@silabs.com header.b=LaqLIN1U; arc=fail smtp.client-ip=148.163.153.153 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=silabs.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=silabs.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=silabs.com header.i=@silabs.com header.b="UmJOg396"; dkim=pass (1024-bit key) header.d=silabs.com header.i=@silabs.com header.b="LaqLIN1U" Received: from pps.filterd (m0101742.ppops.net [127.0.0.1]) by mx0a-0024c301.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5AECXOfE2440870; Fri, 14 Nov 2025 09:08:18 -0600 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=silabs.com; h=cc :content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=pps12202023; bh=Ybw8J2jwNfjiALAvFmvIjAcoR/UwWJIN9UMNXNS47w8=; b=UmJOg396WqkL FGyWZVU2ThPbKaMmoHPsrBz+RlmquPZ519U3MvxSBlRYwWwCdSNiDiL1vGubUFqp H28P+WnzcW2o35pOESnDmstYDO3DrkRY89+vEsEDhaJw9X3BKdfQlf/YNMwbV7ka fauXdTtRRN1J+gBaE55LpfaH2N92OsQ0ODWpfmhGimioQ0MV6KJNsTRMEFEenrjr eFGDtF9AXVoMycno8jiyRdGImjo6cOoUib+Yy4A2mDzyOUULN6vJhVjzaRPrCfdU s7WZ+TcV6utj/OhN7Mbic8YWWWhjslXTFYNlh1FmEzIqWUpc5usFOqXbklT/Lx2x 0SHaOt3grg== Received: from sj2pr03cu001.outbound.protection.outlook.com (mail-westusazon11022102.outbound.protection.outlook.com [52.101.43.102]) by mx0a-0024c301.pphosted.com (PPS) with ESMTPS id 4adr8fsm4b-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Fri, 14 Nov 2025 09:08:17 -0600 (CST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Ad/nPDk7qUOLKgwjEBOWjoTYw8aKLIBXqMaZOC2aXMmYvMeDOQHrayAhgFaeYae5uMMa/vH1s4BvbLQxOanQfx5YqKxZIgXvcyhHU9GZrtKezBZjfKIcQf+sYTqJeBSW/sBzZaHwMfB+WagGnF1V7y+jcsv687ueCfeg0btHrbOPrlOQUcPK912TgGhGHJLf1Yn3rdknZdyhwEmni6ZbciEsTXbVVMfsQh80uHG00RmTRx+ad4g9GXDP0UEFfnX67IHjDOKjNW4P+BiIwF/PgsLwzN47OlUkheMwl7HUb6YSYq4kQBMDWXEDW8gnNZw8w85Oq5UX+rVNRL7SsxlDzw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=Ybw8J2jwNfjiALAvFmvIjAcoR/UwWJIN9UMNXNS47w8=; b=XQ+mtu/eakANxj+FN+BAxO4DDBGanywtt+XmdRyjrh3FMOjtVQggUUooBRqwhCUPbldoG5LG5UkOIAeL8C37I7zbQZVZIA3kkGGg/MaYH7SJI+6ew7LB3x/ehg2e2PxcoQ8d80Ag+r1BWRr1FTuh4ERVT2yeftd41137Vy4zkTM5n4VLJTmKQYl+2xAR9vOn9qJJbosh5sa4Z5nhDSpmPbqrIewphmjF6A7Jr7bhoYyrpI+Uc3s4yTmbMQKDlKLrcMdlVLAbbQZxlfxp7I27MhT4hnAkhc8a1n4PnVt2LXLzrfXnN27gwQL9x4Nqi3E5FnjdpkH+UU1+p+linldmOg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=silabs.com; dmarc=pass action=none header.from=silabs.com; dkim=pass header.d=silabs.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=silabs.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Ybw8J2jwNfjiALAvFmvIjAcoR/UwWJIN9UMNXNS47w8=; b=LaqLIN1Uv3yrgu/euGjIMVgZ8ruartd6ESxBqq9CMGGAlAF01K3XV8agzNhEHeYTwqNmUIENLDjCWWLMIOfnC4bbD5WGItyOdTKHgaPkRkpi0dY/Kya6PDh7pklNBN5+gURlbDHaUXmmK6kBFPF8p+fLGY/9ueWT2fCVbVAzVl0= Received: from DS0PR11MB8205.namprd11.prod.outlook.com (2603:10b6:8:162::17) by CH3PR11MB8774.namprd11.prod.outlook.com (2603:10b6:610:1cd::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9320.17; Fri, 14 Nov 2025 15:08:15 +0000 Received: from DS0PR11MB8205.namprd11.prod.outlook.com ([fe80::c508:9b04:3351:524a]) by DS0PR11MB8205.namprd11.prod.outlook.com ([fe80::c508:9b04:3351:524a%5]) with mapi id 15.20.9320.018; Fri, 14 Nov 2025 15:08:15 +0000 From: =?UTF-8?q?Damien=20Ri=C3=A9gel?= To: greybus-dev@lists.linaro.org, Johan Hovold , Alex Elder , Greg Kroah-Hartman , linux-kernel@vger.kernel.org Cc: Silicon Labs Kernel Team , =?UTF-8?q?Damien=20Ri=C3=A9gel?= Subject: [RFC PATCH v2 04/12] greybus: cpc: pack cport ID in Greybus header Date: Fri, 14 Nov 2025 10:07:30 -0500 Message-ID: <20251114150738.32426-5-damien.riegel@silabs.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20251114150738.32426-1-damien.riegel@silabs.com> References: <20251114150738.32426-1-damien.riegel@silabs.com> Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MA5P287CA0046.INDP287.PROD.OUTLOOK.COM (2603:1096:a01:175::12) To DS0PR11MB8205.namprd11.prod.outlook.com (2603:10b6:8:162::17) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS0PR11MB8205:EE_|CH3PR11MB8774:EE_ X-MS-Office365-Filtering-Correlation-Id: e9f99e8f-8a5d-402e-f974-08de238fa2ed X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|52116014|366016|1800799024|38350700014; X-Microsoft-Antispam-Message-Info: =?utf-8?B?SzgrNnZURDQ4N1g2dDR5eWNyazdJVzdPRGtDS3hVeTkrbXgzTTJSd05RQnBp?= =?utf-8?B?WGtpZFUydld6U1JkNWZvT01GTGo1RzBoaHY5VHBKYVZMZG1zdmorRDNiZWYx?= =?utf-8?B?SDRrSlZSS2ZRUktoQmNSTlgwZWVqZ280dC85YWcwVVllVlNFZ3dSUjRJSDZB?= =?utf-8?B?d011UFAydVRuTlcvVmllL05VTEgvL040eHhVTUt2MmlRcW1ycUJNd2MrUXhL?= =?utf-8?B?WXhwY09OWnlwSElxNnVCY3VMdm54SWtYbEVWbXNLVDNIMU5HbFJweTNCd04r?= =?utf-8?B?M2N4MmNoVUpMejZueDFBeFljemtNaWZpWVdpMlFlajhQVmM3MmNCWm9QNDda?= =?utf-8?B?Zmh2MDI0NDc0MmdmMm0xaHIrR3F6WXVUSElWUkNNRCsrM3VVYmdUTXBpTU9L?= =?utf-8?B?N2xiOVRGZnowM2NSeEFKSlp4SGNjaWZIUHFwTzhKNHZaNEVzTU02dVN6UzRr?= =?utf-8?B?WVppWDdHZG4wcnRTbzFWc1M4NStCYnptKzNrNDdzVDhxV01wUXVKbGVlS1dv?= =?utf-8?B?OVVDcTYrUC9vaXhYSjVjMWVQY2JJZEJKaFVIdVV5Rnl1VGgrcWZBaWw4ZERI?= =?utf-8?B?QzBQTU0rYTVxMjFBU243SC9IYnRYRFVpUEZkRUcyVldFbWV0NDQvaXJVSk9i?= =?utf-8?B?S3JXVWp6ZnBlSTNvejk5RUQrWjZ1L1Y1U0pKZm9wUjBEMlFzNXlQV1pnYlg3?= =?utf-8?B?RTd2dEtlaG5RaU8yOFByMERkdTA4NHJiNnlzNEJkOTRDYmJWN21vR3VQOU5P?= =?utf-8?B?Yk1VaFJSZ2lLNkVWcUpHOWdQdUhUQk1ZSGJtdUcrYmhXbFJUeTJQSlhIZ014?= =?utf-8?B?aUcvbTRYUi9jbGdlRXRHZ1FrOFpHZEpqSEN1aXphSWhxdk9tRVM4RW52NlRa?= =?utf-8?B?T2VGUnQ1bk5UK01meHNWcVVuL3BiVHdKc0wwVXRNR3FBcCtsSlhOdHZMUW91?= =?utf-8?B?cDVkVkVRUzliY3hkcFNmUTdZaDU3QTJudDNqbHROVGVMWDJWY2ZHTnJYa2ZS?= =?utf-8?B?L0V2VWkrMzh2eFdDM0dhbERLTmt5bWk4VktqZjhNdVJQTndiQXRvbVIvRytM?= =?utf-8?B?UjBpVGJ6NG5uWEh4NksvUzNkcUhueXk0V2ZFVzkwVlM0c2pjWVM4YjIzaGxD?= =?utf-8?B?Wk9BY2tsdW1LenBHcXFVUm5ocHVGVXd5NWRiUjZGOXlBNC9KdVBXOURKOXhr?= =?utf-8?B?M3dOT2NIWGpEeVBUR0tGMnFWbDZMRjFGemVXYUhZVkNpMnpodVdmYTFTUnF4?= =?utf-8?B?a2gyYnRaVFNCbGYrSkp3WlNrM2pWVWdBZmUyRnFzNlZwNWc0VERoNWRWSkt1?= =?utf-8?B?eDFCZmlQUTZGVE91aEN3ZUdKN1ZvTWxrcTN4UXFodTRiL2E4RStNMWpMZFhQ?= =?utf-8?B?N0NiQ041MjA1aE5DbDhQVHMvUkkxR3FuRFA3WnFCTDRFaTRRTUF1R2c0OW5Q?= =?utf-8?B?TE5ud0NMQzZ0Mmg5K1JYZUF0NDZ5QlN3RmZqazExOGlzVzNwZDFhOGliK2RC?= =?utf-8?B?Qmw0a01NcGI0ejVlTXBtZ3dVc2ZiMGZFTHllY2hpbjdyYklvRjhqd0R4MDVG?= =?utf-8?B?WlE5L0VvekU5ZzFiaTE1L2pHcUNXOWFoZC9OSzN1YVN5Njd6RmtkZExGT3pT?= =?utf-8?B?R0ZkNTVKMzdvcC8rL3U1YkpPazM2UDZMSFBrMkxZQmwrQVVLTXhoK1pXekZE?= =?utf-8?B?bzJEbnlqa05oMHJ5TXdHbitwVnNQS202UnZxTDl6bUxmNEF0aTZidEdnVytN?= =?utf-8?B?Z2UwTW5mS0g2akp5cS9HcmdWRVN2LzU5VWNyZ3NPbnVLd1N0VTcwQmxON2VV?= =?utf-8?B?ajlGZ0xvb3dhQy9NSlQrZVpaa1ZJN2pxRTRCUXFmOUN3d3czVjRSL0w4R1ZE?= =?utf-8?B?WVRHbDBUL2dXL2x5S0N1NGFJYkdGZlA1ZmNpR2JwcEF0VlRxOFQ4ZVBFWmRo?= =?utf-8?B?WGQ3amllU2I4SVhoWnYweWt6YWhXSWhGWXA3ZTNKcjUzZEZaU1BhYjZmWVZn?= =?utf-8?B?eG9tNDFXWUJXNERrUFdMWStpQ1NNWFhobWtEbnRNNHhnT3FDZUZCdlY2TWVt?= =?utf-8?Q?lSx33J?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS0PR11MB8205.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(52116014)(366016)(1800799024)(38350700014);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?aGM1cUVrcEpPVkhGRTFLckJIdnFCVmF3cGIwdi9RK2ZPZGVlTWlwdXNPL1Mv?= =?utf-8?B?WTlWeFM4dlpidmVvZm9zV3R1b3UxTytRcmUzWUU3UU9QNGFrRmZLM0JsSXo5?= =?utf-8?B?ZmE2NFRuNTNaRUhrT1p3eldNT1gyWm5jSjlVTVdSa2ZZaDNsQzNHa09kV3Zz?= =?utf-8?B?OGJlQVd3S2hrQkRlZEdxSEpCa0JScVBJNnIzVFNRSTY2Ulh4Q1NRZW04Mkdv?= =?utf-8?B?eFRMb1FaUjVKQWt6K1lqYjVaRXBOYlBUNjFFYlJWKy9XVDJXQ2JiNmZhM0RJ?= =?utf-8?B?UUtzbVRBcGpqTUZmWkpueWEvU1MrWkppalU0OEUwYnNuVG5WQzBGRGhKNm9j?= =?utf-8?B?NUowd1c2L1ZpUC9ORW5oaG1yeTZSUlNidXI1T1FGUGlqVlUzMzU1NllBbWxZ?= =?utf-8?B?UWsrSW9VTlFkV1h1ZVNmUnRKUHMyU1J5NDVIeHdYTTZCVVpOdnIzSDl0SCtk?= =?utf-8?B?TlhoUU5YYnprNmJpc3M4YWZCSzVuT3diM096RzlVN2RUblF4b25WRyt5aTFX?= =?utf-8?B?bGFPZW9PWUFsNkxhL1VXK0ZkOHg4bkxtT3JRc3plbS9hY0Rta2grY1hvUlpv?= =?utf-8?B?M2oxZUtCaGpUV2pRVHRySkJSVnViVnVQaXVFRDRCOGRpUDBscWtVMHlubmVO?= =?utf-8?B?dnRFMXVmRXd4UVNzUGVZSFBGZ21GdlhhTTkvMFQ4UHNwY3ZYdGVmY2NEclo3?= =?utf-8?B?eFp1akgrREs4d1FNeElWVFUyRExnSUtUdVVka09yZEx3SzBRcE9oeWl6SzBj?= =?utf-8?B?cWVhangxMHBScjZocHZtZlpHOTNWbUVsY1BTNUk0U2ZKK0Rnekdnd1p3OWt0?= =?utf-8?B?RUVqQnA4VFVoUlFod3Y2Y2lrWitsbHovV0tlaUFmanlhQUdiVXdzK0g3K0JQ?= =?utf-8?B?c1lwTktpdVZ2V3lON0ZZd2dKWWRqOG1qM0xEU3B1RStaaUpWQy9hc3piamtQ?= =?utf-8?B?UnZPS1EwZG1pcGFDOWkzdTdtZG4xMm1BZ0hxVzlhdlI0RnFFc0pDdzd5bWZr?= =?utf-8?B?bmY5MUNaaCt2YVFHZDQ1TlBRRGFFQ2RFR1dwMnVLaFJCc0RVRnVuc2xWSVhX?= =?utf-8?B?QXNPby9id1pxbGQvemxCaW10bXNySVFHd1hTOEN5Q0FDNnZEWi8vV1hKbGZ6?= =?utf-8?B?WGthblZUVXE5Y3NKZDhWbitKdVRTcStCMXp3eEJhOC8vWDdEUytFaDA5cUpS?= =?utf-8?B?WmRCWGY0dUkwb1ZVU3JBVEljMCs2b3ZoWFA3NVhRbEdmSjRJU1EwWnhURzNI?= =?utf-8?B?M0trNjZxdXYyUFB5d1o2R0VEdUJ4dHR4dnFDbmdEZUJMZm5UdTVxUnd3YVUr?= =?utf-8?B?bkZIbUFxNkU3REI0VGNDOERldVNJMFk5b0JWYzVCcWovbUpBbE9YQXlPWU95?= =?utf-8?B?VGpmVXhmNEJMOTFzR3BhVys0T2FMVnZWNDdJeGYrdmtpd3dYSzVZV1cvSDkw?= =?utf-8?B?QWdhOGx3cXg5bGlxdDBHVG44bHpSYUMvTmc2K3Y5MHNjMmRCMnJ4QWZRMWxM?= =?utf-8?B?VmcyS1JLelMwaWtaYUlHTk9uWEdGdkttUHR0SHpxbUhTWjVEQlcweGdZSHoy?= =?utf-8?B?NWNHams4dEdkZ2ZURVZ0NFFwYmswa1hqOGdWbWpmWnBjek5xU0RQcDhYcFp2?= =?utf-8?B?RmczbWFCLzNXUXNyMVVMSG1ZQU5FRUR1ajhWbU5tYUZSZHQwRDV1SFJ5a250?= =?utf-8?B?enIvbGZ3VjdsT3ZlK1hCeHpZa1J6LzVMSm1VcktDU0RoMnBxWlorWWwwTzc2?= =?utf-8?B?ZXdyTU00S0Q4WXNoSVhxcHNPek43MHQybloxV1Myd3ZvbVZFVWIyYlBUWFl4?= =?utf-8?B?OWRJQzMrdUdWM1NIcGVyblB0WDhUR3JRZkM0TkQ5UWhoR3JmbzFIRDYyRDgr?= =?utf-8?B?cmplK1RYczdta0xndzJSeXNZYmVRb3ZDQlBxSGpsaHQwbjd1bkFJdlpYVWNJ?= =?utf-8?B?ZWdobmdVa2FOVVh2eElhRTlkQ1cxRU0rdHdQUTgzanhqYTcvbjdJRmVsemp5?= =?utf-8?B?M3lhTnRVaHo3K0FxNmYxc3JxaFF2cmdPNkw1LzNETTNPTGk2UllSUGNBeWZm?= =?utf-8?B?OTRlQzA2Q0QyQ2lZRFl6a3RvZDJyYXA3UTFPWFNVMlRtdlU0SHlVT2huRldV?= =?utf-8?Q?Rc6es92H11dhnEDX8NeSzrrk3?= X-OriginatorOrg: silabs.com X-MS-Exchange-CrossTenant-Network-Message-Id: e9f99e8f-8a5d-402e-f974-08de238fa2ed X-MS-Exchange-CrossTenant-AuthSource: DS0PR11MB8205.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Nov 2025 15:08:15.7400 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 54dbd822-5231-4b20-944d-6f4abcd541fb X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: iD5RVEfHUXj+stEVUe8IuAKrCpz2GY5Jh9THab7EMoaIYBr88qwxBZlhYIduFn1Zjdg+xpil9L+Y3GtsI2h1Lg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR11MB8774 X-Proofpoint-ORIG-GUID: RvtBVGVRQE7fslYwZTwpy15nNQqFEBim X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMTE0MDEyMSBTYWx0ZWRfX3pqzA4k6+a6X bElsQVCHRSbhbk51dW7ln7zHMLT94pA1tuS56ejlwr6WHTUPy898s12O/1v63gyy8JXc0eOHzQG ZWd/9NYISLbdRw0dDXVwjYUAbO5dapCUuLeTfsqfiUQP2BqwY/vktZYnsqIhH4RQEoj0odzhyU6 kRnvPOBfJTf1yCgSN7MmY2nu9IZGcoPh8CneF6QFOoNt9ht6fuBpOEfTWNkK8h1zrx2G2mbzoUz n1VbQ0xsmPcz3XBNIRIJLUhlwVRK/k+dMEowz/2DnBFKRWdPGgbF6HbE0T7lTZVMGMfZt+ni898 UasqgEmdERskUOpajin1cGbX52hDGym+QLw2VEZyWyb2tnyR2obIYEGfD9EGSTcVgEINt+zGjQl xPIV5X3iTjxjKPRZz6PmCWpXreHlpw== X-Authority-Analysis: v=2.4 cv=BYPVE7t2 c=1 sm=1 tr=0 ts=691745e1 cx=c_pps a=pEQek7DF72mEx21Gi+cf4w==:117 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=z/mQ4Ysz8XfWz/Q5cLBRGdckG28=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=xqWC_Br6kY4A:10 a=IkcTkHD0fZMA:10 a=6UeiqGixMTsA:10 a=M51BFTxLslgA:10 a=i1IsUcr2s-wA:10 a=VkNPw1HP01LnGYTKEx00:22 a=2AEO0YjSAAAA:8 a=bWPpxp-jgQ3ylSns5SMA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=cPQSjfK2_nFv0Q5t_7PE:22 X-Proofpoint-GUID: RvtBVGVRQE7fslYwZTwpy15nNQqFEBim 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-11-14_04,2025-11-13_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 adultscore=0 malwarescore=0 suspectscore=0 clxscore=1015 lowpriorityscore=0 impostorscore=0 priorityscore=1501 phishscore=0 bulkscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2510240001 definitions=main-2511140121 Take advantage of the padding bytes present in the Greybus header to store the CPort ID and minize overhead. This technique is already used by the es2 driver. Signed-off-by: Damien Ri=C3=A9gel --- drivers/greybus/cpc/cpc.h | 3 +++ drivers/greybus/cpc/cport.c | 29 +++++++++++++++++++++++++++++ drivers/greybus/cpc/host.c | 13 ++++++++++++- drivers/greybus/cpc/host.h | 2 +- 4 files changed, 45 insertions(+), 2 deletions(-) diff --git a/drivers/greybus/cpc/cpc.h b/drivers/greybus/cpc/cpc.h index 7e032f6cf50..0f2d204d86d 100644 --- a/drivers/greybus/cpc/cpc.h +++ b/drivers/greybus/cpc/cpc.h @@ -24,6 +24,9 @@ struct cpc_cport { struct cpc_cport *cpc_cport_alloc(u16 cport_id, gfp_t gfp_mask); void cpc_cport_release(struct cpc_cport *cport); =20 +void cpc_cport_pack(struct gb_operation_msg_hdr *gb_hdr, u16 cport_id); +u16 cpc_cport_unpack(struct gb_operation_msg_hdr *gb_hdr); + int cpc_cport_transmit(struct cpc_cport *cport, struct sk_buff *skb); =20 struct cpc_skb_cb { diff --git a/drivers/greybus/cpc/cport.c b/drivers/greybus/cpc/cport.c index ed0b8e8b0d7..0fc4ff0c5bb 100644 --- a/drivers/greybus/cpc/cport.c +++ b/drivers/greybus/cpc/cport.c @@ -3,6 +3,9 @@ * Copyright (c) 2025, Silicon Laboratories, Inc. */ =20 +#include +#include + #include "cpc.h" #include "host.h" =20 @@ -31,6 +34,27 @@ void cpc_cport_release(struct cpc_cport *cport) kfree(cport); } =20 +/** + * cpc_cport_pack() - Pack CPort ID into Greybus Operation Message header. + * @gb_hdr: Greybus operation message header. + * @cport_id: CPort ID to pack. + */ +void cpc_cport_pack(struct gb_operation_msg_hdr *gb_hdr, u16 cport_id) +{ + put_unaligned_le16(cport_id, gb_hdr->pad); +} + +/** + * cpc_cport_unpack() - Unpack CPort ID from Greybus Operation Message hea= der. + * @gb_hdr: Greybus operation message header. + * + * Return: CPort ID packed in the header. + */ +u16 cpc_cport_unpack(struct gb_operation_msg_hdr *gb_hdr) +{ + return get_unaligned_le16(gb_hdr->pad); +} + /** * cpc_cport_transmit() - Transmit skb over cport. * @cport: cport. @@ -39,6 +63,11 @@ void cpc_cport_release(struct cpc_cport *cport) int cpc_cport_transmit(struct cpc_cport *cport, struct sk_buff *skb) { struct cpc_host_device *cpc_hd =3D cport->cpc_hd; + struct gb_operation_msg_hdr *gb_hdr; + + /* Inject cport ID in Greybus header */ + gb_hdr =3D (struct gb_operation_msg_hdr *)skb->data; + cpc_cport_pack(gb_hdr, cport->id); =20 return cpc_hd_send_skb(cpc_hd, skb); } diff --git a/drivers/greybus/cpc/host.c b/drivers/greybus/cpc/host.c index 2ca938c2b48..1d81c624dd6 100644 --- a/drivers/greybus/cpc/host.c +++ b/drivers/greybus/cpc/host.c @@ -204,8 +204,19 @@ void cpc_hd_message_sent(struct sk_buff *skb, int stat= us) } EXPORT_SYMBOL_GPL(cpc_hd_message_sent); =20 -void cpc_hd_rcvd(struct cpc_host_device *cpc_hd, u16 cport_id, u8 *data, s= ize_t length) +void cpc_hd_rcvd(struct cpc_host_device *cpc_hd, u8 *data, size_t length) { + struct gb_operation_msg_hdr *gb_hdr; + u16 cport_id; + + /* Prevent an out-of-bound access if called with non-sensical parameters.= */ + if (!data || length < sizeof(*gb_hdr)) + return; + + /* Retrieve cport ID that was packed in Greybus header */ + gb_hdr =3D (struct gb_operation_msg_hdr *)data; + cport_id =3D cpc_cport_unpack(gb_hdr); + greybus_data_rcvd(cpc_hd->gb_hd, cport_id, data, length); } EXPORT_SYMBOL_GPL(cpc_hd_rcvd); diff --git a/drivers/greybus/cpc/host.h b/drivers/greybus/cpc/host.h index 104d61e3bc5..86d205fcb59 100644 --- a/drivers/greybus/cpc/host.h +++ b/drivers/greybus/cpc/host.h @@ -45,7 +45,7 @@ struct cpc_host_device *cpc_hd_create(struct cpc_hd_drive= r *driver, struct devic int cpc_hd_add(struct cpc_host_device *cpc_hd); void cpc_hd_put(struct cpc_host_device *cpc_hd); void cpc_hd_del(struct cpc_host_device *cpc_hd); -void cpc_hd_rcvd(struct cpc_host_device *cpc_hd, u16 cport_id, u8 *data, s= ize_t length); +void cpc_hd_rcvd(struct cpc_host_device *cpc_hd, u8 *data, size_t length); void cpc_hd_message_sent(struct sk_buff *skb, int status); =20 int cpc_hd_send_skb(struct cpc_host_device *cpc_hd, struct sk_buff *skb); --=20 2.49.0