From nobody Mon Dec 1 21:30:04 2025 Received: from CH1PR05CU001.outbound.protection.outlook.com (mail-northcentralusazon11010024.outbound.protection.outlook.com [52.101.193.24]) (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 8F22C23E330 for ; Mon, 1 Dec 2025 06:44:35 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.193.24 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764571477; cv=fail; b=Yp4MNFybIeYa0fGOpDSBgUaFW/jGJXiemjhe/Uxjp72aoobW0RW6w3ZgWf9XHRqwC8XZgkP5+ADxlkc5yiTFXumrauu3AVavMyG20NKFuSR3nKUVZQGkHMUVsZjKf2B2Bh1uF0kwH4W6WqfFCDUYRKPkTo41zn0USHodFB0A708= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764571477; c=relaxed/simple; bh=GCMH2hMNz92ioHOMoJ/gjUab6W+PKwaEycbVCwURfG8=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=I5bCDPbQvse8ZGMOsqtxn+vLvhTmDccEFVGNnSex2LWdLiui6IiyYFNkFABGy5JF5bpMDbV9+QWwYkcyd1aForyHS62w/efKnSIsjOIhSTM8lCAG4ETRxQTL1cfbucnpvvZXXcb5K9Vc1f7IbB17as96xP6x4lJ7NcKCbRl7Kjc= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=altera.com; spf=pass smtp.mailfrom=altera.com; dkim=pass (2048-bit key) header.d=altera.com header.i=@altera.com header.b=oS/ViGYO; arc=fail smtp.client-ip=52.101.193.24 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=altera.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=altera.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=altera.com header.i=@altera.com header.b="oS/ViGYO" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=D4eDOGR8fUtgY6QP4LU2bTdF+OYMxm3kibkPU2SydQ6GPuBpDHa8j8+OLd2AEIOKCKfzDbcHFT1ALTEzhBYLPc3gkC6j8I5fCx30ovvmx3UOYbw3oUqMP3I9PBPVApLulD3aGDQHPrb/20az5Dd4LD/LzewOvJuQs5OCEBBkxnGTFYNjAyhWLHiGntNqKG/vrGmcUt+6pN6ZPYEDmza71IoDsr4RQiTHzRVfLJOut2n6xUJrzOKW4J//a8/vwh0R5tudgoIm1PJyM2v5Weul7+/SL6k468JPOBrVWjLoUdoNWSubLEtcJPhk9bOCaIoTAHj132UxUbccz4/rkkKo6A== 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=xaEm0zOzBn21jy0g8I48vBFSxKXMaKvwGSbcmsiaP+4=; b=C0Sv8m/YxrSgDDryTJXCIy8AU4dwrTMIznGAMTwFIu8ElEe5ILUl3WCSCiPZMUy5wDjjJ2sf0YIni3/mKlHTfFihyVPOq/7ckSSNIB+wH1v9kAdXVLJdkUgMNKzd5kgcyxclnNajkYYpnW8lClOg8pKV/cd31kDsnBGdygL+hXhPDu9N/IOwJXV9KwWTmqNABqDPBd+CJsBUxEI6u6vGtofD6hAAreFxTJYbc1NUYyzUU5m9xKJzjiGY7gxTCJTdIIYEuA5mQkSpVjyQHsnjOJz2KmcI3BOAXNcSFbUqXrYVp13bJd2W4N8kIDmC+LNl9UpRPuR9r8VsELxYypt8bw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=altera.com; dmarc=pass action=none header.from=altera.com; dkim=pass header.d=altera.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=altera.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=xaEm0zOzBn21jy0g8I48vBFSxKXMaKvwGSbcmsiaP+4=; b=oS/ViGYOUyOdE9nTPwM4Q3G/i1MZzBRmrraIZfH1MAs+T7PO1t+SZI/vCdiX6QUJ5+kU7T7sIvuQldPJxroJpjOf+uiJsEHSujqkz1MoAjlDnUSxksdzqRdofDJYb8GUH9zEn4SE9+PpQ/kCSki/X7J1zvNHpnDXBN3ZLSV7+rey9pfkYTO+Wf3eSrksKpTMrHzLAlRI5AGjMDfbKk1t9QItjcfmTDubmndiS9okeYtgNMnqOteaxY16QiUXguJLZbAt0xPgeSfLkMHMqYwEk7sovSd8wdSLqHURiPZZ/ed2xpdOPS+bh/4UwskQNnc41qfAYl8rdIyLKAr/NiSDJw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=altera.com; Received: from DM8PR03MB6230.namprd03.prod.outlook.com (2603:10b6:8:3c::13) by PH0PR03MB5847.namprd03.prod.outlook.com (2603:10b6:510:35::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9366.17; Mon, 1 Dec 2025 06:44:32 +0000 Received: from DM8PR03MB6230.namprd03.prod.outlook.com ([fe80::abad:9d80:7a13:9542]) by DM8PR03MB6230.namprd03.prod.outlook.com ([fe80::abad:9d80:7a13:9542%3]) with mapi id 15.20.9366.012; Mon, 1 Dec 2025 06:44:32 +0000 From: adrianhoyin.ng@altera.com To: alexandre.belloni@bootlin.com, Frank.Li@nxp.com, linux-i3c@lists.infradead.org, linux-kernel@vger.kernel.org Cc: adrianhoyin.ng@altera.com Subject: [PATCH v4 1/5] i3c: add sysfs entry for Device NACK Retry count Date: Mon, 1 Dec 2025 14:41:54 +0800 Message-ID: <35bb0a3cae4664dc423ef57a1ef3ebcb378bce00.1764571045.git.adrianhoyin.ng@altera.com> X-Mailer: git-send-email 2.49.GIT In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SJ0PR13CA0035.namprd13.prod.outlook.com (2603:10b6:a03:2c2::10) To DM8PR03MB6230.namprd03.prod.outlook.com (2603:10b6:8:3c::13) 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: DM8PR03MB6230:EE_|PH0PR03MB5847:EE_ X-MS-Office365-Filtering-Correlation-Id: d7b7abb7-0c8f-47a5-6a8b-08de30a51568 X-MS-Exchange-AtpMessageProperties: SA X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|366016; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?zEoh+1lHmWApJpVw9y3asQG+YgMQOpoDC7mqAX5iDSdBMDC7ayyXTkLzxta/?= =?us-ascii?Q?NZnJcBfzXhDgPZ5AUkwvjBfFhty7U1WcObS3/7qiSPaFe/vYztjs1R9d4tG4?= =?us-ascii?Q?4IIeb6Hv0ARUOz8QMsPvSEpWj5PCVWpmTqNC2oew4mDFH6JCHJ90DTZn/oOe?= =?us-ascii?Q?1ycydgRpfasQRTWe3Xk0J+Lmj/aVOUPLximCq0w7Vxlaiqf+8qYmMAcOMaBM?= =?us-ascii?Q?BlOiefDqYdVpyk1vaz/qE+o8XKkDD/Ibf6mXyqpbItqCCCEWChRw8DUChXyt?= =?us-ascii?Q?uBntr28O9kWdDpsw01lKcH6kq1dhqBhWOS5i86/wy2SVToXyF9sPfw0wO3Fh?= =?us-ascii?Q?NvYcmhXD0DvL6tdRbxY4HOl7fpamsyvkNFVDhTYdMmWuE24a6wJ2Oomen7cX?= =?us-ascii?Q?snw8qtSZeLzr0b0F8OuIK0QJxRh7GBoI2M9Vfvzz26y4MAh7sAoQ+TRRI26P?= =?us-ascii?Q?EaEe3cjhAx/EUdGj+b6pNVO26v9p/Hw8v+sZ7u38flHajEOhEZU9nVbLfuIo?= =?us-ascii?Q?4JbTWzQGwOZjcXfdWBLQZ1/ORxiGvQz6mr+3QzhoOOn9Z1lnd9tB1rnn8TyX?= =?us-ascii?Q?zdmVcqr3mJrScjGl9etuA09kg/SRZJpXG2T3xvTTwtKEb//GgLgxT6Es0DTy?= =?us-ascii?Q?cZIGzqFJlVEcj8m/t7t0Oh5pXYIRN71bEebj1mdDkKeh95PRCR1a35bzZgN1?= =?us-ascii?Q?ieOiww6FePc8rqnwXbZvQyL44SHr3+GPJDDDhMKVe4xBieR7L/SynHkPhd3g?= =?us-ascii?Q?6x51RclY1mwh9DrbG60mIUHhB3uluvYizLijgD0wQk3R3X/K+uJvVsLbKzVa?= =?us-ascii?Q?cx1GEbXU7kcnZ+QxDHrFgwot9gkEnT45kMrc4syXk+y+0xztneDBXu6OmUdJ?= =?us-ascii?Q?S1BAtJyLT2Zqaf+g9n/UMtPC+pbsGYd7CEr21h3y/uIVDoLiCn8LN6TQ+LVv?= =?us-ascii?Q?l4uSoc2Wy7ZmLeqXwhkmCOwg0TkCw/ZmWMwJEaua7OPoZxX2GT7e9V1duf3j?= =?us-ascii?Q?zFAFjVAxieRcSFldgo0ut+DGxgJ8ZskwJx670/cGZwIPW35BqPkhAHUH50zE?= =?us-ascii?Q?3oGfD5vpZlLIF638RilUAZnMzw1mJpIhphWujS0Pxv2eacVJ3BG62eRUCon3?= =?us-ascii?Q?Y7RJrqkJp8WaZEO07dvp8Jb6MZ6/k1AKxqH9HraerZSWix7THszxpNI8bZeB?= =?us-ascii?Q?9Gt6Ednt+k2OrSdxgDIKPpN3t41dP4LTDnHeTFgT30RYW/4ltLKL8qKQb0E2?= =?us-ascii?Q?Ec2IMuLjcN0WVzsh2rB01PLzaDJQJTb6dupXuTDnt5bIZZxfUYDcdeTadlyL?= =?us-ascii?Q?xD+cSUYO+VuFuyQ23x0ogXg/shYBb0ImzQ5nhfPut31w1Y1WYEX71k131ftf?= =?us-ascii?Q?7GkZMtrjsEhoV76kZjEh3ok5bCEnDQPFJzrUBCEA7dR/9BKwT7cHA6iXPLAr?= =?us-ascii?Q?eA/2fLLuCkZDSU/j4WkuzWO4xkCwk5hk?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM8PR03MB6230.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(376014)(366016);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?+07mOx57zrUb0v4zRw+GVez4+44d02Qa8DJmzvyZZ3QfgdPUcY5VkIvNi7Ri?= =?us-ascii?Q?xzr/zeAL79tRArgUqYB6YPx01p2Af+IYLFdLkWXnJCUcHLX+w7hhcjaMvc9Y?= =?us-ascii?Q?Cfm8toRTX+QMdZp/D8JcBt+r/q6VbEhJfHgMhlr1F9o2QakLUUDXTyeDbYe+?= =?us-ascii?Q?mVnOnNPcDO2mT7MCbkD+uUH35oP9lTzX/56TWn1nPo/EYhGGHUHi92htrq4S?= =?us-ascii?Q?HIh3VHjrXQw9l0wCt/l7WII8gs/+AWelKR7Wj5ywamEZxmkYIdC+U+qSE4DA?= =?us-ascii?Q?mgbyaif6J4RyT3bVqeWvHEsGhh00XIClXS7CkbG3uOGiUUk795smi/2BGzJw?= =?us-ascii?Q?2kjLMMlp405+tpFReFCM0/i09ckcC9mgiF+4Oc9AUjzK9pEcKRB+gws19DN0?= =?us-ascii?Q?4wh+DC2EZ3ueN7Rj7GknpBbOUNhjOzAQSK/TrkCwUOktAAQ2DGG8oAnI0EJF?= =?us-ascii?Q?koj0wo92GlrFUAuSAwXz+gugJIejrZKSvgkx6kk+PNtB5OHMpf1DFnQ0iBFU?= =?us-ascii?Q?7fjDMKM9X7L2WhdWgljdfSx5kYJ0hXtau11aDyv6A4ifBJ4SI5SGeMe0ta02?= =?us-ascii?Q?JMuED80F0JCvR1ZaAQ22Xd+RY8ekW7CIpyH4x6rvB5mxpIYAuUprVeL4cM5/?= =?us-ascii?Q?lJUxkBpi5zTeINSpuoRfyPpVMuPl8cVdKXKPh3rnQ6BoCodUjN491HWtmul6?= =?us-ascii?Q?m+vyNsH8+1RWS2NzvIwQ2OratoFjOn0deXoKOne1gXvLUdv/XJPlsPRqoTAo?= =?us-ascii?Q?zVjSOgfWMY4OqYo71sj5zvDU7EWjDcrvgRHXQ/XuyF/gaBi7uTJJReABGhyz?= =?us-ascii?Q?4Wuy9tYh+GiEh9YIhC3R5JRDge8eelGDNgzTuBetRd8p2q9qGQZFZKnuTcD8?= =?us-ascii?Q?THsOMCVoUz0qCGUkV9hihq5ZmMABq6aBGS52R5MJm71danlgqZW+H/DFH31P?= =?us-ascii?Q?0XjUK+Xt6z7ZuvS0bf+Wf2qJnsskSa9l02b1bgXcVMO9lSJvlDEQhe8G6dkA?= =?us-ascii?Q?g2LzG7PNMXsMiTBGOzoLSlYupyp5EUAVb/+jRyNdWI1Y7YvYMKO6gAUQjtUO?= =?us-ascii?Q?ZlTgEZB6l2uEhAyBNJsmVCDkEtolADDZi0NbJac2D8I3EeFbMf0jpJ4qyo8r?= =?us-ascii?Q?Oe4r9OSvTh54CG2cTXDKHk1kj2B0D7QjSCzaHSSFoXwoK3iWAXqN504lG131?= =?us-ascii?Q?zpiLU3ccrzxKxpa9ZBBhYw0ppCkU/aHpLcjPYg8w3xBd4oFbQt/Jkq2dGTaq?= =?us-ascii?Q?50NHUIBGtYOwxdSS4VeGOw0NMsjO26t8PvVj3p82ZWHIQwlFKkpussoczjt5?= =?us-ascii?Q?biZG38XBzXxYWpejV4IkL1latD8vD6oKdfzG4jSw/vGdxQ/h1G0L9GBzWX1L?= =?us-ascii?Q?YWgbqgYedD2HSGLfM2eM/OVI/2OJNfGx3bwCxByc/BcPosY6r/32wwvgfrKn?= =?us-ascii?Q?6V388cq4x6c9LalVG+TtEkGEEOQlL0XDXuXrlDGlAB9OaXtAdnJTHwADllyg?= =?us-ascii?Q?QTQ8M8hn2Bgg2taF4BNIOXPkK8+Zvo0vvQ6k6+1Mk4IOnSk3/uGnmrUS848A?= =?us-ascii?Q?GwBss+RpDGgnkdSlvzzFaHUcMlzMVIDvtvBzrxzWonqYNFaRwGwp+w2o3XDO?= =?us-ascii?Q?vA=3D=3D?= X-OriginatorOrg: altera.com X-MS-Exchange-CrossTenant-Network-Message-Id: d7b7abb7-0c8f-47a5-6a8b-08de30a51568 X-MS-Exchange-CrossTenant-AuthSource: DM8PR03MB6230.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Dec 2025 06:44:32.2974 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: fbd72e03-d4a5-4110-adce-614d51f2077a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: +WEFkig0cmhtt9VJkPkMrKAadwkOXGOjNYZKFvoH2x7q0e4P1zhEobN4liJTDC5Rsd0deNOSSSpmrs3lUuzrL46bxIV4T4BmD/OEXeWKucc= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB5847 Content-Type: text/plain; charset="utf-8" From: Adrian Ng Ho Yin Document sysfs attribute dev_nack_retry_cnt that controls the number of automatic retries performed by the I3C controller when a target device returns a NACK Signed-off-by: Adrian Ng Ho Yin Reviewed-by: Frank Li --- Documentation/ABI/testing/sysfs-bus-i3c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Documentation/ABI/testing/sysfs-bus-i3c b/Documentation/ABI/te= sting/sysfs-bus-i3c index c812ab180ff4..0b8a0c223f4a 100644 --- a/Documentation/ABI/testing/sysfs-bus-i3c +++ b/Documentation/ABI/testing/sysfs-bus-i3c @@ -161,3 +161,15 @@ Contact: linux-i3c@vger.kernel.org Description: These directories are just symbolic links to /sys/bus/i3c/devices/i3c-/-. + +What: /sys/bus/i3c/devices/i3c-/-/dev_nack_re= try_count +KernelVersion: 6.18 +Contact: linux-i3c@vger.kernel.org +Description: + Expose the dev_nak_retry_count which controls the number of + automatic retries that will be performed by the controller when + the target device returns a NACK response. A value of 0 disables + the automatic retries. A max value of 3 can be configured. Exist + only when I3C constroller supports this retry on nack feature. + + Valid values: 0-3 --=20 2.49.GIT From nobody Mon Dec 1 21:30:04 2025 Received: from CH1PR05CU001.outbound.protection.outlook.com (mail-northcentralusazon11010024.outbound.protection.outlook.com [52.101.193.24]) (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 6F87327E7EB for ; Mon, 1 Dec 2025 06:44:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.193.24 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764571479; cv=fail; b=HSxAmq3+yKFVYXYgCdBv73Q0MwFfDfhU/ez2UhTlyaIAVouXDwsW1Twrf9sug9PM56VDVr6xxMXVXg6bXe1WTyj1w1WPJ5RQjcu/9hWuOw6Afv/Hi0aOBfhE8sWUX8u6NoFZ9jca4GUFRyGSugeUj5BV0zIXY3EOPsphQC7/Osg= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764571479; c=relaxed/simple; bh=w3Bc8cAtJ9qrLeiroWBkHOJLjZuKspWAK4OM1mvz2yc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=YzehDPAhYkGPEwiA/gX/PTDAiBJf4h7WNj18VRxjE7iYAsur4w9TnqUkC3CzTUVnMg9m/E36GgYcCmRVJbkCkKiHrg38NuQfOWbYwDDdGtyikYQD7OlY1jRR643M+XdGA/3csV8eBrfr2mX+56Oywf58+7HRh+AhGrnKnub1qbI= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=altera.com; spf=pass smtp.mailfrom=altera.com; dkim=pass (2048-bit key) header.d=altera.com header.i=@altera.com header.b=O/88dGV3; arc=fail smtp.client-ip=52.101.193.24 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=altera.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=altera.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=altera.com header.i=@altera.com header.b="O/88dGV3" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=DyOlrl2avV+q1B0lNa9HNlRRnY0/j0S55ywcXBZnnzlgqHrODtPdm2R5/03MXlQeoVVbn5nSjtmkQpZxDay0YKE6uWoK73Z2TmAN9bCAnZhDUFqfwmOv8CitFe0Ktehv4iCSmh64zon+Bo1IccRmPq03TW7qDCI2CYwewZxBKuXLLtX2lNl5Qb+sVohxt4V2OQI6zu7b98rYSllmqbt5r2x3XpoW/2O3HmIUmJvo2w7Ekwiy+ZNZE1o0WDxK5jGdhiIdicwLwZ6eQ9ozuYhyjzu01Y1JN88nTuSSlm6sUVJdzqXHnt4Y/DOxsvs2eGVMH+ErXDF9UWJu6otN1cUd8Q== 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=3vUbZlWGfHDFWkbbEmXNn616B5NaiEuSC9imT6CS/eY=; b=qRMh9QzfSEodPO+EOAMQlxylh5PaTVcJbLbmDUd2HduwzWDJArFKPG2hkbJFpGTDomSqpi+asXpx5Vtn0M73mmuKUAZPb4cGwnQ6KdP/PvW69EpxGikVB9wsTbLjmjaWLGQDUGsitjGbE2bVOyWwfsYYO97rDKQz3r3+Gq+Zt9ljc3suFiC9I1TdIp8QQ+AXtaUE6b/iU/iEinzYKdMTPmLbfH9X1YmTh1e99pNpi3cXL6c9+m9Eh5wHDv+uA6iPH0reRXiIGa7bMeWsWmQPx6RR/3SZCdHsiuRk2p5Pnctlx0fusmC778NB/uIsc7Nhge3a9Fh3Ne18XK6x/h3K/g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=altera.com; dmarc=pass action=none header.from=altera.com; dkim=pass header.d=altera.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=altera.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=3vUbZlWGfHDFWkbbEmXNn616B5NaiEuSC9imT6CS/eY=; b=O/88dGV3B/H+n0QAqpqgoEOFh0vRbDYg+pFiGcPcPD/z8GAE8YQZ8X8OSJf65a6SayDgnv4RNOosFOEGg4ty0VtLEEVxoXognI5rbIU7SN0hlrpGvDaJXFB/2SL5NTcP9qSEujmfPaZjVVRb5n/Q4zEmsdw0kgKmg7rq29FsxNuDCrZqjImJl3YMvKIfKVCNwQPRcO9QIsN9HxCu6NptfrO02IjFrMbGQJ0WsG3VoF5N6LnsHEDTigM3UXZQZZ3Pfpw+eRupIc4UiZM8avJ86zh4q1/gN/UHDlBKCrxAtmrMoeQUcIrHdAYSA6Xrq8fJAij0QafCOKFqBQVuZzalKA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=altera.com; Received: from DM8PR03MB6230.namprd03.prod.outlook.com (2603:10b6:8:3c::13) by PH0PR03MB5847.namprd03.prod.outlook.com (2603:10b6:510:35::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9366.17; Mon, 1 Dec 2025 06:44:34 +0000 Received: from DM8PR03MB6230.namprd03.prod.outlook.com ([fe80::abad:9d80:7a13:9542]) by DM8PR03MB6230.namprd03.prod.outlook.com ([fe80::abad:9d80:7a13:9542%3]) with mapi id 15.20.9366.012; Mon, 1 Dec 2025 06:44:34 +0000 From: adrianhoyin.ng@altera.com To: alexandre.belloni@bootlin.com, Frank.Li@nxp.com, linux-i3c@lists.infradead.org, linux-kernel@vger.kernel.org Cc: adrianhoyin.ng@altera.com Subject: [PATCH v4 2/5] i3c: make bus maintainenance lock helpers public Date: Mon, 1 Dec 2025 14:41:55 +0800 Message-ID: <64d97386e65f48b77b9f981589c421fd52dc4973.1764571045.git.adrianhoyin.ng@altera.com> X-Mailer: git-send-email 2.49.GIT In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SJ0PR13CA0035.namprd13.prod.outlook.com (2603:10b6:a03:2c2::10) To DM8PR03MB6230.namprd03.prod.outlook.com (2603:10b6:8:3c::13) 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: DM8PR03MB6230:EE_|PH0PR03MB5847:EE_ X-MS-Office365-Filtering-Correlation-Id: b01a4b17-c844-4f44-04a9-08de30a516b0 X-MS-Exchange-AtpMessageProperties: SA X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|366016; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?17AMpymRjXv8uH9Zad6e8nKLUmNlBP7TGctobUQRHBIIGtSfXIn4KJNbEpzi?= =?us-ascii?Q?7TS0nI19WW8mSjWdH5vPtAJiAjoVPHLB7FmT2uUCl/s0yZXKkj6FfwQOFjPT?= =?us-ascii?Q?/0r7yJSzDxCx7SMrKOPEpnkXJnFSj85Xa/fwOaOdpQJ74klAwlqHgn7SbHYH?= =?us-ascii?Q?tiMWdfEQ2t/f9CqjUWqJ6GBWx05u9UJfuMGaRow5dP2odn2CmMDE47o1M6Mk?= =?us-ascii?Q?6MGiTtbk1uq9VLLLDBoSuhy5Bl3fOK/sUL7a4vG+0Id4pwD7EsKIYLs/SBIv?= =?us-ascii?Q?QUqMHj0juOeI8H8O9GIbV9RkbII7Kw/QJdkuizMIDN+XU7O1SwKcF8wq/lrJ?= =?us-ascii?Q?kITN64qgvgSpSlzp7a9Y0X7LO6PsQ6deuMrEn0jyEqUOQm8vGIhi72+50LQC?= =?us-ascii?Q?gLZQhIMSrwTmhLGR2hoPI70VqgmpgNthG5abykq9Nh/I6ynh7LlkUdNSHpJw?= =?us-ascii?Q?CQvSoZtJAv0GTGWnlEzIOPqdGJwNbvj1RCfzwalv6UoBYsnMhciVQr7XucGA?= =?us-ascii?Q?l155MhIAd2szlUd0EkrrBeoEBMjO4Gc2FgWzceISjKeLZmper7rjU/lvQBZa?= =?us-ascii?Q?tLBE4d4CtLC4jT9dU3pmPwPVQS8oMLbkSiPt4N3t4tmuApmU5h9yP0eAQ4GE?= =?us-ascii?Q?Ay8/j6hzqQxKYtL2OlvsntpsVo/aQjqhBOvHIIfnp/7WL/fAxzz+9Yy0Ivji?= =?us-ascii?Q?IoDsERtrkhylvbIhIpIJNlagyqccpY3fpnbyO+38TpjcvCaVGkuF1ers47Tx?= =?us-ascii?Q?kwtikZeRM9anBM3bd7a3NdCeETPrlu6G058y1V7+94S2d4wm/Nzv8rsrALIS?= =?us-ascii?Q?sa4CFK3hDQVoNfFWt5yFEaNcQ+J8h7zzwSR5qYg+6vUahY3OEmX90A8EIama?= =?us-ascii?Q?uaPj+V/qLLdEDfM13BfkI+Vmaeet37cdV1/Kk7DW+kUY0bOfABE/efae5sD3?= =?us-ascii?Q?eUM/7r8Epi22dvhUbgF4vqwVbl3lyeQfv10wxaPAZa5iQ5hK2OFRIfsR7jAS?= =?us-ascii?Q?PDlL85ltFOhVFnjzjtdJb4v5xMR2o0oIRDNDVmn/LeeYqa3+Z8EdzoaQbmeh?= =?us-ascii?Q?tvQ45Y4E3xTMKzaPApnrESndv4awMF2ol4o6rfnCLYrZbq0mSUXZV7/tDk6u?= =?us-ascii?Q?E8e/9qlpEUE47D5UedUqkvRDWJt2cqDWdo6TuflSVWrgdlZ0gKghz4yaC45X?= =?us-ascii?Q?OxaKVF0dscNxNN7NSpOh7SSVJeT8VuXOux6agZDC5N6RjBPJuDTYzdVvhjMc?= =?us-ascii?Q?csAPxWz7wYfLGNPP1NRRr3XsQ9K6CWwaR7vhVrr7gCxQYsQeizKe2C+UeRM9?= =?us-ascii?Q?Eq5MaVW4U1vJIXLfgGSUdacDskx2dg6fdP4Z9S8TFqwhDdRHDjrPKlB21YDi?= =?us-ascii?Q?37/Bk/WN6txptL+jKNGifvlZEiOj9GJc2xy6RFCObXQ2F65oUboSl9N5TR4N?= =?us-ascii?Q?fc3+JhzuMi40GeeH4EK/3O4uZY3MgEH3?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM8PR03MB6230.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(376014)(366016);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?L6wDI/7+LlYuSax3RlprTKj9q34Dgh3Mz55ADKw2Z8gINzHHXCAcJvE05fWh?= =?us-ascii?Q?Z2sbV5p6DxRTbQ+B9/YAd0xwyTYa2TOMdERKZxNemVUKuFEbb0vCrkMuAEkf?= =?us-ascii?Q?ZTZiXZ0WwlsPFq0XsDevMWgHPV8BP/Tqe0LIcs19JX0MJYuOoHTCUQ9xm2lb?= =?us-ascii?Q?mBxWC71tb/ZduTtPe7yvzqW2fHsqSUHtTflnUsPRPS6u7boPZGJ68syba02P?= =?us-ascii?Q?9+0P3aSqfwJzyu0CfD4qeedSkKfm/61GIl3tK+/16mtyK83BufDK0DvqlJGv?= =?us-ascii?Q?WvGGdH2oig4Csk9R2RMtsIefuISMMeDcPp9SoEm1vziq0L29iPFiZdmz0WVy?= =?us-ascii?Q?HKsZV093C3sOKndZhmvaSdSTEOI+cpIw43EifaGFdxqE9F0S93AUGBbEp4ut?= =?us-ascii?Q?x8eK4lI0fckpsmhpTfjgDRVYxuJ3LQFdsUsfr2tSAMm/s25cQIhj+wBtB/cQ?= =?us-ascii?Q?xDu/REtSpKwUDSgwEXmcW81xEkLFb1tzOrXqfWx7SSxUV/G3JyPhEdDe7CVu?= =?us-ascii?Q?AkGA3Lu2Yq3JCAuRkp+Q8pMtJJK4BxeQlJ8BrlR+ZN72l8JQjkUDRDimRsh9?= =?us-ascii?Q?FWi8y3Np+LtQ2DLpEJSVwO+ROPrzFlIeP66cLR93uwxWDcVOaaAZJeip95Cz?= =?us-ascii?Q?m8MTtEgEyHzrHiAgAzxjBRfkdB2b8kuHQiKGT3sHne3kA8k/Rc5fnRUc1yYk?= =?us-ascii?Q?973hSz1mbby4DoiHY5nlWHPcK2QLNTWQ4E4MBygOYX8Ano12MIxk2XGnbTwN?= =?us-ascii?Q?e0Uth5UJTdUSinQqGOyXeU2Ka8ymtSvnVT4kdxQ1eXdadYsqSZMxGXzcrL8W?= =?us-ascii?Q?OLWcLZDokOWmNokbKhlBiVAKXofFlmrIXBAWAbmBsn9ipfjDAo8kqAf+90z1?= =?us-ascii?Q?MPXDrV3GNnt2fUPhFVB4jIXVykqlrxWIp8QbyXX14b89wOzTRiqu3N8bv0ju?= =?us-ascii?Q?HXs59aof/hnMeMNzIBxubFik+NnHWifw6p4XK4DsQ6OA86j/+8gk1CIQeo3X?= =?us-ascii?Q?TWRH/FPMik+fI1s2aQ+0+A14M7zSZbRwCXGuyC4t8zztk7SAr7kyyQ6HnRZL?= =?us-ascii?Q?Y4yoEpLHKkJhawknjhahfJ7iFUpx2JDsVROs/tXXzGyPdHeJufQvOl8rmaoh?= =?us-ascii?Q?mEBbADrR38q2u4WEpAlAo4KhOCWOlc+obUFqb58uerBl9Gg+2djb9Mek2P80?= =?us-ascii?Q?dXVzixQkp2C7vbfYfWyDEOx64gqPDgsLrxhwnjLiXT7nFRIR1rtQgczKN4hl?= =?us-ascii?Q?UP196msPtRYzNWFPGw+wAe6QP1n0OWjexJwQo6EjOYySLOxDBCzW23Jqp820?= =?us-ascii?Q?1CibbNBKIotBZMEkRZpBt53je6FwyNy/DHnys4Knr/OuyEZDJY/5NpBQC856?= =?us-ascii?Q?jmorlQuoSpCPD64ZaWz0FBg7OzGKxBpyNPv/lh/Z0Po+sJ0ntlUHXri3+hhm?= =?us-ascii?Q?Jvv8hifOSZPGRlUZ+PyungWm/SYl9xvKUryjReYF7fVdwi2XToDbcRbNEWh+?= =?us-ascii?Q?HQh74hLj4aD3JtqGhH6dP5eAXBpu0Ww30BoO88qSXQNc4Kk1xx0JzN7OeP3Q?= =?us-ascii?Q?RK8vmRoAKBW+Ym6Hb0+ilWwWZgWOirtlxarz65brEfN62E9b+QUZ1BFvbuEI?= =?us-ascii?Q?5g=3D=3D?= X-OriginatorOrg: altera.com X-MS-Exchange-CrossTenant-Network-Message-Id: b01a4b17-c844-4f44-04a9-08de30a516b0 X-MS-Exchange-CrossTenant-AuthSource: DM8PR03MB6230.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Dec 2025 06:44:34.4058 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: fbd72e03-d4a5-4110-adce-614d51f2077a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: zkvfiEDNp3POfxPOoILA7XQzLkyBrLDPblR/Pqcd2v8ik69w8X4pxNnPlK9Zheg7sNjod6BAHTIa3/tbYZPW7XyGrCr8OZFA3bPAiEFH3/c= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB5847 Content-Type: text/plain; charset="utf-8" From: Adrian Ng Ho Yin Make i3c_bus_maintenance_lock() and i3c_bus_maintenance_unlock() non-static and add their declarations to the public I3C master header, so master drivers can safely take the bus maintenance lock when performing bus-wide updates. Signed-off-by: Adrian Ng Ho Yin --- drivers/i3c/master.c | 4 ++-- include/linux/i3c/master.h | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/drivers/i3c/master.c b/drivers/i3c/master.c index d946db75df70..870e0dc14377 100644 --- a/drivers/i3c/master.c +++ b/drivers/i3c/master.c @@ -42,7 +42,7 @@ static BLOCKING_NOTIFIER_HEAD(i3c_bus_notifier); * logic to rely on I3C device information that could be changed behind th= eir * back. */ -static void i3c_bus_maintenance_lock(struct i3c_bus *bus) +void i3c_bus_maintenance_lock(struct i3c_bus *bus) { down_write(&bus->lock); } @@ -56,7 +56,7 @@ static void i3c_bus_maintenance_lock(struct i3c_bus *bus) * i3c_bus_maintenance_lock() for more details on what these maintenance * operations are. */ -static void i3c_bus_maintenance_unlock(struct i3c_bus *bus) +void i3c_bus_maintenance_unlock(struct i3c_bus *bus) { up_write(&bus->lock); } diff --git a/include/linux/i3c/master.h b/include/linux/i3c/master.h index c52a82dd79a6..ba86deb2e07b 100644 --- a/include/linux/i3c/master.h +++ b/include/linux/i3c/master.h @@ -726,4 +726,7 @@ void i3c_for_each_bus_locked(int (*fn)(struct i3c_bus *= bus, void *data), int i3c_register_notifier(struct notifier_block *nb); int i3c_unregister_notifier(struct notifier_block *nb); =20 +void i3c_bus_maintenance_lock(struct i3c_bus *bus); +void i3c_bus_maintenance_unlock(struct i3c_bus *bus); + #endif /* I3C_MASTER_H */ --=20 2.49.GIT From nobody Mon Dec 1 21:30:04 2025 Received: from CH1PR05CU001.outbound.protection.outlook.com (mail-northcentralusazon11010024.outbound.protection.outlook.com [52.101.193.24]) (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 49F64285C8C for ; Mon, 1 Dec 2025 06:44:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.193.24 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764571481; cv=fail; b=ngfn3OJ/4cfhfnh9fYSkW5HkbUkyuYJrR9/sU5B/a4Pg2tKI40YGYP31G4lvWU3l9a00Vc79IAYomuxfpbVuvE2J+xctAhB1auGKjHl1JsDodZkeV2uGb3PkCLpPQEYnrLnwx/6uZoHW8uN1/f7P0WeSbDsLNfwLRe9uSmNj2+0= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764571481; c=relaxed/simple; bh=SoJCerEMHO9nbteuwnLK6J6M50yovR5YQpJfXP6ERI4=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=DDM6ARv22U5oZB2amje2QyTwzzpBsmR1WaKUwYcGmQPEgwRodX4STX2bdIjWlBoOudYx2dZQ+1dFPlpCM2Rao+abDYYB3ddGMXZabT4qHtn0JtKG3XXIw3kdY1AZpmLppIVEnBUly4mwim6L82BLRkKq1X09UKzC4y4YTsbbXMI= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=altera.com; spf=pass smtp.mailfrom=altera.com; dkim=pass (2048-bit key) header.d=altera.com header.i=@altera.com header.b=mOyNsr55; arc=fail smtp.client-ip=52.101.193.24 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=altera.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=altera.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=altera.com header.i=@altera.com header.b="mOyNsr55" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=TG05uREffAh8o0jmhaknM9x+H+GLELzekduYdGYzHXT6rroc7r/zGmMZ4p+mUW4d+wLtWqqSgDHK7qiXVvgkqcirVLe3Cy8I+gRt3b2GX6MIDyIQRu5HXUqvCRIejQoOC9YsgWPOWetIVI+aAnDR4Xnanh5QEN2PWyEfND7kj8mHkxABC4kU3S4SYeo7qs5gQdZSulH7Crx7bIGWBPUqd9fpL2769ZOa0xLUyC8rZkyju9mFF0zuYcHjhZv7aLIWQ+RlJswToN/LbRULy++eCJhIaUJok0qkzgSNa9r0kUZHlQJqI4VFU15LL+GlIKPoc3Byrif6gfrnUkhahJ0eIQ== 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=fOrCavKV1sPAtRFeWuqX/AuOtZwXNHeSre3He5Z2z9I=; b=ee9ox7FvV3Mxx0vcc9+Kl7q/HjiPoy7m2d8WpZdWtU+fdzjGZNvPjPfTYfaLeEKk0rdgcI7EQqXamy73yBe6REwlY1GlYcAtBy8CEZDVzeVbG7GJ/Gs6G0gpuz8pc1CbX5BCNNKKnGHwbw51O73HrWFruIW49efTI5+/smHJWhdYV+CPxoR/IHvyboL62e2kbqctVoIdN08IXrJbYDD2vSQUecX5J7eFSQBJhGw9r6ZZIdOg2JEb7mK83WoDRqkvd4gV3sfi4Ka9HXM48mjscUCDr8Rap5M9MR7G62cDSfkpBFwIKRjJXebXdf6qLthhW5inyKmFZpPMFH+3QOd/Fw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=altera.com; dmarc=pass action=none header.from=altera.com; dkim=pass header.d=altera.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=altera.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=fOrCavKV1sPAtRFeWuqX/AuOtZwXNHeSre3He5Z2z9I=; b=mOyNsr55jiKrBHsNYKr/8KHRkJ+Go8+GeXWEpAHD+Ac43w86bJuHvFWgDcZ0CVudFPCn8qBi20LG1e+eZZpzx9g5jW9gX1pirMXXYerd4Z/NK/QVtel2BAl7OzZeHHI/DvGrDCD2Ty7dM0muRqqmu1NqEBmhHFTzBMoC5YiOvn1agagqnQkfxmCw3DDOGvR5FM4RWi5rduooLdiivJLVwJhu6Fy346PSGF4iZKhEzERHn5MtqUt3vMUEJgciXZd7z5BS/7tincvUhGeQq2pbGbGpEtUq4wbL96NsaLeTBJVbXnEcwfyGMLOGawqwJZE6j9n24jiTmbsJM/6cE6TpXg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=altera.com; Received: from DM8PR03MB6230.namprd03.prod.outlook.com (2603:10b6:8:3c::13) by PH0PR03MB5847.namprd03.prod.outlook.com (2603:10b6:510:35::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9366.17; Mon, 1 Dec 2025 06:44:36 +0000 Received: from DM8PR03MB6230.namprd03.prod.outlook.com ([fe80::abad:9d80:7a13:9542]) by DM8PR03MB6230.namprd03.prod.outlook.com ([fe80::abad:9d80:7a13:9542%3]) with mapi id 15.20.9366.012; Mon, 1 Dec 2025 06:44:36 +0000 From: adrianhoyin.ng@altera.com To: alexandre.belloni@bootlin.com, Frank.Li@nxp.com, linux-i3c@lists.infradead.org, linux-kernel@vger.kernel.org Cc: adrianhoyin.ng@altera.com Subject: [PATCH v4 3/5] i3c: dw: Add sysfs support for Device NACK Retry count Date: Mon, 1 Dec 2025 14:41:56 +0800 Message-ID: <42f1d2d980d45de27b0bb3bff85253464dc387ba.1764571045.git.adrianhoyin.ng@altera.com> X-Mailer: git-send-email 2.49.GIT In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SJ0PR13CA0035.namprd13.prod.outlook.com (2603:10b6:a03:2c2::10) To DM8PR03MB6230.namprd03.prod.outlook.com (2603:10b6:8:3c::13) 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: DM8PR03MB6230:EE_|PH0PR03MB5847:EE_ X-MS-Office365-Filtering-Correlation-Id: fa6deb19-a6e0-4ff1-4298-08de30a517f2 X-MS-Exchange-AtpMessageProperties: SA X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|366016; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?DQfg7CY2NKkovQ2DeioFJAXYUqxHoEViv0J2/OHWy3LJBvmfyznGPvzObN7O?= =?us-ascii?Q?OTC8fIqoQIyNY1W+t+AgcG1LrS5F2b/IM1v2G+fjRH7onoipefGGfA9uQ8fT?= =?us-ascii?Q?bHXbqkctxk4suhZ+8LGVEdeUdc0IQ0MLA1+d6oSWbqxbT52hSyJw/Pv8dTLy?= =?us-ascii?Q?59c5llV+N1Jez9RFBw+hh2WX+HrKmw+kJSu5dKHR+3DmRGOiyqGixv5NVhCm?= =?us-ascii?Q?pogmpUp0BRKi9sK0CP6Up8xyC7SOkHfcag7FIoGHoXHehjghokPZT+4a5xJS?= =?us-ascii?Q?xJrG/F6Qez8xQ314ezNGHP1In+ivL4biTQTLQ+LZjW+XidgEPFQNmKo2WaqO?= =?us-ascii?Q?tZfH234Q/xsLhOBAx7Q+zWDBdassn4EeXhqR9gWsUVd+fatsx75Jd8nX0ZpH?= =?us-ascii?Q?m5gRne/YXu3SYvrWk9gbF+zBhnKzcjgfeF0+5v0YuPs0WBZEKvgQO/3Quu1k?= =?us-ascii?Q?rtJcsaT4XYnaX1cc9k68uj1Bi9FFlHYdpw5wzvZ82B06do2DxuW4MgIIJCUf?= =?us-ascii?Q?r9eERjCw36GggQ1LUubokU0SZl/lYNwWO/S3JAqfQvTnKLMh1dm+sEIZ94LI?= =?us-ascii?Q?7jrDmqFrbO3aYAZCI/rjuVvCKDl/N8wN543g7gOokOzDfArxRlfH8HChZTb0?= =?us-ascii?Q?PZIptthnvQ/PKWy+EVQwFERpuU98vXgrgePZCxLwOmx2URfKjkSSMwTZVstw?= =?us-ascii?Q?dXlThRnnRG32JZ1buHbk0PZoqKhIkyqMIYmTIxjX4lsVAz2usCv7Taq/HfYF?= =?us-ascii?Q?s5IqNs1Q9T/myDTBwzD8q4tYYstaaBAWnI4UVjfzmjpciFDgaofqPgHmG99s?= =?us-ascii?Q?kolVIyWaH7KIuztrjrAs+LDjP+3OpDtGG6k8FvlgrLYSmbLZa2QrsAXzL+Ze?= =?us-ascii?Q?S+8aINNfsbeIsUpCIC7KwzYI7oUfyHbSKtafAaRpKqiEE81fYd1ddq2Mj9zv?= =?us-ascii?Q?txQT+sfk3ZWt+sarmghZAJST7HdU8ZIb8o1Se0r8zHc61ITfV+oz+BONzY6Q?= =?us-ascii?Q?hhJInPjtfLM1fm75jymEbd243MS2kdZQQI8rRsSFV17TDJUpR6gVDJ/3rPqI?= =?us-ascii?Q?ETgE/RBZgHEzoSzFp+mdkcqEyfNfSlY0V9fxBrts2vTT1qbsfpbdPRk6W2pC?= =?us-ascii?Q?5jxGk7G4EiLx0xeGDPau0kFGDi5TfuFraJtjTymQaoRzvKedRv+fzoCu3vSA?= =?us-ascii?Q?bnJYZYDpu8ZjdlBu94XjySlf4/BT9jvHs4HVwyVA3MxUH6opn8a70ndsQZMj?= =?us-ascii?Q?11uT1ctMeFFqkFQZ9XkIo4X7+y1Ddi9UAz1rBhiHvEHqCvE5NdFC6Z0P+mXU?= =?us-ascii?Q?5+CGPJFJr+zE8YiiDp3WavtwukFsBKHvT/5vFZIWtlFk/wiz2ELuYsNMU0eU?= =?us-ascii?Q?+q8GOW9rTxC7kfXjkm39Uxe5szP7fKp39WGXhn40R3Ma5Vr1C47j7LIL01Kf?= =?us-ascii?Q?JqKn2tewTjGPdqne2EpT+TlBWFNQ65Jr?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM8PR03MB6230.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(376014)(366016);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?t2pFxKDonRtDGvCF0XSzk4kf9RepeHBU1CmXXc7Cdq02KQn5XJmPpv5T4C9V?= =?us-ascii?Q?n03MwJVoNOt6nXyJdVwFMAk4zB3aODWTQ6+MrC7YcCWn5LOdlUq22/cX2qof?= =?us-ascii?Q?dfZJjrWH4tqo5fShADUA8Tsl1yGYuX7C/Z7E7nQuA/wcyS3aNrjBKCWK8MAc?= =?us-ascii?Q?cDILWACU5s9Vkc267OHso7uZnrcrzIFYUHvCony5oboM499RVPn1jiOxRV9z?= =?us-ascii?Q?EokYSpIm9y+75F56/7RkyVbYcqWCooVOGbCZ2WpV+h2u/bWTfjq+LuUYD5nO?= =?us-ascii?Q?0wBIq/moOIfODiHzJOGd3gU6FwYIbvL/huM21alN0XWCxXJQRDZFNKz1zJTZ?= =?us-ascii?Q?R1FTgSpFYhI6g4GnY48nYEih6EgBPJX+89Lz7sAwpgLmsaIr5lFuDdOhE5a6?= =?us-ascii?Q?R4NC221CpR+C54Zf0ldx4Z/vKtWaoU6Q9jmrgJn2xv2szID+N1nu1LU8h+1G?= =?us-ascii?Q?1+G4S4E5skDaRKWYhxxrXYpI/SW+PUBl/W8wWOm0wmJOZqixyAkc4dYW2Yrl?= =?us-ascii?Q?1kKGYlL23llGjyGbrPbGoiECfL6g/Vo5pEHYO//6o4AMgXdAisieXGX1DP5m?= =?us-ascii?Q?Kzg2e/pQFigiqBihG8gCvSdtzbQ1RCeCDWziiBNUHHJGq+uiHQBUntYpNw3s?= =?us-ascii?Q?PhbF3ys0SDLaY7Wr26xozMKddDxKxHi+ouHYtvZaa6NU7mKqlXWFvQNeSYyL?= =?us-ascii?Q?QvP0cLGZJbwP4s2ri5ZyOsKWzaKDj++El//OHjr423GWKS70EVW+n+Tx2Ia5?= =?us-ascii?Q?cJFY1LRnAqIpf15RFBooxrc5Wu4Ji0HmDOlTKpcjEtvMSzYlAs8gxoy+Beld?= =?us-ascii?Q?FEXQHrakEqsZbIkps2o9MWLC9fQyP+nRpxayNKZH+ZGfcikrRLphnCGM2J6O?= =?us-ascii?Q?myj/bIkdc3WcZXD4+i8rw9xo4Qa8mSTmHrqX9KluhGwjGS0sGhiR+6Ra9yUS?= =?us-ascii?Q?JeEAVtCpwmzEzKbjOtbTfssBFmX1J2fEyHdRG6aYKfllJjjMVjpjvqrgTKIf?= =?us-ascii?Q?PnVytiAp3fwvN6jEoF5CwZS+/V3ikhbccVJXReDNi/VLc3+7TCFrJgyqo90+?= =?us-ascii?Q?Hh6OP+MojVJL84qzjFVMnYUJsUs1Y9TLcoxygDlId8Xt+zi9Og7+0U/hLLkc?= =?us-ascii?Q?5wXNnPpa3FsiqMOzn4D1b3kuB5uGFP8sXBr7VnXeEdmdyVEgGZoiS+nJ9KZt?= =?us-ascii?Q?mF8pgIjj/AnIvAh3ha3h0FUqwOq8BndAIaF4mIXfMLU5JfT2Ded+Id2O/yA2?= =?us-ascii?Q?fq/XBuxDvhDHOcQ5eAB4ay5jCkQi2WGE7yQpZns2d1idXufninrFQB9MR7yI?= =?us-ascii?Q?Qp4AZdUdm1UQ3DlX0drn3edzyThocZVWA2RNeasHBajMYFBICIYfqLEpFdb1?= =?us-ascii?Q?taYoGJ7rWWYKZDEyYE60eR7cS/U1U9L7tcfbs2qkDNh21cYMVfEcw1oLibPU?= =?us-ascii?Q?hN4wcXHSNw13VIR6UzrC9g3UmLeu9YDkPj7u67JnX8toNffCxlIbFsvO1WlM?= =?us-ascii?Q?ZgL4wp2JYN7YQQpypkFDeV/WX9ym08clwyYrSZiEta0mhxOUd57QOC4J+6MD?= =?us-ascii?Q?4O2oGabfgjzxJmV2xhKPiqcP/3c05lnuA3MKDBBunJp/C1Ba0gbYKVqGfgc0?= =?us-ascii?Q?hg=3D=3D?= X-OriginatorOrg: altera.com X-MS-Exchange-CrossTenant-Network-Message-Id: fa6deb19-a6e0-4ff1-4298-08de30a517f2 X-MS-Exchange-CrossTenant-AuthSource: DM8PR03MB6230.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Dec 2025 06:44:36.5244 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: fbd72e03-d4a5-4110-adce-614d51f2077a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: FdyprH3aCmY2T5ibllcYwu3w62ZUBufudA+DlpF4d8lvW/+ZNpJGlh33AzM8zBQ58JUxyM4GdV8rf5pPeAqHyNrMa+0Zl0PBqtPS4f2PgW8= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB5847 Content-Type: text/plain; charset="utf-8" From: Adrian Ng Ho Yin The DesignWare I3C controller supports automatically retrying transactions when a device NACKs. This is useful for slave devices that may be temporarily busy and not ready to respond immediately. Adds a controller-wide sysfs attribute, dev_nack_retry_count, to read or adjust the retry count at runtime. Returns error when value exceeds hw specified limit, and the updated value is programmed into all active DAT entries. Signed-off-by: Adrian Ng Ho Yin --- drivers/i3c/master/dw-i3c-master.c | 69 ++++++++++++++++++++++++++++++ drivers/i3c/master/dw-i3c-master.h | 1 + 2 files changed, 70 insertions(+) diff --git a/drivers/i3c/master/dw-i3c-master.c b/drivers/i3c/master/dw-i3c= -master.c index 9ceedf09c3b6..a34b4f05dbd3 100644 --- a/drivers/i3c/master/dw-i3c-master.c +++ b/drivers/i3c/master/dw-i3c-master.c @@ -204,8 +204,10 @@ #define EXTENDED_CAPABILITY 0xe8 #define SLAVE_CONFIG 0xec =20 +#define DW_I3C_DEV_NACK_RETRY_CNT_MAX 0x3 #define DEV_ADDR_TABLE_IBI_MDB BIT(12) #define DEV_ADDR_TABLE_SIR_REJECT BIT(13) +#define DEV_ADDR_TABLE_DEV_NACK_RETRY_CNT(x) (((x) << 29) & GENMASK(30, 29= )) #define DEV_ADDR_TABLE_LEGACY_I2C_DEV BIT(31) #define DEV_ADDR_TABLE_DYNAMIC_ADDR(x) (((x) << 16) & GENMASK(23, 16)) #define DEV_ADDR_TABLE_STATIC_ADDR(x) ((x) & GENMASK(6, 0)) @@ -295,6 +297,64 @@ to_dw_i3c_master(struct i3c_master_controller *master) return container_of(master, struct dw_i3c_master, base); } =20 +static ssize_t dw_dev_nack_retry_count_show(struct device *dev, + struct device_attribute *attr, + char *buf) +{ + struct dw_i3c_master *master =3D dev_get_drvdata(dev); + + return sysfs_emit(buf, "%u\n", master->dev_nack_retry_cnt); +} + +static ssize_t dw_dev_nack_retry_count_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t count) +{ + struct dw_i3c_master *master =3D dev_get_drvdata(dev); + unsigned long val; + int ret, i; + u32 reg; + + ret =3D kstrtoul(buf, 0, &val); + if (ret) + return ret; + + if (val > DW_I3C_DEV_NACK_RETRY_CNT_MAX) { + dev_err(dev, + "Value %lu exceeds maximum %d\n", + val, DW_I3C_DEV_NACK_RETRY_CNT_MAX); + return -ERANGE; + } + + master->dev_nack_retry_cnt =3D val; + + i3c_bus_maintenance_lock(&master->base.bus); + /* + * Update DAT entries for all currently attached devices. + * We directly iterate through the master's device array. + */ + for (i =3D 0; i < master->maxdevs; i++) { + /* Skip free/empty slots */ + if (master->free_pos & BIT(i)) + continue; + + reg =3D readl(master->regs + + DEV_ADDR_TABLE_LOC(master->datstartaddr, i)); + reg &=3D ~GENMASK(30, 29); + reg |=3D DEV_ADDR_TABLE_DEV_NACK_RETRY_CNT(val); + writel(reg, master->regs + + DEV_ADDR_TABLE_LOC(master->datstartaddr, i)); + } + i3c_bus_maintenance_unlock(&master->base.bus); + + return count; +} + +static struct device_attribute dev_attr_dev_nack_retry_count =3D + __ATTR(dev_nack_retry_count, 0644, + dw_dev_nack_retry_count_show, + dw_dev_nack_retry_count_store); + static void dw_i3c_master_disable(struct dw_i3c_master *master) { writel(readl(master->regs + DEVICE_CTRL) & ~DEV_CTRL_ENABLE, @@ -1598,6 +1658,12 @@ int dw_i3c_common_probe(struct dw_i3c_master *master, if (ret) goto err_disable_pm; =20 + dev_set_drvdata(&master->base.dev, master); + ret =3D device_create_file(&master->base.dev, &dev_attr_dev_nack_retry_co= unt); + if (ret) + dev_warn(&master->base.dev, + "Failed to create dev_nack_retry_count sysfs: %d\n", ret); + return 0; =20 err_disable_pm: @@ -1617,6 +1683,9 @@ void dw_i3c_common_remove(struct dw_i3c_master *maste= r) cancel_work_sync(&master->hj_work); i3c_master_unregister(&master->base); =20 + device_remove_file(&master->base.dev, &dev_attr_dev_nack_retry_count); + dev_set_drvdata(&master->base.dev, NULL); + pm_runtime_disable(master->dev); pm_runtime_set_suspended(master->dev); pm_runtime_dont_use_autosuspend(master->dev); diff --git a/drivers/i3c/master/dw-i3c-master.h b/drivers/i3c/master/dw-i3c= -master.h index c5cb695c16ab..45fc1774724a 100644 --- a/drivers/i3c/master/dw-i3c-master.h +++ b/drivers/i3c/master/dw-i3c-master.h @@ -51,6 +51,7 @@ struct dw_i3c_master { u32 i2c_fm_timing; u32 i2c_fmp_timing; u32 quirks; + u32 dev_nack_retry_cnt; /* * Per-device hardware data, used to manage the device address table * (DAT) --=20 2.49.GIT From nobody Mon Dec 1 21:30:04 2025 Received: from CH1PR05CU001.outbound.protection.outlook.com (mail-northcentralusazon11010024.outbound.protection.outlook.com [52.101.193.24]) (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 57A4B28726E for ; Mon, 1 Dec 2025 06:44:41 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.193.24 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764571483; cv=fail; b=W2f2H2YKfMh6gnkv5jL4X+95/Kgx/Fg42km0GiWgMR1XyAVI4esFFdXl4y9l9LiC7bDxSrxepD9pCsH8b/VB5y71kV10tDXFb/gGPe8TIHQmU5eVHGj9mao2lXpV/xDLVZQ2PBeIQEhnlCgSj/krTynv//6MuWQSbnozwugP/ro= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764571483; c=relaxed/simple; bh=3JjUrjnOgPkmDlq7RhO+EkLeMWMXUIMPB5Z8DzYSGR8=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=KImGF2k3+OXwEd22K7xRm4YOKlbLdLa8m7KTz6+Ft2IAcWRenp1lxW901HGdN40d14Ni3MIfd4S22xrJD8XDODzKvG7To2hlrhsD+8GlBw4gf7v1D4uCvQmKRgPj33+7JjrabKVOoyJb9J64c3wUZ2xDO8+TxVHsSHiMJ4Ws840= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=altera.com; spf=pass smtp.mailfrom=altera.com; dkim=pass (2048-bit key) header.d=altera.com header.i=@altera.com header.b=RI6VaEak; arc=fail smtp.client-ip=52.101.193.24 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=altera.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=altera.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=altera.com header.i=@altera.com header.b="RI6VaEak" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=mF1Ny7etY2JnlnrIEOQHdHqcFXwKIVIR/MdTAsD39/M3cIwJy7bO0G55jGusj8SiA+QBbl9EGLLmGGFggX80S+HRkF8pr9LZ4iJLNHnZN9Rwz+22xFw2l66qvtNMdlI55bDj00f02uQ+AFlHwwXqfRPy2Q5F8wtNblo6OlDpi+nHPMGu82XqfyNrv0jbaNoG+MJ7a1NCjTpAtFIFVGBw9qQDgKc/A/7tjam6j9C2pclMXLNRnKlzVTqGpL+hvovqxsZbJZf6opIqK61qwEih+TXyNZ63yjLYr3Ym3v8Ht5xKugBHQIHMC1t6KwARy/4eQbyb6gSQt1XGiJgUGYfIGA== 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=926/RUaoRzPZBRW6VXqQT0CG6uKv6Ump4UA1KPyhBcM=; b=s3awSJ1f56TyaQDoQGT+ulw/a1WKsUCfXRbqEqjFiPJMHVIWv1R91v3Rm38Es9UEOYzD3SZyZMTP5CSQ7uYq+IY1gOvxfqIUWP9g5TMiBFaO8mdL405UHlF1vmn55T5gkDis0oQ+ogAW+wsVK9/JW5IXBAZApoEQk6jhxbES3WVunfsuV7IK8n85SznutMrxkkyIHMVj4UACqZOJo/ITqTX9zHeuKEcI6Bosw+vNOpTwqQGBKC599ehoXeFXCKJ32czohs4yTZBSYmsJNtIWxc+EvAkUqJTroy82HV0zcoosygl901U+aKwgN8EJopWP7g/IMpobb6f2PuvaMeAkng== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=altera.com; dmarc=pass action=none header.from=altera.com; dkim=pass header.d=altera.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=altera.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=926/RUaoRzPZBRW6VXqQT0CG6uKv6Ump4UA1KPyhBcM=; b=RI6VaEakgPw9ahMkGqhFPoEiz7sh+Fj1xLvvRp5ASAKXi3IiKBdbKxMZvyxe+GIgYOD3Ne+PwrK6u7UHLQjeoZCE59P7JshrPocPV7iw9dNANNRPSwrCN/pCIbMWktRHhcIxTVx7oqZdoJnkx7Trxl9GNNM7qSa6R8k57OonO0uKvzTMnida9NwG2fio112EabGDh+ENYaZdGa5jZ4+j6TcN/n7uWOzvcXo8iOAx8yWOlfDeXC4OAde363CTw5APrSRIFbB01oCzRHQpO2mMgd0ceDyNOwx3/7Gr+4txOTMTXmM1fA2ViFce4h4qnEtV5nIJO85VeaDBT2zsaon6nQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=altera.com; Received: from DM8PR03MB6230.namprd03.prod.outlook.com (2603:10b6:8:3c::13) by PH0PR03MB5847.namprd03.prod.outlook.com (2603:10b6:510:35::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9366.17; Mon, 1 Dec 2025 06:44:38 +0000 Received: from DM8PR03MB6230.namprd03.prod.outlook.com ([fe80::abad:9d80:7a13:9542]) by DM8PR03MB6230.namprd03.prod.outlook.com ([fe80::abad:9d80:7a13:9542%3]) with mapi id 15.20.9366.012; Mon, 1 Dec 2025 06:44:38 +0000 From: adrianhoyin.ng@altera.com To: alexandre.belloni@bootlin.com, Frank.Li@nxp.com, linux-i3c@lists.infradead.org, linux-kernel@vger.kernel.org Cc: adrianhoyin.ng@altera.com Subject: [PATCH v4 4/5] i3c: dw-i3c-master: use FIELD_PREP for device address table macros Date: Mon, 1 Dec 2025 14:41:57 +0800 Message-ID: <3ac5353e09a96029444e7f82bc70dbbc6e2389e9.1764571045.git.adrianhoyin.ng@altera.com> X-Mailer: git-send-email 2.49.GIT In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SJ0PR13CA0035.namprd13.prod.outlook.com (2603:10b6:a03:2c2::10) To DM8PR03MB6230.namprd03.prod.outlook.com (2603:10b6:8:3c::13) 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: DM8PR03MB6230:EE_|PH0PR03MB5847:EE_ X-MS-Office365-Filtering-Correlation-Id: d9d149e6-72a7-4630-9e9f-08de30a51933 X-MS-Exchange-AtpMessageProperties: SA X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|366016; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?0AlMsTJOr76ff8I6VWBtE1Z1DQ4xse/WglzP3mLuInUInbJDwsbtBDJzSYSU?= =?us-ascii?Q?ZJULfIu2Me3RYNeHCM6Ncp9tuoZyhjZZFdElvU3/Rhau9qvP7p964B0qSz6c?= =?us-ascii?Q?DS0P8k6cghx3i/ePHhCjUkxchiw483dncWsG2jc1hJ8PxMsDVPjcZuQL5wkv?= =?us-ascii?Q?yyq/N4F+6KUbdydyiNHDyuHjOj8IoE4m7KwfreDR5GGTfxZ5/fkxgjOyGJo7?= =?us-ascii?Q?cMrNSXFO+VDQ31Zw0rnDInQa7x+phgmoMmEktlfRq8+ruvcXr76KxKKizJBR?= =?us-ascii?Q?d2JVDHevzQJg9KUxxFtJlEsA2lJ4ksLbHjZ8wi0xMyjF+oVq7fpBnvnwATff?= =?us-ascii?Q?cGFpldr0Y84D/o3vYEdpWJLwgBQgrMyd1KkqEFuuBH/YfPkKIalG1ZFV55PL?= =?us-ascii?Q?376wm2A5Ecbq6wJN9j490kSlfcmVW4XhmUNoNkQzAcyB1h19Qd066v28df+n?= =?us-ascii?Q?zWHizPVi1AqlQaa6eBBqfkCyh4xlKfHF6A3X7/p2bS+pnXsj8EZ6U7j3sUcD?= =?us-ascii?Q?c8EDbwdMH/yEeOJ4R7f7ArCSXhyfutj7xV4e5HRGYZLL6cXLlS1x+E0VyPxW?= =?us-ascii?Q?KZ8tAHHs/VjyG5xQspT4KS4wUTwQYk57yf/1MrXs/v+qmZ/6Ib9unuwW6yB2?= =?us-ascii?Q?Eyhj8UPFx+2EyuVR4/MsFWyiKhRYKwsWMBUQ7hOK9q8mG8m5qhCWU6nu6Qft?= =?us-ascii?Q?4mAGHb9jMhowQVcFrMX1LtW7L/mGsNqYjQGIP/0dRR5oKfw/y+JMLjmv0y+F?= =?us-ascii?Q?WmPbCT2W42xmQvy1KiwOWRB593JhGuJhlDp/5KCD9dulP2fUyn9bm9orMlyO?= =?us-ascii?Q?kGzSZs0Aiysb9Z6titZ6NR5KERqXkidKnkXVWhoBZUyMSi7R+HdPzmQP+5rA?= =?us-ascii?Q?Z7egoQMCjL+d9ctvCTQ9HNuTv1tqBXY/YNfn6TaeVDjJry1d39I3Q9/SiUOF?= =?us-ascii?Q?kU2qoBbpycXQCsQaI2x+4oyA9MT1p9e3I/msh0I+yB7nC/aPTJnqYa39LO4k?= =?us-ascii?Q?CoNlNq0d60QoEYPkb/mjxj/ZsypjxKK2+TEBnrYmvxp1QvzJVE94Uz1JVLqk?= =?us-ascii?Q?9rG5TgW35IDhwDyH4MTJLraMNWYkIqcFBL6VQJHFkBrQhmEkZ/grzVIxTitY?= =?us-ascii?Q?fN5y+9l/dZgUaD5V4C/UgG5fFYTMmDg+O5SiZOcJ50iQmnVrgyc6BNXA7m9E?= =?us-ascii?Q?VR9283HG9eUOloasQm9Ucy0s+zT7eVeo5LeCwz/q9xEn2ZBXiYN/PlJJIlEG?= =?us-ascii?Q?RLoZPj9q5YksdbapzU5mPIF1XsUU57FLDIc3aqMNxGFJYJvacLtoA/g5fbF7?= =?us-ascii?Q?XVqFuoHr8Ii918a356jXKm8NlJLlx9+zVmY9QMMsATmjINitLqE3UITWIqLW?= =?us-ascii?Q?PoI3hDXu8loutc8Sfm2kWQuUlA6KnPpOKevaXPnnC0AmHYKjQtaqtev/cbmZ?= =?us-ascii?Q?zwwnfRxUSPRo2iCvI5wbOSJ28mP5QE8q?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM8PR03MB6230.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(376014)(366016);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?JqrcYC8wyEI2tA5anU8WSoK/mRfwrR0MTDKg2MRaaAfhXKty3M+BkQYAIWxW?= =?us-ascii?Q?JxPqt7JUo4U71wO/6HIyMhz6pMLWJIMawaexLsMEgFjBH+6G3nOHitKHlfIx?= =?us-ascii?Q?I6KCSbChGLQzPrCbG2XWi0EIH/015SxVvwPWApS67NQAhgEBV6Eh0xXUwTnB?= =?us-ascii?Q?GyYRq22/M1WrJwm2WujgcGAOHywg7DmLp64OjphNOTdLIAsJ7r/yE8QsIT5G?= =?us-ascii?Q?Yui05411quWOqUaINB2EAc6nVIOHIJTYealnhgl1G+inFsKLHA1ixpXmlBxg?= =?us-ascii?Q?mKA8HBssPcVlZz/Dj0gtXukIaTPywIfzKk6Zb3pzHtreTDrUxOA/+FP2Y8RP?= =?us-ascii?Q?niv0ZyzV6N9z+eXETlM18F6AhYeTP5dtHrQEjagxN9d5/Nu1CERM8cnXzCtR?= =?us-ascii?Q?zmikl60mz8MVFZ+OTfoMc/EizoTQJYYw7EBNDhzhzP8WXdG8zf4nZuys8VU9?= =?us-ascii?Q?9bzRpvk+tJXZl3Yyv/qWKGKN74oep2jz5FmMthUsNRC+70e0GIO43OKvf6ib?= =?us-ascii?Q?8hFqD6LB6MR+apQmJ0/TFLGgjWSjU9UhCG9SQwA1ajqoAAyFMa0lMof0NdMd?= =?us-ascii?Q?65zTS2OB8GSLfLiJavLeOfTAF0Q+GNYYKBC1Ksi4EQUunupkHJtMyZQmuwXj?= =?us-ascii?Q?1qMt3hnJ4YfRczhI5J3SDmBTziQ0wrRXXQmQISoeZ+GBNKiWjSXYw26Xp7uL?= =?us-ascii?Q?0xSueiUDuJYff1RMMN2waipcajgzXMv49OkZ88i3AeYri4zPW1/fqJeNIEyu?= =?us-ascii?Q?vqjjXDMym+z9bq8kGMVdIxAxaKkJZmWI9NeNqmsaPg65cti1HBdKTfnq18Y+?= =?us-ascii?Q?vHfe1Ghg8wzQpnLbucGj0tu4AxMHpHQ7PuZWZr8y32G7TcjxIScz1EBV0Ehf?= =?us-ascii?Q?++hXYcmftcYdk2Zwj8hE6KsOflv0sAkFtnqJ07xqiejIiCzA7v1jjYXstKyL?= =?us-ascii?Q?ojeQpsT2Km7VEuqR3LECfCJ5OozFi8H8JxF09XJZ0SZMV1QdZKT+tixddt/w?= =?us-ascii?Q?kGCdkI+S1ACKjbKX6ie/FyFHy233nNQYRdh0S7JE/taXVU/IgtUlr2ry83am?= =?us-ascii?Q?wVgbZy5OZzmpbfog7couJ6Ya57WTJEZoI6apVmPfOyO1cxjpto7rJ7BwiNtr?= =?us-ascii?Q?dXN+0M3qXM5bQBhshC5kPOZKfl6qTgQ++tLyZrxkMbkVsJJeu/sbNMOh0GLU?= =?us-ascii?Q?ue/ocnN+R7CSjVWzSaRZkAHcJJTw0QkE+qHneq1p42PKIHOGRXU7eBTM91Jw?= =?us-ascii?Q?D9LGl8G9GlAcPJm2/v+Ldm6dLOwsvxfn41d33W+JcE7CU+K8/NWMfRSn0cy1?= =?us-ascii?Q?U0abvqDZSEQ5OtcDo0JbuTyfuYCT6oNpZFxMNM2Eg+ApaiZ6yyvLzqWuN42g?= =?us-ascii?Q?bw6gJRnsn7Go764615jhzJZrqDQTEP8SATQ5qF3mxK93D5jDS8Wy6BWXUdHL?= =?us-ascii?Q?1k1NZfFOWYpkq2lmwDXT+aYXv/ovPMUmhl3G/4Dbb/yhqXQGHc24ZlCw+eVQ?= =?us-ascii?Q?MTPsXGvBaY2x0Ar6RG3lUHCUgYAFY1I9wUVEdhOjd4dzVHLVWI33A/vYbF2f?= =?us-ascii?Q?6fWEi82F8jKYuiIbiQH4pEehIiN2gi5Zx54+JXUSiMSD4ExIYaiyIZXLW8cx?= =?us-ascii?Q?Ew=3D=3D?= X-OriginatorOrg: altera.com X-MS-Exchange-CrossTenant-Network-Message-Id: d9d149e6-72a7-4630-9e9f-08de30a51933 X-MS-Exchange-CrossTenant-AuthSource: DM8PR03MB6230.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Dec 2025 06:44:38.6369 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: fbd72e03-d4a5-4110-adce-614d51f2077a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 9wkyHRCZlfFVf5naD1XUc57GIw7TeepIiv2x9f45or3qKymkUzw4D5Yxd/AfyEExpnvS+JzMWcYiqfMay4G6eUSrDeyWSxETHCdgXJgZ6DM= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB5847 Content-Type: text/plain; charset="utf-8" From: Adrian Ng Ho Yin Add DEV_ADDR_TABLE_DYNAMIC_MASK / DEV_ADDR_TABLE_DYNAMIC_ADDR(x) for dynamic device addresses and DEV_ADDR_TABLE_STATIC_MASK / DEV_ADDR_TABLE_STATIC_ADDR(x) for static device addresses in the I3C address table. Replace manual shift-and-mask with FIELD_PREP() for both dynamic and static addresses for clarity and maintainability. Signed-off-by: Adrian Ng Ho Yin --- drivers/i3c/master/dw-i3c-master.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/i3c/master/dw-i3c-master.c b/drivers/i3c/master/dw-i3c= -master.c index a34b4f05dbd3..007dc53bc9f7 100644 --- a/drivers/i3c/master/dw-i3c-master.c +++ b/drivers/i3c/master/dw-i3c-master.c @@ -205,12 +205,14 @@ #define SLAVE_CONFIG 0xec =20 #define DW_I3C_DEV_NACK_RETRY_CNT_MAX 0x3 +#define DEV_ADDR_TABLE_DYNAMIC_MASK GENMASK(23, 16) +#define DEV_ADDR_TABLE_STATIC_MASK GENMASK(6, 0) #define DEV_ADDR_TABLE_IBI_MDB BIT(12) #define DEV_ADDR_TABLE_SIR_REJECT BIT(13) #define DEV_ADDR_TABLE_DEV_NACK_RETRY_CNT(x) (((x) << 29) & GENMASK(30, 29= )) #define DEV_ADDR_TABLE_LEGACY_I2C_DEV BIT(31) -#define DEV_ADDR_TABLE_DYNAMIC_ADDR(x) (((x) << 16) & GENMASK(23, 16)) -#define DEV_ADDR_TABLE_STATIC_ADDR(x) ((x) & GENMASK(6, 0)) +#define DEV_ADDR_TABLE_DYNAMIC_ADDR(x) FIELD_PREP(DEV_ADDR_TABLE_DYNAMIC_M= ASK, x) +#define DEV_ADDR_TABLE_STATIC_ADDR(x) FIELD_PREP(DEV_ADDR_TABLE_STATIC_MAS= K, x) #define DEV_ADDR_TABLE_LOC(start, idx) ((start) + ((idx) << 2)) =20 #define I3C_BUS_SDR1_SCL_RATE 8000000 --=20 2.49.GIT From nobody Mon Dec 1 21:30:04 2025 Received: from CH1PR05CU001.outbound.protection.outlook.com (mail-northcentralusazon11010024.outbound.protection.outlook.com [52.101.193.24]) (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 373442877E6 for ; Mon, 1 Dec 2025 06:44:43 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.193.24 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764571484; cv=fail; b=RJeFddNhtTVbYjiZsQSvlNHEpCN5ApR/4nZau6LSSkhCPWL1vs3T7BS95rUGolZBTa96LspxP7dhLHtE6NTQTtaamvGCaM8OghmIrCblXi6cIHKNJkI+3FUR+WJMbEGes9xEXWwbiZIgwBe8GOAIvQSZCi4QX8v7T3DOYhiTiZw= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764571484; c=relaxed/simple; bh=uTYDS5C0Md0a3MDVWUls+0ijUzECRaWziwQDrr9Q9i0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=DnI7zM1ddWhWZSJwtr1S4AsKEZcAeLN0cZMQtEuW0ABW7c+8yLzXhGQz6l4JwUvjs18VdTA0s4b0JKyZt9EvI/4jr1xOpMRcoKg5kYeTUSKb5tKuKbEPRTO2TqbBEFQqBJyATWGC+rDHxUuftWSJLnQJ3Ga4O8WQprMch8GDANo= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=altera.com; spf=pass smtp.mailfrom=altera.com; dkim=pass (2048-bit key) header.d=altera.com header.i=@altera.com header.b=ODkqgqua; arc=fail smtp.client-ip=52.101.193.24 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=altera.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=altera.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=altera.com header.i=@altera.com header.b="ODkqgqua" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=yWMEuKrXJwlZ0XCEkbKs5qnybPZj4+JMjbc68mC8Gg6YTcuC7N2agqL1xGuB/rQH4WUxe5sevdtZzWFMzgGOk0E2RWSpegmKkk9g3Byr2TiGm4BTmEYZ/8EDgTMb1Pj2WPVgS/obIYyrh6LPUxltAiDeOedKHr9IGDoIRDxyheaSro0NjGHT04Hil0n2fIesXLGeX0yB9Rc4E89Uf7U47d+XCOqp7DjAb/GSDJOm9ayrXmyyeMhOfLTy27kRMHLt1Crn0SVKm3t5tJNod1J8Oxrku01u6viPMjgkxh1Xh9p4o1z4gzqzvxJthRiNo/2D1uOWOzDs/xsdwwjdGPhmBA== 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=cy9sCGl/LW2SHGmlgltW4oseU7oVWRD8DvEak8bFQBo=; b=i+B/3mWmMLGGAb6tdZJXX6DjlgZSPCX1i+MqHXoKXw6McioVzz1M4xovIZ7m/nIuIA/LIeGSUVYRfFnomYbjjV3KYKGrwqF+AHI3m0cbA1wbVvBvkwUqGE2ONDoZY7NVw8ayUsBAdw1JI/tPFFSL2RoLqtM7NrWlZVA/AZ2pGYgrNiaMCKxog8zvqra00CJ9xMCCFUAjgJMxvSrI2xNU2w+6XhBoOPb2KNjQbjvh5crf5CIChSeEI262UO55GZcfOXFvIKwixK97vrqn6QnVnqN1PlyIl+jYQePWD411uLkh9T9pGfNic+1vdNYtVTKnE0S6oSqocJrkCVDFyuffnA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=altera.com; dmarc=pass action=none header.from=altera.com; dkim=pass header.d=altera.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=altera.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=cy9sCGl/LW2SHGmlgltW4oseU7oVWRD8DvEak8bFQBo=; b=ODkqgquaFq3kQoRn2hD6QNxEIMV29Wb+SXG3/4xDFXaCTSYvVWRIEFYCGZretPexVCgTqpZKZjEi8QoJFcz9uOZGA9KdujPrYww0kynfY5PIMZKVjrNxhJHFA/g/91+8BiNh0/J5UBFNyPOz4BkWg66smMVvaiydRtBSd17oc6vCFk31zuKwczOIOi372iBPzr00NV/jJGq+AmHfINKGo+r16gsR02uaY3dVovYiYsJ92gxZOWXY50lj5Env811EwKyQoXPtND/WlfIylLcXh+hS3bJd8FqAtY1DTEH97TwWnZEB5IVNSHotJjAXnOuczH0z+/iMGkprHpCqtUK96w== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=altera.com; Received: from DM8PR03MB6230.namprd03.prod.outlook.com (2603:10b6:8:3c::13) by PH0PR03MB5847.namprd03.prod.outlook.com (2603:10b6:510:35::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9366.17; Mon, 1 Dec 2025 06:44:40 +0000 Received: from DM8PR03MB6230.namprd03.prod.outlook.com ([fe80::abad:9d80:7a13:9542]) by DM8PR03MB6230.namprd03.prod.outlook.com ([fe80::abad:9d80:7a13:9542%3]) with mapi id 15.20.9366.012; Mon, 1 Dec 2025 06:44:40 +0000 From: adrianhoyin.ng@altera.com To: alexandre.belloni@bootlin.com, Frank.Li@nxp.com, linux-i3c@lists.infradead.org, linux-kernel@vger.kernel.org Cc: adrianhoyin.ng@altera.com Subject: [PATCH v4 5/5] i3c: dw: Preserve DAT entry bits when restoring addresses Date: Mon, 1 Dec 2025 14:41:58 +0800 Message-ID: <26b7e6b4e4f653325a7ba3d7bf791bd749e69ad7.1764571045.git.adrianhoyin.ng@altera.com> X-Mailer: git-send-email 2.49.GIT In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SJ0PR13CA0035.namprd13.prod.outlook.com (2603:10b6:a03:2c2::10) To DM8PR03MB6230.namprd03.prod.outlook.com (2603:10b6:8:3c::13) 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: DM8PR03MB6230:EE_|PH0PR03MB5847:EE_ X-MS-Office365-Filtering-Correlation-Id: 92108049-50a2-4c68-672b-08de30a51a77 X-MS-Exchange-AtpMessageProperties: SA X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|366016; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?gTnE4RoUmLvtIhPXQKzEcvjMBvOIetTcoYmEnAisHs3R8VkczEho9vzq+iDw?= =?us-ascii?Q?dPYhB2JnriaCfYxJlUxOYhxfTrFXVAT73dW8tb6RhwmhZLweGU5PH7X68yjs?= =?us-ascii?Q?V9sdsCxXnPMuVo2yj4Vb2Toe24Fw5nstNsVspo1BQLVxf7uYj+nPW+qdZcWm?= =?us-ascii?Q?2Jz/kz/T5FsRZhGrwRrXsz3SVLXluyoSPZP3ecp0ITW93fFrJX7m7sC4/G8W?= =?us-ascii?Q?4PkS56hGupLkpsNChhX/z2o+KELR1QUwlfUz48EzIfTbMURvZhsgDwaN5TqD?= =?us-ascii?Q?8lv7ZzSfr3ZFZ722gbHwA90VWGCLbbWXr3ZVulgymf2kwlsnnuqDCsT1ZcNo?= =?us-ascii?Q?HFUO+8/jYgScZBHV6gH2TZ+KNtHFOFl34AFi0RlBvJ4ZLFOWBr74swbKNQYV?= =?us-ascii?Q?o1+EzIshm1Km/ViEF06Ozm6j3Iia/b4vXpBOFjfesOQgZGKX7M1hyaeJZItY?= =?us-ascii?Q?BQVcACHLzGA4j//dvsO2E+R90e7IXeKarAFp6NUuvVFSvMCJVbJL3KOLKQqJ?= =?us-ascii?Q?KF5j2BmKyAi5wfivbMgXDy76N9CFjp4I6EY1/DTqCWnYsFgTRHyLY8G0xUN4?= =?us-ascii?Q?qI62Le1z7+qPWYbAIGT7BPAJsWCGaRJChsQF1p2EPYVT78brLXKBwxfIc3eH?= =?us-ascii?Q?pHX1TBIRQ14W29Lya/Nu64kshstUxhnWvBmixLN8iK7lLpOnbTEec8Cf6+No?= =?us-ascii?Q?9Bqs2zIgCSZGadUsm6jymVO4c5lL7HR5PDEil4ki14tcOW6L5j0nYnkMRbqN?= =?us-ascii?Q?KxA8NKyLnTJuObd+LglEEfKI8cznLTIGBs9LQDLmV2t7iNGGdk2SOsrgjjXd?= =?us-ascii?Q?LJvfNT0CSIBIKH4ePgxDu2cO1X37TY6PxJrXBtwaJL20t4PVAqeKOsT1wjZ0?= =?us-ascii?Q?380ZqUi1yZp065eDkzuq9tkNXkkooC3OQSYp6YmWYXQDqujZVike9qRCxz9E?= =?us-ascii?Q?mucO/KNqAoASKveU4CZhNNNH/482NaEmshEbcposV6HI/5tcL8n6apX9dT7g?= =?us-ascii?Q?2Q0AmCZInWivdmXin2z9Iy9jBZ+mNYfQ1Bzq8DK71Tn61sZqAKRQ1/v2RiUr?= =?us-ascii?Q?7OtCMLKURGf934WJzrgLLdiiYOtVMCjeham+2sLDkVOc1ciENPLzQzPRdw6s?= =?us-ascii?Q?e9/eyqsUacDD3VYa7Bi/hgC/5hryLSNqIdnqjy5GDxMEk/kPsi3AVV8Nkwhv?= =?us-ascii?Q?TXorpoGhXjJQocDEv4DMNsogflH3ce9vF5sfV+ekDH3YPfIRU57Sjy/VX26r?= =?us-ascii?Q?5B2XkucREOcAuXkMOSbZjZ7JdiuObzSfosrSGJFQ+XyHcNEsp6ABd8bpwwHR?= =?us-ascii?Q?rC9KfCvlM6Ho0O1RNIXj9MKbFID07FMOpp09nX/aB8fIKFr/hrg1u57iAGso?= =?us-ascii?Q?3xaSTBGvXYUssOEp0JgaNdUvx7sq7BL8Xxpz6dPX7e26pqZA13bVrQJjyT8J?= =?us-ascii?Q?s0OgSEsevhU2zwlebKHko5TO8s3bA6LC?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM8PR03MB6230.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(376014)(366016);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?qt9GNILBLlv/ZttmECmBp/itLYtmb5+BR9wq5yiVWXI3MyuFtRi11nfqxyYP?= =?us-ascii?Q?cULg5YrbdS/vAwEw/0y7VsLlaLA01jDNc+MEpzslZMz76DjnxKtpUF4ct4cS?= =?us-ascii?Q?hKXTp+w5Lch/vZmKfJtynglsGxVdhiA3N+xF3o36+/qmtnEzNk2QqZ1WhqOP?= =?us-ascii?Q?hLzxUSe4m5T9KQh+JaS9leCtgdr0vIGOFVdJVk0YA/GzYtf9W48UqaW4vm8V?= =?us-ascii?Q?Ut8jlt/M/gfnrBW+txOO8t24inhXCrf9Z0n0+X2orFHVAMHWfw8A8iwQxxiB?= =?us-ascii?Q?4jKCbld07T2gWqXykIep+9ms91ub8g4jo/aiWurIAji2KVk9ZPWoJ1PFgi/C?= =?us-ascii?Q?sX2+kMlrugsBsPYFIPxoUUNiuxxyvwNy4lBvNdmHsulykRI8OSyX2sZIoD4t?= =?us-ascii?Q?glrTKkR6jmdFpQsKBDojyiOJi/DuPJ6jngL3N4nJl88HXkVielres6hDfBsJ?= =?us-ascii?Q?0m2X8hy8Eh8JN2VIsGLXLVqX/6dj7lQQeS8WohMZ7qFa4HUPjGSvmGf21zAj?= =?us-ascii?Q?vgVyfAi1/fOxDloLwmrJU7iwU/ZELlxU4KXaRg44AhwlOztX0W65MipwBsrh?= =?us-ascii?Q?j0bwqGoA9iOhK35f9RpIgsApEej3KfcvBJpQZmYwzRGQBThuiqrYtBccF0It?= =?us-ascii?Q?laULiaYHdlfEJ2T48zbnWm7l5peSprnkj99JC6i8YN0k52hzKELn8C7IJnmG?= =?us-ascii?Q?ejoEceys2mmqvWtYoaQ6dMwCSR2m5srsud1IQMAwMhcnsv1WNPT5CNwGJ5Bv?= =?us-ascii?Q?hAe+fuv6x6mvLlYRAb09o78NDBIZ8CNkpgy13bp14fftEIbL0PwO3lp1fkYC?= =?us-ascii?Q?RNYNLxsh6oJXH/rKBQaZOxcYcFr8AULgmI57BCfORvitBMdWC6KC/62fpDvo?= =?us-ascii?Q?f5CnsTua1Zns4vG/VPb1KCeFaRI0Pnw9GUWM851cF34rHPU7WBCbZspz5eAj?= =?us-ascii?Q?Om77cuZFo5orrZcpibOOR91F36fvwRMT5e0IasAgPKycYZwEP3H0rRD7dFXP?= =?us-ascii?Q?sHlavhrQewJ46icZJ+0Qld+gpiVv0UCujzQ84l6/fFUtPC0eLYIwRAPpFFY1?= =?us-ascii?Q?q16jYQo/qVA3rmqna4PR4RqNbGcgqJkBlVCfUxsUGnTSRGC8izpLUFvgniao?= =?us-ascii?Q?KcrkSmcaSqmh1JxZLNecyq4dU+h0J+6vmOYen2yyWiZPDS/ugoLRjhWnraN0?= =?us-ascii?Q?sYM+LX9Z016GgwPNrD4FTdhesHFTZBqIwqILa/D5n4Hddmfkd60h4NLANVgE?= =?us-ascii?Q?hqrrf9vthrQ3B3eYxRwaEtihuLKdfdaNQL0l0/zNqXnkE5EEC5IVu2aKYoXo?= =?us-ascii?Q?X396gBF1+KWtAkM8Vpw60E+OAFjZBFZ9xgj7IcN/+zOnzBN5d4fhF42A9Ogz?= =?us-ascii?Q?lJQ3gizJJnb21VfW0GuglTZFfiUvfdUJNBg7Yk4GgF45mzBGhWKPy2nZnoee?= =?us-ascii?Q?9Z8+7MIaoq1wpCuOlcCwON5Ik5VRlUfVfrR+uSznuzXkHRz5YLXppeWtxBnR?= =?us-ascii?Q?6Qp4eajBewAGOkBm4kVOt1Yf6xDxM+FQQ7d22YzvRAOlh/1HsuqhT43ciJXh?= =?us-ascii?Q?LdeOD1+vFME9gYgwGtE6OGwwfWFaiQEiSMdAaaVH4ak5TxMNI2NRKi5umNay?= =?us-ascii?Q?2g=3D=3D?= X-OriginatorOrg: altera.com X-MS-Exchange-CrossTenant-Network-Message-Id: 92108049-50a2-4c68-672b-08de30a51a77 X-MS-Exchange-CrossTenant-AuthSource: DM8PR03MB6230.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Dec 2025 06:44:40.7415 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: fbd72e03-d4a5-4110-adce-614d51f2077a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: hsE8nz6FvZ6X3BsPk4kRTmZlBWrZ8lg/zx3YFT1ZbsqerJD7ZkpPwfndAbMBmeD1/aLQ89YGdsP9/yw5Dt/q1maDCTfM+KAAZ9gbVdeldn8= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB5847 Content-Type: text/plain; charset="utf-8" From: Adrian Ng Ho Yin Update dw_i3c_master_restore_addrs() to preserve existing bits in each Device Address Table (DAT) entry when restoring addresses. This prevents overwriting configuration bits during PM runtime resumes. Signed-off-by: Adrian Ng Ho Yin --- drivers/i3c/master/dw-i3c-master.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/drivers/i3c/master/dw-i3c-master.c b/drivers/i3c/master/dw-i3c= -master.c index 007dc53bc9f7..8378067aa58f 100644 --- a/drivers/i3c/master/dw-i3c-master.c +++ b/drivers/i3c/master/dw-i3c-master.c @@ -1725,11 +1725,16 @@ static void dw_i3c_master_restore_addrs(struct dw_i= 3c_master *master) if (master->free_pos & BIT(pos)) continue; =20 - if (master->devs[pos].is_i2c_addr) - reg_val =3D DEV_ADDR_TABLE_LEGACY_I2C_DEV | + reg_val =3D readl(master->regs + DEV_ADDR_TABLE_LOC(master->datstartaddr= , pos)); + + if (master->devs[pos].is_i2c_addr) { + reg_val &=3D ~DEV_ADDR_TABLE_STATIC_MASK; + reg_val |=3D DEV_ADDR_TABLE_LEGACY_I2C_DEV | DEV_ADDR_TABLE_STATIC_ADDR(master->devs[pos].addr); - else - reg_val =3D DEV_ADDR_TABLE_DYNAMIC_ADDR(master->devs[pos].addr); + } else { + reg_val &=3D ~DEV_ADDR_TABLE_DYNAMIC_MASK; + reg_val |=3D DEV_ADDR_TABLE_DYNAMIC_ADDR(master->devs[pos].addr); + } =20 writel(reg_val, master->regs + DEV_ADDR_TABLE_LOC(master->datstartaddr, = pos)); } --=20 2.49.GIT