From nobody Wed Dec 17 04:05:12 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 1737F2C0290 for ; Fri, 12 Dec 2025 16:34:32 +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=1765557275; cv=fail; b=b+9gMsivY55Aa99bECzpTgHgs3jGD4NtGo8FGFh7+znahjFKQdB3ZUVCfqH5WrgY9X27EfaSyCOvLZdJyAp0//UGxsjigQKRyl3ibG8IklnINQSk+BafBiA9g38jy7fdIqSVV6Dan7qQVcoWJW1NTSntnj3wQ7UvFFCqB8C4168= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765557275; c=relaxed/simple; bh=5BFmUG7A79HmA8r3/6QOfVTkEJ98cd9K56W/endHPso=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=HzqahRhb+CgZjUVI8MFPJe0Wja6HMg5rW0Ibl6yNvQAsqM61+BDwxdNU+AH1XFUL4dP3h79PySa48e87FYyK0lEuaZFzr6DZvNyJkLZ7Qk0CKgGrxLw+lMs/Dsn4+4f5zeerXcuQragY5A999KZWiwpP4jor4jPMSp2sn4sAMuE= 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=P8Ttji3p; dkim=pass (1024-bit key) header.d=silabs.com header.i=@silabs.com header.b=WfIO6XAw; 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="P8Ttji3p"; dkim=pass (1024-bit key) header.d=silabs.com header.i=@silabs.com header.b="WfIO6XAw" 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 5BC2uEi82563949; Fri, 12 Dec 2025 10:13:26 -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=C0ZE1Lpao0VwLwi2WpVtPRRotAKEx9xhQpIwVpcxx84=; b=P8Ttji3p7nh8 NwDpsNP/HRc+xjYGjRPnusFC8VANqo7Vhqf6pFhHMjquNjVI4jayVjWdDSgxmLfl q9Eg7Ka/4OUhYoUBYhnRDaC48VMz8iagNR38ATbv/xC1n+VvMaMLDWJxwVVVNSx1 nJaMZFnyjhR2IyYNOl3W9bIQ6VKYXMICGlG6LP8MIIgXyueCSieeuyZuANVpcSSE 7urXJU5j2RO1Rg6pPCsX8Jdk2CFAnt5oZHGWXoJmOhQtyk3DRDoAJ+cSEykxTrUP S/68KkFRWhhhRW+9ebIljuikPXd4cuBwQCdtWAx8p8Urh3zfsqJI5el8SMMEO/v1 ekuN+twuFw== Received: from sj2pr03cu001.outbound.protection.outlook.com (mail-westusazon11022100.outbound.protection.outlook.com [52.101.43.100]) by mx0a-0024c301.pphosted.com (PPS) with ESMTPS id 4aykqe47hk-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Fri, 12 Dec 2025 10:13:26 -0600 (CST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=SncZRyca/E9Miv/kafun0dVmzSlliR+fyeq1svQzmn2S36mObdvIqkFhqYhqVPw/Rynju9W6Al/aKwPoKXlkHCrlF/STwOHtf2cfDDAF1U2MTRYvNMvDoV89WZo8mWOT6zKgFojJkJj5TEy7XFG9b1e42Izg1Jiq0pvIE/P/GqklWyqzZjS4e7UG4zM3NwQIx2SLX7FTktojfvK2Ky4AcCqGct60Wnm1xVOP71u79SiLbMSSQe288pHZBovKW26iNMDFfOgyTjwdHunP7V3tjcEiI0NMr+3uGoIQqwuuy+w6hHcbz3leoGpdbEX+YlJzDXs1GBz1Bdl7v96dImmr3Q== 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=C0ZE1Lpao0VwLwi2WpVtPRRotAKEx9xhQpIwVpcxx84=; b=S6m+S0lduK52BlvEPPVg+1n47kKjd4+RPIreKmQnzJM/JUTWBBy8unQVEyNNEfUSP2a9l6uk/XC7quRKLtsj1Nfib6gjoAigOtoGY1hbAR+o+m5XCLGG6wBbWKxfv0km606MMpYDooIbfEGf5MfebQuqPQInG249Sx2TD0ptoxf8/nFegkdrgx7jh4z/sa8Tfu6n+z9ILnlxke00DcB2FpTyCkMn14WhZpfW2zcdU/wHjhGDWT/zrL2cuRPe3N3LvHMuOHfFxs7XzCfdnb3dvNPDJ+Ev9syd557dS8JO1suKurjl1qnOGJVX+E5Qx6UK5ac2Epy+bj0CyZyzdsMfFw== 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=C0ZE1Lpao0VwLwi2WpVtPRRotAKEx9xhQpIwVpcxx84=; b=WfIO6XAwwP1DDVoM55nRIUQpkqPPJPZCqhRteIav9gsZKOAHt5YS7MGW1x48fWfEZtqvu8kC/dTTBFvyQz+HJFw8KEsny6fBp10Z9phhwd+elOP3nCy1ArNM6EcDIt+ib7QwUzF9VOiknb39WM0LrmXIQXO1qVxbqMWDHZb5hy0= Received: from DS0PR11MB8205.namprd11.prod.outlook.com (2603:10b6:8:162::17) by DM3PPF7468F7991.namprd11.prod.outlook.com (2603:10b6:f:fc00::f2d) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9412.9; Fri, 12 Dec 2025 16:13:24 +0000 Received: from DS0PR11MB8205.namprd11.prod.outlook.com ([fe80::2de6:bc88:2af7:3583]) by DS0PR11MB8205.namprd11.prod.outlook.com ([fe80::2de6:bc88:2af7:3583%3]) with mapi id 15.20.9412.005; Fri, 12 Dec 2025 16:13:24 +0000 From: =?UTF-8?q?Damien=20Ri=C3=A9gel?= To: greybus-dev@lists.linaro.org Cc: linux-kernel@vger.kernel.org, Johan Hovold , Alex Elder , Greg Kroah-Hartman , Silicon Labs Kernel Team , =?UTF-8?q?Damien=20Ri=C3=A9gel?= Subject: [PATCH 04/14] greybus: cpc: pack cport ID in Greybus header Date: Fri, 12 Dec 2025 11:12:58 -0500 Message-ID: <20251212161308.25678-5-damien.riegel@silabs.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20251212161308.25678-1-damien.riegel@silabs.com> References: <20251212161308.25678-1-damien.riegel@silabs.com> Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: YQZPR01CA0176.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:c01:8b::25) 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_|DM3PPF7468F7991:EE_ X-MS-Office365-Filtering-Correlation-Id: db318f60-95ab-4e29-f5e4-08de3999605f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|52116014|376014|1800799024|366016|38350700014; X-Microsoft-Antispam-Message-Info: =?utf-8?B?czNMelU0eVJ5Y3U0N0tLa0g2WThwdW4yTy9DUjd0d0xLUFRhVTVPeXJPNmRN?= =?utf-8?B?MEdmYzNjNmxrZlB3d21pbDRIYXZxT0RxSy9BbXNBWjRmaXZVL2pmeG1Ca3VT?= =?utf-8?B?TDlnVjMyZHcxZndiL2J6dktYZm95OGlZS2RyWndsRTZxNjJBaytSdGNEb1hL?= =?utf-8?B?OVlSRkw1Tnp0TjdzWGt4ZmZ2TGFDNldMZ01zNzVIQk9TeTQwREVuclNKaVVs?= =?utf-8?B?aXRoUWlZNElQVm5MaStWMVR4aGpyMkNUOGRodktCT1pvWGUrSGNSVC9FMElX?= =?utf-8?B?OTM3OS9hZEVmNjdVUkQzVjNvODk5NnEraHgzMk5raUNtN1ZSaVBYa2E3QU4z?= =?utf-8?B?SG44cnArQmJzU0J4Wm0zcmM0NEozMTNHYUh6Z3BTZDFtQlJSZVN0OER2TjNy?= =?utf-8?B?TURRbWRMWXhpS2pFd2pReCtWZWZUQXFLNEJkdjNvMmFvd2tiMHJRRXJ0WStD?= =?utf-8?B?RFEwOWpyRHpTZVlhdjE0cjNTSDhLVUVZWUFRcjAvN1kwTjhlYnB5Q1lFb3pR?= =?utf-8?B?eG5VNmdYcEpJVHVHdHlySzN0T04yRjMvbU15TjdnTWtCNGh6OStET0tQMHRM?= =?utf-8?B?cjM1c0YrYmNTKzhNbFRZNXNIL0pHdDM2S1ZzN1lJaUM5am1WR1pPYWJpc2Rz?= =?utf-8?B?M0hLOEpENUx3cHVabytTZ2JqQkE5dlNVb1FZeVkrZURKYzF6Wk4zVWFCSXJj?= =?utf-8?B?cFJPbzErSmRYbWpCUjBuWWRuMGFoSnVoY1dBSSt5THpFdnkrT2pRYzU2T2lh?= =?utf-8?B?R05iN3pxd29yYjhzZ1F2ZDNYOHV6WjE1dnhuMEttMUszWlBveUdUZHNHSzRK?= =?utf-8?B?emhQRitZOVp0VDVKdW9NdkpKSzY3Z2ZUa3BuMnd0VkVHZzMwTTBwYzJrYUVG?= =?utf-8?B?QVBUWFlvTUpicVBpUHFMVlphZk94Mm5tTTFTUFZHNEJpaGUyT0VvS2swTjAy?= =?utf-8?B?dEFzRHJUQ2lkWU1FdTBuTGE5T0R1YW1nSm9xR00ycXlQRkJJVFh0citKUnY2?= =?utf-8?B?SFhmV2JtQmhOTkVHOHBCN2lZdE5xWE5maHBjOVdFdHlGZ1JjT1JqdmFuNHZE?= =?utf-8?B?cTgxaG1DcDZia3ZXSlFTTFNNeG1iNmNGb0pSM3RRQVY3N1VtTWlDL2NtblZh?= =?utf-8?B?eTVvcFZscW5MT1JlWHZwQlhkY01ZaHJseG5DSXpCVUZ0NzdOYStDaS9qb2NK?= =?utf-8?B?SENQUkxTZUFLNmZrQ3ZUdXR0cVFhUHZlQWRUcHM3cTVKVnptZzdJZGQ1KzQw?= =?utf-8?B?TzJKN2ZWNyt5Tm9zZ0krTzZtVS9uNEVQMUdpczNITTVla2w2R3ZoMTVRRFVo?= =?utf-8?B?RHc2Sk9nY2VoOUdNcHR6TENKK3Z6a0I0cEw3UVNsS0kzUnFzUmFseTBVZWtF?= =?utf-8?B?bWg4MzBKT0dha0Y0cDdSb0hUT0ljRU9TZ1N3dnEzNHZlSjdSTll2QWMzc3ll?= =?utf-8?B?UGs1d3dab29yVmIxNUJjVEpLMXhwbW53WTRWVGp5cUtlMUVVRnBZSXZONFU3?= =?utf-8?B?Um9NUGZRSHNsUVlwMXpEbjUwcnhQejZIbnFyN3VIZlkySWJlYks2Y1BRQ004?= =?utf-8?B?b3M2YUJScnpHdTduVUhKZEI4cUhQWlIxN3N1alMwR3VoSnFIR3oxMmQvbzlW?= =?utf-8?B?SlpsQVhJYXI0WmdzTWFPZGtLUGlyN3ZGUklDdWpJVENnN1F4RnV1T3o0TGpH?= =?utf-8?B?NHlscFU5cUlqb2hjWWZGY1lLcUlWRjgwdW1xYVY2dU5Ndmt1NG1BcGRPRVBG?= =?utf-8?B?WXlNWERiZVRhQmsxcUlZUG1FRWpxTlEvYkZZRDlrMlU1UnVWQUVqVG9UdTl4?= =?utf-8?B?aGV0UjZBdjBFMEJLZURVTnFBOFIwQ3RwS3NGRzZYaVlUTGl2a0FsZ09jMDFK?= =?utf-8?B?WFpvWGx2QlJwVzRBazQwMGptRlNSbVZud2FXMUJiMDM4S2R2Vkh1SDliamVG?= =?utf-8?B?T1FqSWpXVVhxU1BWcElmY2s5NmpmTmNuQ1ZoQUV1anpBWEZlNVhqeGQrV0RO?= =?utf-8?B?WWMxaVBVZVN2eTNEcWtrcFBGaUFaUHhtVGVLNHRUNXZLVW9aK1RISlQxaWZF?= =?utf-8?Q?EBTMqH?= 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)(52116014)(376014)(1800799024)(366016)(38350700014);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?cm9OY0xrVUZUNndEWXM3MGsvbWcweGU0U3FwQ1VVSkVqT1BXS2lQTi9NRkkw?= =?utf-8?B?TWJmbW1CR0NUNmdDc1BxamVsVUUvbUQrQWtLRXdGcUtKcXhTQWJYL2pIWE8r?= =?utf-8?B?VFFBNURhblRheWdMWnU3QndCKzhENkJKTXV2YUFyWVQ2cUdNOHNTMEM1TlJU?= =?utf-8?B?M1BlSFhBT0JYbzNBaEN1VzZxdFZDeER6QjQxcHRjRWluRjRqSmZsMHlTUHZy?= =?utf-8?B?VVErNVRVcHA0bWZmVWhUTk5YZnViVTZIY3ZNWEdnSFZKaEVkd0NnbGt4Mko5?= =?utf-8?B?NjFvamlMZHlqUWNhK1ROOXovRzFUcG44UkpmdzliZkxOKzBLM2JZMEhyOHYw?= =?utf-8?B?YjltOFR6SWhSNnhOWUVDb0UxVCtGNWNqZGlyeFkxN041bmQ0NTdUczRja2FT?= =?utf-8?B?cjFSSzFYWW5qNVp2UTdqaE5nRkFWTlpaRGFVVkh6c1Erbis0MytrVHZMck83?= =?utf-8?B?REp0WFJ2VGdpdUFiNlNseGpDWnMyS3NaeTRKNm9JNGhGbGlVNXJ2RjJJemg0?= =?utf-8?B?OXVWdjVEN21Td2UxNzVHdXVCTE1FUkpjZ2tZbnJpbDdPR3Vzdjc4bjA2MFBD?= =?utf-8?B?VmVzR2x3TUtiOTIwSDFXYUg3UUIrZkhBaC9vdmpKNUppQjQxWVhmb3Zhc1kw?= =?utf-8?B?aWlYSkYvTW5JTjVwYWRWeWhtUGRjWGRHU05IQkVmdERKTm5nKzkxWmJ5WVh5?= =?utf-8?B?dDNpdUNSSWFRc2F4N1F3ZTdwa29tU1BXVC9FUk9wMHd6WmRIREdLZ291Smtj?= =?utf-8?B?MTlWc2RXVHNBZk90RWF5Yml0RGFXdWtjM01rWmMrODVoeEp4SER6OTZwTTBY?= =?utf-8?B?ZjN1b3pXR2lyNjdZa0d1RnFVdmRHbmRwL3EyMlNycnJqMjRJNnB3U1NhclVo?= =?utf-8?B?czBkSFZuRUt0UmJuVTJ0S2FmenJCcjhCRXQyU0NjZHNqSmFHVEYwM1RYV1o2?= =?utf-8?B?dWtZWGhWSzhCRkx5WGdYTWgwKzhRSnZMa0twUEluWTlwL1JJVTdxV1FuN3J2?= =?utf-8?B?enFCTm53WC9xVG9pd1pxL0FZVGRnZTRTNnJZS1JvZ1lCK1BYbDR1aTJudE0z?= =?utf-8?B?aE5FQVJZdHBBc0l5SkJaaXpmNm5DOFhLa2NZRDFoZ0pmTnkzd3FYMkhtNjI2?= =?utf-8?B?QWxlUFlZd3ZBM2VKN1lqem0wREZTdFlMYS9ERmRpK0hZUGFacXNVYS9NWElN?= =?utf-8?B?L3JGZTAvZ3ArWmhML2t5VjZDdDlzNXZUWC9NQVBZazdsRk9zakI0STQ1S0hT?= =?utf-8?B?R3JNM1U1a1cxMjFHUUFVS01FYUlGQ3dMSFZuOEtNMjNGUi9UbmhnaW9YZWxY?= =?utf-8?B?OFJaUHk3bldBejF6NEpKeHJiOVl5WmZ0ZDNPekQxUW5xY21nZkVudENNZ3Ru?= =?utf-8?B?b3BPaGw1eDBEREVZTXlEVlowdkxxTmorTk1laldMZDhCQlJmVXVoVlcvQzdC?= =?utf-8?B?TGJneUVWUGpXbGVmV3VnTGlxbUFZelhuNmlUVUZPK0h4aVpwOUlHdWFTbWVs?= =?utf-8?B?b2dscVRJbzRJNE8wdStIV3g5NXF5dm5wUkM3TEJaaEZkaHFYNExHTVowd1FR?= =?utf-8?B?bGFoT1V2MHdWQTl2Z0F5Y2hkTkZRQUZOT0dQcFhydis3Uzk4SmRHUjRldS9B?= =?utf-8?B?ejRtYlpTUkRwWlE4bVJFQ2E1VWJBRFQ3cGwxYkUranJlZDFKbG9SWkZOTHpK?= =?utf-8?B?S09xMk1abEQreHRoQy9tT3hHQ1JBRlF1UTZIR2Qvd0ZVVjM5RFRRRllBQ0hL?= =?utf-8?B?RXMvS2J5dnZNdVprQWI2T0dqOGFvcDYrZmswRnJSL0lsbHRWSTFZQTN2S0dI?= =?utf-8?B?NVgwemVoM0hYMFVTdDluWTVmOGZ1WXZRYzFxNzJML1FMQ0tHbHh3UlZZY2hs?= =?utf-8?B?Ulk4NzFmS2lJTVM0S2xzbUw1TytxMkl5TFh6TjV0dTRHRURoZWxXQVVPOEdC?= =?utf-8?B?cWJpV3VxcVg3YUVSQnhYRExEQk9LdUVteDBuTVcyZWRyUmdzMlRNNEtBcndV?= =?utf-8?B?dVBSNnFpUlkzSW1yWmJoREhIRjhiZDZnUU1lZlA1RDZ5SlcyVmRqNmhVcDdH?= =?utf-8?B?djNlVWlDYWdwRGpKendSU1dRRW1WNUIvV1NrVmpJRm14L0VHa2Y2T0VMS2VK?= =?utf-8?Q?4hNLpu1YUAO4OB3jW6aFW1fqI?= X-OriginatorOrg: silabs.com X-MS-Exchange-CrossTenant-Network-Message-Id: db318f60-95ab-4e29-f5e4-08de3999605f X-MS-Exchange-CrossTenant-AuthSource: DS0PR11MB8205.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Dec 2025 16:13:24.4673 (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: tFCLXtD2K2AwknYh6WhnZY1Hk52s6C1XQVJ+t/Z8kf2Do8PIWoyLXF3d2iNFgJA0aK8rYTXyqfSfEh5tCn3kBQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM3PPF7468F7991 X-Proofpoint-ORIG-GUID: qPTgd9BH3p4p6pMSLR4X2tu9JxAfNPvz X-Authority-Analysis: v=2.4 cv=brxBxUai c=1 sm=1 tr=0 ts=693c3f26 cx=c_pps a=Us7513DS1gT4knu3Fiol7g==:117 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=z/mQ4Ysz8XfWz/Q5cLBRGdckG28=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=xqWC_Br6kY4A:10 a=IkcTkHD0fZMA:10 a=wP3pNCr1ah4A:10 a=M51BFTxLslgA:10 a=i1IsUcr2s-wA:10 a=VkNPw1HP01LnGYTKEx00:22 a=2AEO0YjSAAAA:8 a=bWPpxp-jgQ3ylSns5SMA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjEyMDEyOCBTYWx0ZWRfXwNXBN+OMJsX4 F3CjxQ0PLBUX++tP9+wiuYblNgW/sxRb0NEa2mfyTRH0bGKebQ3Pz7Vb2iSqBPeWBtlx0RgvzdQ L55wrwYtmq3/ZXDfSzRuJ8NE0qKH4irwPo1L3Ch2OK1XIbmVMAWyRMdQCkkVU5yjVuJh0Dfbjr0 bvZLWI7Lg3v+QLkCFyFSiaH7oDQXFamv1WYD38Qk9HkMS4L5YiGIW1kcxUx7d316jExSnoQhLV9 I97W5tdWzZaagO+9T3b3bK0E95vCQNqgTEaajtdyEzimHFzD0NPrqWpTni30e6ujdwwFBW8jooL YGX3c7OKWYslxJ1nRsaawLogSzk1/8fVDJA+PlTLj14Ml++zSIaA8o2SompiAm0937L+XmoHcxn tZTN4rc3CJK9wZVA8tewM4ZGX6nY/w== X-Proofpoint-GUID: qPTgd9BH3p4p6pMSLR4X2tu9JxAfNPvz 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-12_04,2025-12-11_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 lowpriorityscore=0 priorityscore=1501 malwarescore=0 adultscore=0 phishscore=0 spamscore=0 bulkscore=0 clxscore=1015 impostorscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2510240001 definitions=main-2512120128 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 d9f8f60913a..62597957814 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 ee090dd3097..b096b639182 100644 --- a/drivers/greybus/cpc/host.c +++ b/drivers/greybus/cpc/host.c @@ -203,8 +203,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 191b5e394a6..2e568bac44e 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