From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 58854C4332F for ; Sat, 24 Dec 2022 12:54:03 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230343AbiLXMyC (ORCPT ); Sat, 24 Dec 2022 07:54:02 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:47976 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229528AbiLXMyB (ORCPT ); Sat, 24 Dec 2022 07:54:01 -0500 Received: from mail-lf1-x12d.google.com (mail-lf1-x12d.google.com [IPv6:2a00:1450:4864:20::12d]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D6F6621AF for ; Sat, 24 Dec 2022 04:53:59 -0800 (PST) Received: by mail-lf1-x12d.google.com with SMTP id g13so10323472lfv.7 for ; Sat, 24 Dec 2022 04:53:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=zv9IznoKeqq4XhdztR/BEG3Np/4v5us6ivTnhTur1yY=; b=VEhDA7Skf/Euj6CB+4WOCDIlaiEh0+vrmGApjwwGSqvB0tFz/UXpDq0ZiY4SYLaGW7 F+RlU2Tv3bcdEnYc/wfC/3+iq8KSub7YapZDDv/NbMQndGiukFR+ngew9IuA8LRZ85yO zO5uuoASGTB7c/KJ5vySrRPIXE1aPQEcwdEyDnEMRm0elCf5sbEbs3GUIMaFnTZn7+FJ ZeJJmbqTCSWxDiZWPEcam5KztnZnB4KO+ENgQwIjCEJAJMMyDD59ShhSDVRFPXn61Xh9 TjwT86HXVR1Hw0ziAJ6TjlWpHchzxGc3JO20eHOl5BHtbpDDe0TBQZ6hetr4nmlQJV8J b+Tg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=zv9IznoKeqq4XhdztR/BEG3Np/4v5us6ivTnhTur1yY=; b=0qcQQ7iuLt9M+aMVjqS+WvMoKrwtOta++0qenejSJvfCMdRtwoxJQ8jC5xDC+N5tP4 SfZFw15XXiKHUmtdQhNBagNKP5qxBvqSzUnEI7IVv7mFM/7yikVwxkPUcglhuaBIgJ1r tg9jIO1EHiiMwJnbRALidVOSsdwOvl6Rx3kRLNi3tVYunrPBkSh5KxaVRQMVLXJ5I2KX D//mOxDrnVnGKIfn2l2zQ9mMnwBMQURusSAHsfJrVtiIsHzzd3NyHVKdlIa2tzi0XcuW g0shL5/zELSBTOgbuBW1ObDwhVgPozZQrCXrKX6H3IGuSrJGY3KYEHoyHxguIFp1MgJ1 4KGw== X-Gm-Message-State: AFqh2krZvd7X/Ya5NILR4RS0IQcF/IvO+7Z5xqj9Vdo5r2/gIqFpnYzj fEbDg7EfkjqjTcnJMlaDgckipA== X-Google-Smtp-Source: AMrXdXuodh9FHymbmpohqNn+aN73HnLyNMGQMfaM4A8CMcQthOis9+U3w2QaUyRVjC6UF3jQ0FdJzQ== X-Received: by 2002:ac2:5e9d:0:b0:4b6:ec97:a629 with SMTP id b29-20020ac25e9d000000b004b6ec97a629mr3352154lfq.35.1671886438132; Sat, 24 Dec 2022 04:53:58 -0800 (PST) Received: from [192.168.0.20] (088156142067.dynamic-2-waw-k-3-2-0.vectranet.pl. [88.156.142.67]) by smtp.gmail.com with ESMTPSA id x30-20020a0565123f9e00b0048a9e899693sm952658lfa.16.2022.12.24.04.53.56 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sat, 24 Dec 2022 04:53:57 -0800 (PST) Message-ID: <9d2c05f6-af5a-2d79-02ea-85c49e244957@linaro.org> Date: Sat, 24 Dec 2022 13:53:56 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.6.0 Subject: Re: [PATCH v4 2/3] dt-bindings: leds: add worldsemi,ws2812b To: Pavel Machek Cc: Chuanhong Guo , linux-leds@vger.kernel.org, Lee Jones , Rob Herring , Krzysztof Kozlowski , Stanislav Jakubek , Linus Walleij , Shawn Guo , Johan Hovold , Bjorn Andersson , Marijn Suijten , Sven Schwermer , "open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS" , open list References: <20221212045558.69602-1-gch981213@gmail.com> <20221212045558.69602-3-gch981213@gmail.com> Content-Language: en-US From: Krzysztof Kozlowski In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Precedence: bulk List-ID: X-Mailing-List: linux-leds@vger.kernel.org On 23/12/2022 18:19, Pavel Machek wrote: > Hi! > >>> Add dt binding schema for WorldSemi WS2812B driven using SPI >>> bus. >>> >>> Signed-off-by: Chuanhong Guo >>> --- >>> Changes since v1: >>> remove linux driver reference from description >>> remove some obvious descriptions >>> fix unit address regex in multi-led property >>> drop various minItems >>> add maxItems = 1 to reg >>> fix node names and property orders in binding example >>> drop -spi from compatible string >>> add default-brightness >>> >>> Change since v2: >>> drop "this patch" from commit message >>> rename leds to led-controller >>> drop default-brightness and default-intensity >>> >>> Change since v3: >>> reword commit title >>> >>> .../bindings/leds/worldsemi,ws2812b.yaml | 116 ++++++++++++++++++ >>> 1 file changed, 116 insertions(+) >>> create mode 100644 Documentation/devicetree/bindings/leds/worldsemi,ws2812b.yaml >>> >>> diff --git a/Documentation/devicetree/bindings/leds/worldsemi,ws2812b.yaml b/Documentation/devicetree/bindings/leds/worldsemi,ws2812b.yaml >>> new file mode 100644 >>> index 000000000000..548c05ac3d31 >>> --- /dev/null >>> +++ b/Documentation/devicetree/bindings/leds/worldsemi,ws2812b.yaml >>> @@ -0,0 +1,116 @@ >>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) >>> +%YAML 1.2 >>> +--- >>> +$id: http://devicetree.org/schemas/leds/worldsemi,ws2812b.yaml# >>> +$schema: http://devicetree.org/meta-schemas/core.yaml# >>> + >>> +title: WS2812B LEDs driven using SPI >>> + >>> +maintainers: >>> + - Chuanhong Guo >>> + >>> +description: | >>> + WorldSemi WS2812B is a individually addressable LED chip that can be chained >>> + together and controlled individually using a single wire. >>> + This binding describes a chain of WS2812B LEDs connected to the SPI MOSI pin. >>> + Typical setups includes connecting the data pin of the LED chain to MOSI as >>> + the only device or using CS and MOSI with a tri-state voltage-level shifter >>> + for the data pin. >>> + The SPI frequency needs to be 2.105MHz~2.85MHz for the timing to be correct >>> + and the controller needs to send all the bytes continuously. >>> + >>> +allOf: >>> + - $ref: /schemas/spi/spi-peripheral-props.yaml# >>> + >>> +properties: >>> + compatible: >>> + const: worldsemi,ws2812b >>> + >>> + reg: >>> + maxItems: 1 >>> + >>> + spi-max-frequency: >>> + minimum: 2105000 >>> + maximum: 2850000 >>> + >>> + "#address-cells": >>> + const: 1 >>> + >>> + "#size-cells": >>> + const: 0 >>> + >>> +patternProperties: >>> + "^multi-led@[0-9a-f]+$": >>> + type: object >>> + $ref: leds-class-multicolor.yaml# >>> + unevaluatedProperties: false >>> + >>> + properties: >>> + color-index: >>> + description: | >>> + A 3-item array specifying color of each components in this LED. It >>> + should be one of the LED_COLOR_ID_* prefixed definitions from the >>> + header include/dt-bindings/leds/common.h. Defaults to >>> + >>> + if unspecified. >>> + $ref: /schemas/types.yaml#/definitions/uint32-array >>> + maxItems: 3 >> >> In general I am fine with it, although there is still question for >> adding more multi-color defines in binding headers to replace this >> property - GRB/RBG/GBR and even more for RGBW. >> >> Pavel, Lee, any thoughts from your side? > > This really needs to mention the name this hardware is known as -- I > believe it is NeoPixel. We wait here for feedback on colors... The binding is re-implementing color, just because of combinations GRB/RBG/GBR, which could be achieved with new color defines. Best regards, Krzysztof