Message ID | 20250506-led-fix-v1-1-56a39b55a7fc@axis.com |
---|---|
State | New |
Headers | show
Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2043.outbound.protection.outlook.com [40.107.20.43]) (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 B269427586F; Tue, 6 May 2025 10:39:53 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.20.43 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746527995; cv=fail; b=BXNraquWPVWhBBzKSVtl2Xlgj93LQ/Gmt4ztX3Ixy/LtZzZ+1ZJX88anjGUEXJISqdCdOjahX3O8gsbWW1Gvef9IlR1eR/7IgVUkN/SyTfFOphl7Nddrca0txSAqf9RSZKuELTVBTLA7uqkmaTEr8GDUSHZf/fJ2kUw6PuKlzTY= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746527995; c=relaxed/simple; bh=BgU7fx6avCP5yOFINW/nP3Keh8rcU4CjGfPOydaEyMs=; h=From:Date:Subject:MIME-Version:Content-Type:Message-ID:To:CC; b=Xk+FFPArtwsqyK3nGTg+tCTeB7XyooGV9pFOGzhAXskDeTWq3IbJvTVINnN0/KDOMRI+5LU4ANIZOZ8V/OnhUl61aqeLR//3Pworo5ZC1pJGMtnUoPih1TXJunIL+1FPo7rp1ZshyoCGezKrSCd+8+wjP8RlyaTFft0ZYk/GzOk= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=axis.com; spf=pass smtp.mailfrom=axis.com; dkim=pass (1024-bit key) header.d=axis.com header.i=@axis.com header.b=V2yHBZ8O; arc=fail smtp.client-ip=40.107.20.43 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=axis.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=axis.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=axis.com header.i=@axis.com header.b="V2yHBZ8O" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=v4+uVfF1s3Ze3B7RemKofV3ePQAIRW52BIRq6yu/QDTzsXcz9+3DXgwpYafD6PBK4+EH0zj26p0CwVY8uCitCedgyAiFz3G8k8HmpOSNihdOajn/F1bKEj4G/QjXIZOHIbgyqjiPNZYMLIqopKDH51AvLT5JlIJ4HstbA29/J57huYGWO1qQoYMAjI/0p2rUmJLrasDS1nvnE95LTkSO+3lcfmLKVEQK5mGpR+SkEuUmzK/KzGZjmbLskIiQSGohmk+9t1KSD1c3E/V1oHIuFRSJdUFs1djWJt6lMMEnhk0LzscZAz3Q7d52imqKcEmxb7IjzuIeWofRIPy1s03JEw== 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=h0IwOjjyD0TYbTv7t9EnKZ3XqeyOWtM9KKXP0tGn3aM=; b=PiTsnzSh6CxM/VpwaWawKsFrMudPIS1pJZaCbI+TYNFmW1BgOx6viRW9huu9QBjNlX1uIBFtS86InW3qzP1a83O1tXCR1mLV2vI76K6dMp4OLkUUgGMQXixvvIYADsnJKx9z9ejTs4L98Qv/DUFXysxetafXXL0pi5XnGFx4Etfd8D0LRUqcYDFky7REdtPg5slmGYYZmufu7qLqUWhVbwOznDoLXLw7kFXflffAe3tyXBUumbWiY8a9X0pHkTemSc2gcLB0MJSNEaY9sRPzVSRWgddpwpIBNsL5yTfmFKquwfEsKERVu30iMk/X5fHLfFg7KBtLJB/4k0yVF4eiqA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 195.60.68.100) smtp.rcpttodomain=kernel.org smtp.mailfrom=axis.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=axis.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=axis.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=h0IwOjjyD0TYbTv7t9EnKZ3XqeyOWtM9KKXP0tGn3aM=; b=V2yHBZ8OXWCvw9xZkvIaKSONqQGGGFe000Y/xVsYPmpd+Nn2oNaFSx4j+YQZUiYTZmHEMGw93mXAQuyg8StL2ad7JygGlRHFW5ChAb3XtmneCmN4XGmHpYh1nZOr8/Bd6YVvsB5ZT9moih6agQhAjwp5029EJRSvCYG6uHExLyw= Received: from AM0PR04CA0133.eurprd04.prod.outlook.com (2603:10a6:208:55::38) by AM9PR02MB7060.eurprd02.prod.outlook.com (2603:10a6:20b:272::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8722.12; Tue, 6 May 2025 10:39:50 +0000 Received: from AM4PEPF00025F99.EURPRD83.prod.outlook.com (2603:10a6:208:55:cafe::9e) by AM0PR04CA0133.outlook.office365.com (2603:10a6:208:55::38) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8699.30 via Frontend Transport; Tue, 6 May 2025 10:39:50 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 195.60.68.100) smtp.mailfrom=axis.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=axis.com; Received-SPF: Pass (protection.outlook.com: domain of axis.com designates 195.60.68.100 as permitted sender) receiver=protection.outlook.com; client-ip=195.60.68.100; helo=mail.axis.com; pr=C Received: from mail.axis.com (195.60.68.100) by AM4PEPF00025F99.mail.protection.outlook.com (10.167.16.8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8746.3 via Frontend Transport; Tue, 6 May 2025 10:39:50 +0000 Received: from se-mail01w.axis.com (10.20.40.7) by se-mail01w.axis.com (10.20.40.7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.44; Tue, 6 May 2025 12:39:50 +0200 Received: from se-intmail02x.se.axis.com (10.4.0.28) by se-mail01w.axis.com (10.20.40.7) with Microsoft SMTP Server id 15.1.2507.44 via Frontend Transport; Tue, 6 May 2025 12:39:50 +0200 Received: from pc51235-2237.se.axis.com (pc51235-2237.se.axis.com [10.96.29.3]) by se-intmail02x.se.axis.com (Postfix) with ESMTP id 0858C747; Tue, 6 May 2025 12:39:50 +0200 (CEST) Received: by pc51235-2237.se.axis.com (Postfix, from userid 3319) id 0156F402A5E1; Tue, 6 May 2025 12:39:49 +0200 (CEST) From: Johan Adolfsson <johan.adolfsson@axis.com> Date: Tue, 6 May 2025 12:39:32 +0200 Subject: [PATCH RFC] leds: leds-lp50xx: Handle reg to get correct multi_index Precedence: bulk X-Mailing-List: linux-leds@vger.kernel.org List-Id: <linux-leds.vger.kernel.org> List-Subscribe: <mailto:linux-leds+subscribe@vger.kernel.org> List-Unsubscribe: <mailto:linux-leds+unsubscribe@vger.kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-ID: <20250506-led-fix-v1-1-56a39b55a7fc@axis.com> X-B4-Tracking: v=1; b=H4sIAOPmGWgC/6tWKk4tykwtVrJSqFYqSi3LLM7MzwNyDHUUlJIzE vPSU3UzU4B8JSMDI1MDIyNT3ZzUFN20zApdExOTtCRTExNTC5NEJaDqgqJUoDDYpOjY2loAhkZ AxFkAAAA= To: Lee Jones <lee@kernel.org>, Pavel Machek <pavel@kernel.org> CC: <linux-leds@vger.kernel.org>, <linux-kernel@vger.kernel.org>, "Johan Adolfsson" <johan.adolfsson@axis.com>, <kernel@axis.com> X-Mailer: b4 0.13.0 X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM4PEPF00025F99:EE_|AM9PR02MB7060:EE_ X-MS-Office365-Filtering-Correlation-Id: bc1a31f6-316c-4c53-ed62-08dd8c8a549b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|36860700013|1800799024|82310400026; X-Microsoft-Antispam-Message-Info: =?utf-8?q?jHWM9zWinpBG/x8Hp2NCp7jJjisDNzb?= =?utf-8?q?Ncr0OHr6/U8/H5NXgcQV33oqG12Nof+LTwHrrwLeMW/YS89pZ8alAI+S1Z734Uf1v?= =?utf-8?q?iYTXg950BCcYngYa1D+LgJwfGLFbSziWKXcswucANnwrMYgJB0Z3EOsbinDo6WpKK?= =?utf-8?q?lA9954bKR/8cTDuxpOPccziuIJKbs2KderNF6cgkhGmeV5QDJaKuOXFs6099lXaNB?= =?utf-8?q?ZW49PkytG0w7BA7Fw+ovZrnW3o9418VDXJcbvWHzu0cuoh6NV0GDLzSHOonDxOy49?= =?utf-8?q?ClbhW0HiT85thRBp5FaKvX7OH8yjrpuYJ0d8cMqjI9LpCBz8p8OryISPF7uXLDAYt?= =?utf-8?q?VQ83e7aZmM75h1A5fe5oR9DUSIkD2KyeM3BIPFhNLZiH1MYxK5TyyesdxFN7kM4l3?= =?utf-8?q?sY2AaMLMrE/QxtY25eQWrhC5KFHKBmmAbQBoJmw7gf3bFDUWyGUgLuDMoDJIT3/wz?= =?utf-8?q?9rrlj4IbLSvq6b3Ca5Nth1c/qE4EAOKUQtkHND7pbYQa2IifLvEFMCfB01KKXiexD?= =?utf-8?q?vguFEvTqhd024fHlXFV6zZKrdWFUu7HAn0h5RVMqXeaMqYwEwQhSJEhbSxx504iOO?= =?utf-8?q?UksqmPOc01O7kwWMRqHi+hn5R0vG+Dc//NbYrXLwAylTxLfO4gyJYKk+306tovKCP?= =?utf-8?q?McASoL7SOKC1VDavwTF/uay2ybPmdPdG5TIHqp7IkRKgLOEzL0KzqObHNZdQxODg9?= =?utf-8?q?ND6j1lP2I2bHZQPAAfpDBVJnGekgF1F2CQ+Bo3YfU3uEa52YpVHaMvdFDQLIYdn01?= =?utf-8?q?tefytlCc412Tq4PNKbl0f/xGLOCPoyFPYlE3c2bDJNihevGUj9G0DwO3xUunLwRsu?= =?utf-8?q?qnPZy+aQbg1KFXrXBScFSsdlG1uDxMrs2/JbNKW7hqgUwJK8QO90mXgK9WTj3ipHr?= =?utf-8?q?Dlpdaoa7g6fiK7O4S6bV8OHPsSrDGaXPB5DR2D5SFtsjla5aI1S8RWg3/iGy9hWf6?= =?utf-8?q?Q+OBQ7n6XB5lMGou3SZ0p3+36cZR8to86EakQ/sWof+9GEQpXLjDfMTyuU9HbkV0U?= =?utf-8?q?d1y4Fft1+SoSBJt9Cy8LL87848VEfaDKLMlAsRs0ybY5+yQRJY8q86Z1munHIfYPo?= =?utf-8?q?Q1GZaE3d7YGuhkYj1H76NdZBkEEBDNg+4365T3zMhmNJTXNvcJFfcSC4+DRbEDG01?= =?utf-8?q?l1L+P2hjihQCOxCOIA1of95HwDxHI2BN+JKotu5IANDgTNhasCosAcu2bQc8ofR7C?= =?utf-8?q?VdGdIR5Me51e5pP6UX5sloD0aXGcVWcIQjceF17OT0c4z2mhSZu0TKf41Fs+RsASd?= =?utf-8?q?DhPaEf0ZTOGNEC4lMyGVZjD2yBXOGYzQugsBPxa9TtY8OgGpRdPEW4VrnJvWHWBqL?= =?utf-8?q?9arxXRw20W2NEwoTQWCHlUxBVZuxiMc9Cb1aNTfT5JWZ4xDu/3Ewy5FlpLVZO46Oo?= =?utf-8?q?sHyXlj8gQRZgyWk3/ArcIfPh3OTpm5YV5JrduWUnMUUOgO/QdJcP4hGB36gJziUiF?= =?utf-8?q?tndmaXX/lV?= X-Forefront-Antispam-Report: CIP:195.60.68.100;CTRY:SE;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:mail.axis.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(376014)(36860700013)(1800799024)(82310400026);DIR:OUT;SFP:1101; X-OriginatorOrg: axis.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 May 2025 10:39:50.8945 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: bc1a31f6-316c-4c53-ed62-08dd8c8a549b X-MS-Exchange-CrossTenant-Id: 78703d3c-b907-432f-b066-88f7af9ca3af X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=78703d3c-b907-432f-b066-88f7af9ca3af;Ip=[195.60.68.100];Helo=[mail.axis.com] X-MS-Exchange-CrossTenant-AuthSource: AM4PEPF00025F99.EURPRD83.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR02MB7060 |
Series |
[RFC] leds: leds-lp50xx: Handle reg to get correct multi_index
|
expand
|
diff --git a/drivers/leds/leds-lp50xx.c b/drivers/leds/leds-lp50xx.c index 02cb1565a9fb..48db024081f5 100644 --- a/drivers/leds/leds-lp50xx.c +++ b/drivers/leds/leds-lp50xx.c @@ -476,6 +476,7 @@ static int lp50xx_probe_dt(struct lp50xx *priv) return -ENOMEM; fwnode_for_each_child_node(child, led_node) { + int multi_index = num_colors; ret = fwnode_property_read_u32(led_node, "color", &color_id); if (ret) { @@ -483,8 +484,15 @@ static int lp50xx_probe_dt(struct lp50xx *priv) dev_err(priv->dev, "Cannot read color\n"); return ret; } + ret = fwnode_property_read_u32(led_node, "reg", &multi_index); + if (ret) { + multi_index = num_colors; + } else if (multi_index >= LP50XX_LEDS_PER_MODULE) { + dev_warn(priv->dev, "reg %i out of range\n", multi_index); + multi_index = num_colors; + } - mc_led_info[num_colors].color_index = color_id; + mc_led_info[multi_index].color_index = color_id; num_colors++; }
mc_subled used for multi_index needs well defined array indexes, to guarantee the desired result, optionally use reg for that. If devicetree child nodes is processed in random or reverse order you may end up with multi_index "blue green red" instead of the expected "red green blue". If user space apps uses multi_index to deduce how to control the leds they would most likely be broken without this patch if devicetree processing is reversed (which it appears to be). arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-fuji.dts has reg set but I don't see how it can have worked without this change. If reg is not set, the previous behavior is kept, index will be in the order nodes are processed. Signed-off-by: Johan Adolfsson <johan.adolfsson@axis.com> --- Since devicetree nodes are (sometimes?) processed in reverse order, support reg as the actual multi_index index so yo get well defined color order presented in the multi_index file. Not sure if reusing reg for this is the correct way or if another property such as "multi_index" or similar should be used instead. Looks like reg is used for similar things at least. Or should the whole "reverse the devicetree" problem be fixed instead? --- drivers/leds/leds-lp50xx.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) --- base-commit: 38fec10eb60d687e30c8c6b5420d86e8149f7557 change-id: 20250225-led-fix-444fb544584a Best regards,