From patchwork Thu Feb 23 11:23:09 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: ChiaEn Wu X-Patchwork-Id: 60912 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:5915:0:0:0:0:0 with SMTP id v21csp259237wrd; Thu, 23 Feb 2023 03:27:00 -0800 (PST) X-Google-Smtp-Source: AK7set8dED1tVCl8IJW5xHImJnbIi3lHPHH+wgh/ZSgKZ9snS+2qBN+DjNOEIbZ4bJKAZYn0Ubyb X-Received: by 2002:a05:6402:34d5:b0:4ab:dde:dea7 with SMTP id w21-20020a05640234d500b004ab0ddedea7mr12422255edc.2.1677151620382; Thu, 23 Feb 2023 03:27:00 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1677151620; cv=none; d=google.com; s=arc-20160816; b=IF/L/mnOebI2F90jUISgoXWudughdOpIUxDQuYYkrz28AAg2cTbyrVpzrlaQqZqAq3 9Afaw22PCvZwAQ693CmHT7PqSmvFaa0QATRe7vUGDauIkJb4EsMerIkeFpZGO1dZr8Gg dPIP1xmBQNkuLHgUTZCpxfKOVTrCWEJGMxpaZ2Ufd+FNoxmmqOb2gf9nSQN9yg8N455O 3kUv1sOPffFtIcg5TWMc73pkBjC8Vnb0vDABWGBJN/ixcMcbSlzbct/hdIhZpx9Ks2/q mus3OCpDXZM0vLDLyvnn6gV+xsHHHebNkgfMWkWIMVukAaEI1vIalJwxXuyy3kKMRhO7 Bl7g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:references:in-reply-to:message-id :date:subject:cc:to:from; bh=xTcdE99TcQTNlc0Sc8sOfgvuwoyx0Fa/oqYqR+lzGXw=; b=QhtuL+3Zl2z5pMDOK5OTRjcEA4YXxYpJzM2JP7sIhPmzvR1loDTwrm2VeY3LTUM1rO km8dslmsh3FhhhVwakfvEsTf8iLdGgJ8xQbN3D+NqmGhJfGx/+qlYsYs1leLlE3vx5NR x+FoIJ80x24V/C+hDxVi4TTvzlQeaMtEOgmE8skyY5Aai9N04oIM5tZ1asoh/jcbZcyJ IxPseJbb2dWgbZnCovtbOwJDq4dw/0rCrnyrIYmK+/gUMk1UUBA4XQQZ3bVt3WaDy9ls Qileo1Gc0A0sohUlGk6fUekv5jBLsYxNYnKuq6D0YJ1bwpu7vmskA7u5lWOA7lOJ1OOB 9PUQ== ARC-Authentication-Results: i=1; mx.google.com; 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 Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id k4-20020aa7d8c4000000b004acbd06fe15si1653664eds.11.2023.02.23.03.26.37; Thu, 23 Feb 2023 03:27:00 -0800 (PST) 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; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233862AbjBWLYO (ORCPT + 99 others); Thu, 23 Feb 2023 06:24:14 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56192 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233101AbjBWLYN (ORCPT ); Thu, 23 Feb 2023 06:24:13 -0500 Received: from mg.richtek.com (mg.richtek.com [220.130.44.152]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 9F0CF59FC; Thu, 23 Feb 2023 03:24:09 -0800 (PST) X-MailGates: (flag:4,DYNAMIC,BADHELO,RELAY,NOHOST:PASS)(compute_score:DE LIVER,40,3) Received: from 192.168.10.46 by mg.richtek.com with MailGates ESMTP Server V5.0(14980:0:AUTH_RELAY) (envelope-from ); Thu, 23 Feb 2023 19:23:39 +0800 (CST) Received: from ex4.rt.l (192.168.10.47) by ex3.rt.l (192.168.10.46) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1118.20; Thu, 23 Feb 2023 19:23:39 +0800 Received: from linuxcarl2.richtek.com (192.168.10.154) by ex4.rt.l (192.168.10.45) with Microsoft SMTP Server id 15.2.1118.20 via Frontend Transport; Thu, 23 Feb 2023 19:23:38 +0800 From: ChiaEn Wu To: , , , , , , CC: , , , , , , , , ChiaEn Wu Subject: [PATCH v17 RESEND 3/3] docs: leds: Add MT6370 RGB LED pattern document Date: Thu, 23 Feb 2023 19:23:09 +0800 Message-ID: X-Mailer: git-send-email 1.8.3.1 In-Reply-To: References: MIME-Version: 1.0 X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,SPF_HELO_NONE, SPF_PASS 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?1758620937420770137?= X-GMAIL-MSGID: =?utf-8?q?1758620937420770137?= From: ChiYuan Huang Document the MT6370 RGB LED pattern trigger. This simply describe how the pattern works, each timing period, and the pattern diagram for MT6370 RGB LED. Signed-off-by: ChiYuan Huang Signed-off-by: ChiaEn Wu --- Documentation/leds/leds-mt6370-rgb.rst | 64 ++++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 Documentation/leds/leds-mt6370-rgb.rst diff --git a/Documentation/leds/leds-mt6370-rgb.rst b/Documentation/leds/leds-mt6370-rgb.rst new file mode 100644 index 00000000..d1b2e4f --- /dev/null +++ b/Documentation/leds/leds-mt6370-rgb.rst @@ -0,0 +1,64 @@ +.. SPDX-License-Identifier: GPL-2.0 + +========================================= +Kernel driver for Mediatek MT6370 RGB LED +========================================= + +Description +----------- + +The MT6370 integrates a four-channel RGB LED driver, designed to provide a +variety of lighting effect for mobile device applications. The RGB LED driver +includes a smart LED string controller and it can drive 3 channels of LEDs with +a sink current up to 24mA and a CHG_VIN power good indicator LED with sink +current up to 6mA. It provides three operation modes for RGB LEDs: +PWM Dimming mode, breath pattern mode, and constant current mode. The device +can increase or decrease the brightness of the RGB LED via I2C interface. + +The breath pattern for a channel can be programmed using the "pattern" trigger, +using the hw_pattern attribute. + +/sys/class/leds//hw_pattern +-------------------------------- + +Specify a hardware breath pattern for a MT6370 RGB LED. + +The breath pattern is a series of timing pairs, with the hold-time expressed in +milliseconds. And the brightness is controlled by +'/sys/class/leds//brightness'. The pattern doesn't include the brightness +setting. Hardware pattern only controls the timing for each pattern stage +depending on the current brightness setting. + +Pattern diagram:: + + "0 Tr1 0 Tr2 0 Tf1 0 Tf2 0 Ton 0 Toff" --> '0' for dummy brightness code + + ^ + | ============ + | / \ / +Icurr | / \ / + | / \ / + | / \ / .....repeat + | / \ / + | --- --- --- + |--- --- --- + +----------------------------------============------------> Time + < Tr1>< Ton >< Toff >< Tr1> + +Timing description:: + +Tr1: First rising time for duty 0 to 30%. +Tr2: Second rising time for duty 31% to 100%. +Ton: On time for duty 100%. +Tf1: First falling time for duty 100% to 31%. +Tf2: Second falling time for duty 30% to 0%. +Toff: Off time for duty 0%. + +Tr1/Tr2/Tf1/Tf2/Ton: 125ms to 3125ms, 200ms per step. +Toff: 250ms to 6250ms, 400ms per step. + +Pattern example:: + + "0 125 0 125 0 125 0 125 0 625 0 1050" + +This Will configure Tr1/Tr2/Tf1/Tf2 to 125m, Ton to 625ms, and Toff to 1050ms.