From patchwork Fri May 19 13:04:02 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Martin Kurbanov X-Patchwork-Id: 96418 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp1226793vqo; Fri, 19 May 2023 06:15:48 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ6TyjYkNQYYK37/7o5Csn2R86zrtr3tOKArxAXCULmpvn9JoQl1qF0JIwx589D4hgDTSWE6 X-Received: by 2002:a05:6a20:c1a3:b0:100:442b:52f8 with SMTP id bg35-20020a056a20c1a300b00100442b52f8mr2044566pzb.22.1684502147940; Fri, 19 May 2023 06:15:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1684502147; cv=none; d=google.com; s=arc-20160816; b=XMFCValyrt6kBTW5YbN/pzW2VI26mm+4oza5vCKJUdDcpK+mh4ecJfWY0n+2I3kAUn 0aUsUgvgpYe8b+NvqawA4q9ISzw5DUX7ZihFwIEXcrxEgjrlIqynYTnxVr2+qn9Iv+/y St7xjDpN1z0RvDBpVEur+Uk+RkcP2G4fqY9b0nkSH2+BhXqqv/pvedKbPDp4ln2fNtzV 2TyWQmE7GXIEjLRilQa+JRmJh2VbbNAuIEx05FbHcqilD2SsOzbMqDtJDuAMDFB7vnM9 d6AFx9+9oQOiuBdSvMo18ddYlMRnHt353Dcy0wABrYk8/ITkZ4IrM3Pyy2QIcRjLr/qh RUEA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=I7/4CVIoC9+TGp8GwFUh+0busZ3FOuWXAFKMy9pjxXo=; b=Qu2G3+EtCDIn4Wv1KOmLVcT+SB7j/hRC0x3XtPR3OBUotSagSwQ7DsNaEB05tomaAj SbMh43KsqT/1mlM3g+RKQWAie2FHJTUhtq61cz2fWA25jovNYN2dreaSS7XKzRr3/w+V V2S+m4+ZwwnrWfp4+1DAKo9AuFS/ObkcAe8qF5FlQM69ghLGzvxZrERTxwyEq7qDpQum ChKZU5fmQxRurJ3RS6/BSY2A0AXuju7vp/cG0BNawBuyvRWoJMrXg2iGDsJ0inLERtR+ Mj/0rgCIesrL3D1TNfj5ouxUYWRmctBYEJdfVFBEcMD0WcC4SGvlUm5ejd51f7VYT4xl rUjw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@sberdevices.ru header.s=mail header.b=I8ZTx917; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=sberdevices.ru Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id bs10-20020a63280a000000b005211941267asi3608501pgb.153.2023.05.19.06.15.31; Fri, 19 May 2023 06:15:47 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@sberdevices.ru header.s=mail header.b=I8ZTx917; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=sberdevices.ru Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231934AbjESNFT (ORCPT + 99 others); Fri, 19 May 2023 09:05:19 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40766 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231923AbjESNEu (ORCPT ); Fri, 19 May 2023 09:04:50 -0400 Received: from mx.sberdevices.ru (mx.sberdevices.ru [45.89.227.171]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id DD733D2; Fri, 19 May 2023 06:04:46 -0700 (PDT) Received: from s-lin-edge02.sberdevices.ru (localhost [127.0.0.1]) by mx.sberdevices.ru (Postfix) with ESMTP id 575765FFE8; Fri, 19 May 2023 16:04:43 +0300 (MSK) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sberdevices.ru; s=mail; t=1684501483; bh=I7/4CVIoC9+TGp8GwFUh+0busZ3FOuWXAFKMy9pjxXo=; h=From:To:Subject:Date:Message-ID:MIME-Version:Content-Type; b=I8ZTx9177EAVj7bGxAQygZyLc0cWXMHPMsnmYho+pLFvRxdsWJ3dDa6DFGFOJ5s33 YKoDfC4yommZeaJJpoLfDEEtx+AHLXPlOAhc5Ay9yo32kQE8m0GxgwqwZqyIckBAqV hHWFkjnIh0KuaQnO4aGEKutbToBp8wvoqwNhJK584z17v66rvxsQYTOQKT+MG3Eymi A7SAdDZwybJJUN3B/W66L7yeRhQh1Eotwp96hBAv44k3F4FR4JRvym/y6Gufrh4mGP dBUu7w/ffkIfOyaEigoN7H4pE2FyQwktIE1HfJ+csGIUZH3LNmtP2iYnXU0UjKE5WF ttTt4PtJJzhqQ== Received: from S-MS-EXCH01.sberdevices.ru (S-MS-EXCH01.sberdevices.ru [172.16.1.4]) by mx.sberdevices.ru (Postfix) with ESMTP; Fri, 19 May 2023 16:04:42 +0300 (MSK) From: Martin Kurbanov To: Pavel Machek , Lee Jones , Rob Herring , Krzysztof Kozlowski , Andy Shevchenko CC: , , , , Martin Kurbanov , Krzysztof Kozlowski Subject: [PATCH v5 1/2] dt-bindings: leds: add binding for aw200xx Date: Fri, 19 May 2023 16:04:02 +0300 Message-ID: <20230519130403.212479-2-mmkurbanov@sberdevices.ru> X-Mailer: git-send-email 2.40.0 In-Reply-To: <20230519130403.212479-1-mmkurbanov@sberdevices.ru> References: <20230519130403.212479-1-mmkurbanov@sberdevices.ru> MIME-Version: 1.0 X-Originating-IP: [172.16.1.6] X-ClientProxiedBy: S-MS-EXCH02.sberdevices.ru (172.16.1.5) To S-MS-EXCH01.sberdevices.ru (172.16.1.4) X-KSMG-Rule-ID: 4 X-KSMG-Message-Action: clean X-KSMG-AntiSpam-Status: not scanned, disabled by settings X-KSMG-AntiSpam-Interceptor-Info: not scanned X-KSMG-AntiPhishing: not scanned, disabled by settings X-KSMG-AntiVirus: Kaspersky Secure Mail Gateway, version 1.1.2.30, bases: 2023/05/19 06:43:00 #21342157 X-KSMG-AntiVirus-Status: Clean, skipped X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_NONE, T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1766328524138902958?= X-GMAIL-MSGID: =?utf-8?q?1766328524138902958?= Add YAML devicetree binding for AWINIC AW20036/AW20052/AW20074 led driver. Signed-off-by: Martin Kurbanov Reviewed-by: Krzysztof Kozlowski --- .../bindings/leds/awinic,aw200xx.yaml | 126 ++++++++++++++++++ 1 file changed, 126 insertions(+) create mode 100644 Documentation/devicetree/bindings/leds/awinic,aw200xx.yaml diff --git a/Documentation/devicetree/bindings/leds/awinic,aw200xx.yaml b/Documentation/devicetree/bindings/leds/awinic,aw200xx.yaml new file mode 100644 index 000000000000..feb5febaf361 --- /dev/null +++ b/Documentation/devicetree/bindings/leds/awinic,aw200xx.yaml @@ -0,0 +1,126 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/leds/awinic,aw200xx.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: AWINIC AW200XX LED + +maintainers: + - Martin Kurbanov + +description: | + This controller is present on AW20036/AW20054/AW20072. + It is a 3x12/6x9/6x12 matrix LED programmed via + an I2C interface, up to 36/54/72 LEDs or 12/18/24 RGBs, + 3 pattern controllers for auto breathing or group dimming control. + + For more product information please see the link below: + aw20036 - https://www.awinic.com/en/productDetail/AW20036QNR#tech-docs + aw20054 - https://www.awinic.com/en/productDetail/AW20054QNR#tech-docs + aw20072 - https://www.awinic.com/en/productDetail/AW20072QNR#tech-docs + +properties: + compatible: + enum: + - awinic,aw20036 + - awinic,aw20054 + - awinic,aw20072 + + reg: + maxItems: 1 + + "#address-cells": + const: 1 + + "#size-cells": + const: 0 + + awinic,display-rows: + $ref: /schemas/types.yaml#/definitions/uint32 + description: + Leds matrix size + +patternProperties: + "^led@[0-9a-f]$": + type: object + $ref: common.yaml# + unevaluatedProperties: false + + properties: + reg: + description: + LED number + maxItems: 1 + + led-max-microamp: + default: 9780 + description: | + Note that a driver will take the minimum of all LED limits + since the chip has a single global setting. + The maximum output current of each LED is calculated by the + following formula: + IMAXled = 160000 * (592 / 600.5) * (1 / display-rows) + And the minimum output current formula: + IMINled = 3300 * (592 / 600.5) * (1 / display-rows) + +required: + - compatible + - reg + - "#address-cells" + - "#size-cells" + - awinic,display-rows + +allOf: + - if: + properties: + compatible: + contains: + const: awinic,aw20036 + then: + properties: + awinic,display-rows: + enum: [1, 2, 3] + else: + properties: + awinic,display-rows: + enum: [1, 2, 3, 4, 5, 6, 7] + +additionalProperties: false + +examples: + - | + #include + + i2c { + #address-cells = <1>; + #size-cells = <0>; + + led-controller@3a { + compatible = "awinic,aw20036"; + reg = <0x3a>; + #address-cells = <1>; + #size-cells = <0>; + awinic,display-rows = <3>; + + led@0 { + reg = <0x0>; + color = ; + led-max-microamp = <9780>; + }; + + led@1 { + reg = <0x1>; + color = ; + led-max-microamp = <9780>; + }; + + led@2 { + reg = <0x2>; + color = ; + led-max-microamp = <9780>; + }; + }; + }; + +...