From patchwork Wed May 17 19:52:37 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Martin Kurbanov X-Patchwork-Id: 95526 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp16645vqo; Wed, 17 May 2023 12:57:37 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ77bqB11kruDIr/db0TOAmY4XDxH4SXzv0o/jWEEGvTz8JFQXtK7YuUptaTWrNq4L/M3IFd X-Received: by 2002:a17:90b:690:b0:23f:b609:e707 with SMTP id m16-20020a17090b069000b0023fb609e707mr59016pjz.2.1684353456714; Wed, 17 May 2023 12:57:36 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1684353456; cv=none; d=google.com; s=arc-20160816; b=OXRTIDye7hLJY9vPX3nMhiCxAiKITHs6MFwNTBdJdeV2hFE5XcHS2S/Z6D/zAe5ItL sVmtndN8Feo3MnOHxRxrGyPJJtUW7UNmgofixpVYk0tRhaEID+Z4czLZCBy368nYTsEk HaksrIIUuI1RBB+NVafY1bOjMq08GCGFHOg0x8BwoIRd41gRT9tehZGtSczPHz9ZbKAE UUclsAcLJx3/Sc88tDnu7z+T46fHMUAvYdBcY7q8Hvq8uVpBAiusbzOeMmNIu9EFm10J ANvPVjfhbfiCBFEVqXrZvzB0/JYe2KKzJeNG2LLi+czzds+SnDUrWlX8ywGLimQ4G3MW nPjw== 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=JNhUbWAS8n7J7rlNy68VqnzZs3LbUb782cOmB+EEMIyOCRot46xdBUAn8HKI+tBlwM eAOO/0qyzTOb+ZKFhYimdVJuK06lWD/JGfWw8+tRukv2sbSZ8nxBSTTIeVYsWyDTTSa9 42Z8ligZh0wRFS1nPVC5V5jK4v8mSqRf2d+S8b9kV2QioAGcHdP6dtHOy2KAx/JF3OJx +7hb3XQUXfvylG6wve4C+bQfqh0UuGixBpXj/4siypw3Ajof/QuJyrVxaqeL55pdYf/8 Z0qd/lHD8xssVEu/m+sL6TtR0Gbwft+L84yOE5mARgp8J0BTmKZmH07PSlsbZXt6APTd H7Qg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@sberdevices.ru header.s=mail header.b=a74y8ElY; 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 lw13-20020a17090b180d00b00232f57260c1si2829779pjb.1.2023.05.17.12.57.22; Wed, 17 May 2023 12:57:36 -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=a74y8ElY; 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 S229903AbjEQTxB (ORCPT + 99 others); Wed, 17 May 2023 15:53:01 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37414 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229814AbjEQTxA (ORCPT ); Wed, 17 May 2023 15:53:00 -0400 Received: from mx.sberdevices.ru (mx.sberdevices.ru [45.89.227.171]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D936555A9; Wed, 17 May 2023 12:52:56 -0700 (PDT) Received: from s-lin-edge02.sberdevices.ru (localhost [127.0.0.1]) by mx.sberdevices.ru (Postfix) with ESMTP id 481E25FD48; Wed, 17 May 2023 22:52:54 +0300 (MSK) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sberdevices.ru; s=mail; t=1684353174; bh=I7/4CVIoC9+TGp8GwFUh+0busZ3FOuWXAFKMy9pjxXo=; h=From:To:Subject:Date:Message-ID:MIME-Version:Content-Type; b=a74y8ElYgByCpWEN5XnrNJrJR78ThBkVOn/Mrb3VHkTaruxDpYgXXfHlmJK4Unt9l R52fGfEZWU/AOV6TaJ17sp8VGqOfzGJaZBkAfL75zEubAgEehJLdj8QvAsREuVoJ6R 2ZWE3XrIQbJgwhpTKOxKds/0oLriJCilkz5CeF0WAXFm1gfmqIjt/HudvDm4g76oG3 58aj49wzWQXcnU9pcLzdqQjqvozz/zqaehITqHfcyuQnEYP+yl01945SG7x+iO1Vl1 cBsE0jiFwAJoV9SJRYvfoSIqPLV2Ztp1UglY3EVtSLHPXXWP6vWKl3kdqfb5NsC/NM i1sx/oZwIodSQ== Received: from S-MS-EXCH01.sberdevices.ru (S-MS-EXCH01.sberdevices.ru [172.16.1.4]) by mx.sberdevices.ru (Postfix) with ESMTP; Wed, 17 May 2023 22:52:54 +0300 (MSK) From: Martin Kurbanov To: Pavel Machek , Lee Jones , Rob Herring , Krzysztof Kozlowski , Andy Shevchenko CC: , , , , Martin Kurbanov , Krzysztof Kozlowski Subject: [PATCH v4 1/2] dt-bindings: leds: add binding for aw200xx Date: Wed, 17 May 2023 22:52:37 +0300 Message-ID: <20230517195238.34069-2-mmkurbanov@sberdevices.ru> X-Mailer: git-send-email 2.40.0 In-Reply-To: <20230517195238.34069-1-mmkurbanov@sberdevices.ru> References: <20230517195238.34069-1-mmkurbanov@sberdevices.ru> MIME-Version: 1.0 X-Originating-IP: [172.16.1.6] X-ClientProxiedBy: S-MS-EXCH01.sberdevices.ru (172.16.1.4) 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/17 11:04:00 #21328336 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?1766172610567843412?= X-GMAIL-MSGID: =?utf-8?q?1766172610567843412?= 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>; + }; + }; + }; + +...