From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) (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 304EA3624D3 for ; Wed, 1 Jul 2026 16:15:57 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1782922560; cv=none; b=SXg86NvP4RvPfhjtyWJk9a3zP6KLcyKd+PNuvc4Wi1YxtPGOqqfRSI+p0GQYLSS2CQeU68985sUbTC6sku7hCHl0L4rn2hHfpQIjJbl3lXCgVswvpcHtIAJ6VJpW8WpSyfsd9Mgjwu1Hfl8p7P+Ce84H4YYN+wsjwjeAbBP1mQs= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1782922560; c=relaxed/simple; bh=pFSbTRCJzU6q36Dh8FaRMCEnLAZ/U8kQDE+7od1r148=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=sTUV7Kyu0M7aKEFptoYSJ2yIN0cmd+13zSoU+YmXHW0+H1hMJjmPcR5wicewPcJJEMQIW7TSXAUePQE5TWt7mOIMNAyxLIRZka8gIDlRZ2Sr35oc8EHHffv6QuWNtrNXMJMbgM4mP3ArNogkCgoSKgd527upL5m920s7lRRHpQw= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=DoMrJ3IL; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=W1a4J6pE; arc=none smtp.client-ip=205.220.180.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="DoMrJ3IL"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="W1a4J6pE" Received: from pps.filterd (m0279870.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 661FoEsd1532738 for ; Wed, 1 Jul 2026 16:15:57 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= B/+4MD3mpODzSWY/mOJb34WlGF9b+ZYiU+CvAZt4d58=; b=DoMrJ3ILkQpfurPb 68aSgMsXwWYr6UrjiFHU8PhniBKLnq2Q/sOaTHcQ6Ad9mDguSAcetcP4vN03SWbT JnTP3u89Vw9mm0nhtI0iE+ggNLpxU0ho5G9802bEEsFUnD12oXelVaeq3+a7WNxs 34gH6FdhJUNpJYs249HO60fchMWUUTHy/8bPABpSDR4Dr3J99SRLRL9G6Y+VgJCk cUkxNLOpz9+IYgko9HqcE692xrISEyUSlPbiqDkZwtnsqkpTvqRYjIgpS+ldR1+1 +//4Th3OuW2P9AkF0ui/MiaTrc0x4aEF3Aaiu1Bpz3Alfk0hhVA53Gl31EBQrNSu xF9wLw== Received: from mail-vs1-f69.google.com (mail-vs1-f69.google.com [209.85.217.69]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4f4x0tjfb6-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 01 Jul 2026 16:15:57 +0000 (GMT) Received: by mail-vs1-f69.google.com with SMTP id ada2fe7eead31-737d352d3b0so756317137.1 for ; Wed, 01 Jul 2026 09:15:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1782922556; x=1783527356; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=B/+4MD3mpODzSWY/mOJb34WlGF9b+ZYiU+CvAZt4d58=; b=W1a4J6pEYuLqT60wjLJLBBXHlQySK6mXVzRMtRiKkuPGUC9hsjI5zBQOiASjeSWO+B DsSPaKr/ccsiGqJs9Uo4+FcxxYorz4wx0RSSTLgfXK1Q3IkqyRWUuPk/kFEyKaRlOuQf 9Kz5TzETzY9LCOKN8JmnsSMiNEHiCDhS+19MqBgM3wY6js43YGme1B6ea6g8mTfQDNL3 A7/E3dAPT8FnpsR7xH33xfnELNaHsFMZHjGI0gBE5klX6HqJqnn5MR7NJ9U0J+b1x+GS O6o/GIpg0SVGTHD4G+ZGONZKY0689n84Zk5PWOy6Rq4QE1HR6Q4mn5DGd6YksP9ze05y y6lg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1782922556; x=1783527356; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=B/+4MD3mpODzSWY/mOJb34WlGF9b+ZYiU+CvAZt4d58=; b=lfuGdniL9YOhfDilJi9GYM9sFTOJp1Cl5rGnVzSKTLxdpnCFw19XRILxN49pNrbOqQ 92lB+rQzHKq2Rwj4gys5Rlk/0gCNDAK2I5QyEJMBYwXr923ygJKnmUpKsWG/ztPQKalv kNgwl+hV4XnZrpk/4UBEdxzeiBlaGhNvUyKro7bWZ8pbd5ynr6xVg9ChMAfR9yG0hw+C KOoM+404nhuQRt+xeORq4jhYQ6bbKrYfmtR88q/Mzh+3/Ueu7NsYk5dNgRZ3DbftaKVj EjDkglD6SXj4sQ5cyZwERFK2aYtg+wcACaHI5rFIqGUj12yiXJjfe1cZ6bPVJ9R+mItu xUfg== X-Forwarded-Encrypted: i=1; AHgh+RrJXKkjCwEbOsfAO/KsqVrR+3cuMIm0FFZT7HZagSPoeVF4t3BcrWW9+Nk+ocehu/Pmon9N/+uU7Bia43U=@vger.kernel.org X-Gm-Message-State: AOJu0YzWnOhG+FztJMtz8i0ijYZz7IFDATzLGSwxr5bABh2mTuf4H0rl Nj80hi83KNlAbB1di+dq9/TDUSeMED4OpKwgUdsZeRhwnlbWyRfdjres0zty/JYiuCZF9BmiS7z YCiMoeZKOpFs45gg+o3mV91nmNPmlQfWiD++TozQUYgGiXpRUyTYaWDIkeS3Yp792Buk= X-Gm-Gg: AfdE7clLbxYcweyJu+4teSsWR6AcHpS7lY96LP84S2cgGFbIxHE4uwNMRnwgUGmn6h+ isPjPfMeTvFsltyuxNizOi8wyr/0C3OIwkmID+INdNKGjYbq2Ta3bKwKgfSOLP7ofb79KHvLFCY 8Z7JvBfyhJzoX265RzvU/ZNZplOZt8mWAiDbiSiKjsB3hg+E9h3lb5nAMo9q8ss//i9nOnuGZ9C 8kk7+jcw4/nhLK/CY3rrxNcYVZMx4fNNukj7RFyzV6zn7rlzSck4utbpgU/2k1ifKiiTzZpG4av HyE2GLbED8FKJVt9P/pnT/ZA6bsV325eaCJHDbDRl53MJ0kj/L26qJdy8j/2xQp4VBMWvzY94G/ dUG6M25SaQloosfSbvLUU3RF2NkhPKT+c2SfMT1fnyIm/AXMRaJI400DG/YcoJv/ibMvriAUBJa rdN+jxHL1fWG5T0uKPEhHwPyh/NKnRKp9B2X8/mR7QrUq6XddzkpUzK1n0s1ZSV1s= X-Received: by 2002:a05:6102:2c0d:b0:737:5c42:858b with SMTP id ada2fe7eead31-73dbe25087cmr915935137.11.1782922556246; Wed, 01 Jul 2026 09:15:56 -0700 (PDT) X-Received: by 2002:a05:6102:2c0d:b0:737:5c42:858b with SMTP id ada2fe7eead31-73dbe25087cmr915878137.11.1782922555676; Wed, 01 Jul 2026 09:15:55 -0700 (PDT) Received: from QCOM-eG0v1AUPpu.na.qualcomm.com ([2a01:e0a:830:450:809d:5d56:19d9:ff8b]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-c1288d1ea70sm299570266b.3.2026.07.01.09.15.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 01 Jul 2026 09:15:54 -0700 (PDT) From: Loic Poulain Date: Wed, 01 Jul 2026 18:15:51 +0200 Subject: [PATCH v2 1/3] dt-bindings: leds: nxp,pca963x: add multicolor LED support Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <20260701-monza-leds-v2-1-c1be0b472926@oss.qualcomm.com> References: <20260701-monza-leds-v2-0-c1be0b472926@oss.qualcomm.com> In-Reply-To: <20260701-monza-leds-v2-0-c1be0b472926@oss.qualcomm.com> To: Lee Jones , Pavel Machek , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Laurent Pinchart , Bjorn Andersson , Konrad Dybcio Cc: linux-leds@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org, Loic Poulain X-Mailer: b4 0.14.2 X-Proofpoint-GUID: yHYyqB46-IjFSNH7mc3qjpr0-S2-xPdY X-Proofpoint-Spam-Info: AW1haW4tMjYwNzAxMDE3MiBTYWx0ZWRfX0cgIdK3iKpKm ipO7Ehm0Dma6ttUvCd+zl4UERvYrkE04QjUSF1j2QBJJiI2zd/7vxYlTdwxvQaY6lxuyJ3pfWzs Jo/aRia6f9XTavstT4TqzfDNAVgvhFw= X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNzAxMDE3MiBTYWx0ZWRfXwLpEho8u9wwg JiiEnWN70D4vAWk0PrAWVEvK1H2r5HgQMpFK9E9sZFXxxf/fOdZqVi+whs5SVNq2P9p5sluvW6p 8OriHlDKiC2F1bR/SbZm/yieNDU+DmaaQywFIZ2GywwCO8b4w2yd/CGuo6CLe8f7yqoL798yess SWA+Fbsr7uLOGa4LOoxq09TFL6+0Uaqd00Tbe4OTbjCYWwLafZIzo8/AT+vD2xw68/Q/hzerXkS lsDYfXXnYDTjcJpNCpK/2flyRPkzhsaPkzuAnAr+gZna5PiFkGLR7QLzHi/sntJhyE9Duazeety Ou86ORMUyFBHLWbdpdFvbZwjXW4QWcgxQwiO5FmxqenD/Q5i/ePMaiMLMHqAccAhF4Is6ajOKfV uORwyWaQ0fLcKrtDxc0T/BbX1Aw+6GI5QBqtumwaiqJ5ituENNeeMGvQzBRBRyMEL4fVZT+B7Kh 2hYa9ZuTcdkqkDlI02g== X-Authority-Analysis: v=2.4 cv=T5+8ifKQ c=1 sm=1 tr=0 ts=6a453d3d cx=c_pps a=5HAIKLe1ejAbszaTRHs9Ug==:117 a=xqWC_Br6kY4A:10 a=IkcTkHD0fZMA:10 a=RAioF0-LDSMA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=gowsoOTTUOVcmtlkKump:22 a=EUspDBNiAAAA:8 a=bawOQVNTVwYUprhOnAsA:9 a=QEXdDO2ut3YA:10 a=gYDTvv6II1OnSo0itH1n:22 X-Proofpoint-ORIG-GUID: yHYyqB46-IjFSNH7mc3qjpr0-S2-xPdY X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.125,FMLib:17.12.100.49 definitions=2026-07-01_03,2026-06-26_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 spamscore=0 adultscore=0 lowpriorityscore=0 phishscore=0 bulkscore=0 clxscore=1015 priorityscore=1501 malwarescore=0 impostorscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2606150000 definitions=main-2607010172 Add support for grouping individual PCA963x channels into a multicolor LED by introducing a multi-led@N node pattern. This follows the convention established by other multicolor LED drivers such as kinetic,ktd202x. This is necessary to support and model hardware setups where multiple PWM channels drive a single physical RGB LED. Signed-off-by: Loic Poulain --- .../devicetree/bindings/leds/nxp,pca963x.yaml | 79 ++++++++++++++++++++++ 1 file changed, 79 insertions(+) diff --git a/Documentation/devicetree/bindings/leds/nxp,pca963x.yaml b/Documentation/devicetree/bindings/leds/nxp,pca963x.yaml index 938d0e48fe51bce82779c4457c8e99cb6d80fe70..04b05b8195c18ae9fc1c1cb9d3c694d819ea88e5 100644 --- a/Documentation/devicetree/bindings/leds/nxp,pca963x.yaml +++ b/Documentation/devicetree/bindings/leds/nxp,pca963x.yaml @@ -74,6 +74,39 @@ patternProperties: required: - reg + "^multi-led@[0-9a-f]+$": + type: object + $ref: leds-class-multicolor.yaml# + unevaluatedProperties: false + + properties: + reg: + minimum: 0 + + "#address-cells": + const: 1 + + "#size-cells": + const: 0 + + patternProperties: + "^led@[0-9a-f]+$": + type: object + $ref: common.yaml# + unevaluatedProperties: false + + properties: + reg: + minimum: 0 + + required: + - reg + + required: + - reg + - "#address-cells" + - "#size-cells" + allOf: - if: properties: @@ -137,4 +170,50 @@ examples: }; }; + - | + #include + + i2c { + #address-cells = <1>; + #size-cells = <0>; + + led-controller@62 { + compatible = "nxp,pca9633"; + reg = <0x62>; + #address-cells = <1>; + #size-cells = <0>; + + /* Three channels controlling one RGB LED */ + multi-led@0 { + reg = <0>; + color = ; + function = LED_FUNCTION_STATUS; + #address-cells = <1>; + #size-cells = <0>; + + led@0 { + reg = <0>; + color = ; + }; + + led@1 { + reg = <1>; + color = ; + }; + + led@2 { + reg = <2>; + color = ; + }; + }; + + /* Remaining channel used as a plain white LED */ + led@3 { + reg = <3>; + color = ; + function = LED_FUNCTION_STATUS; + }; + }; + }; + ... -- 2.34.1