Received: by 2002:ac0:a5a6:0:0:0:0:0 with SMTP id m35-v6csp7527648imm; Tue, 28 Aug 2018 13:50:13 -0700 (PDT) X-Google-Smtp-Source: ANB0VdZcuxJc9crnYuCJ7rEGHtjPxVQccljeYdPFd+CUIzObBQr4Xt2MMf8ZziEOT2PE7VI0uGJK X-Received: by 2002:a17:902:46a4:: with SMTP id p33-v6mr3042896pld.205.1535489413669; Tue, 28 Aug 2018 13:50:13 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1535489413; cv=none; d=google.com; s=arc-20160816; b=Ehe+71w6czcWXVbuiWv0r/1txP7ZjgNhranBqyZuLqBm/nkidQqDIv4m4WIEfsiIz9 iHCzk6L0XGNBtTDwhKytpXwvRp/AD7QfxYJUnx3IWnadaQ05vl4gwV8ns1vnhK2h3OLf zDV8HpVOuswBsD00Ne6pN1GwUZMbGkMJN5eabA/lPhedxxtOnNbibIO3N9tYA5t5B1/4 lJKS8wlAD4KcqGD7k1K55XtQbfUsOkoQQ9khVm2eeagQYKkqrVatx0VWb1lpoUB48fmi 19oYM6QDmWckJlxGL3jkUPsNaUTZ8EhkoC6XAn4THAN+zIQXG1C/LeSn/PFyGsX5jq9V +e9g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:dkim-signature:arc-authentication-results; bh=zOIZ7ppnr6nWBNnIut0S60+TEnm109YQUMOXQUkwA+M=; b=AWgpjv77S5HoMdbDf64lFngxLhp8yFfyGqXqqkJkkogUJEhJlxlxparmF8CRhSJeXu 03ZLZE/MyWQwMWJ/Xb1HLyvZeDoxUf09ynYHg2KURxvUMgpa4iF5DSToaLG0bjzcfot/ ci7cr6JgTXcPnvJcIv//o+Ww3AT6KpQAEuV9GOIxw7bF8ZHH1zA/fuJvp/ogtls2rZVC E+ncM9xhEZ8ZyXp7fsKCcgE4r7RUMs8qIzpew9mBqELdT7UDg8a/giJsrzK3iKn9BHDo 6RinGd9cbbIh/0enxI4dWWjy1SIq8eLOUhP/vnWALGc06lYBQPQMDyrhTssDd/+kRa0q Cx4w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=coaXQsOG; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id m126-v6si2001356pfb.126.2018.08.28.13.49.58; Tue, 28 Aug 2018 13:50:13 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=coaXQsOG; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727568AbeH2AlP (ORCPT + 99 others); Tue, 28 Aug 2018 20:41:15 -0400 Received: from mail-pf1-f196.google.com ([209.85.210.196]:45189 "EHLO mail-pf1-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727337AbeH2AlO (ORCPT ); Tue, 28 Aug 2018 20:41:14 -0400 Received: by mail-pf1-f196.google.com with SMTP id i26-v6so1211244pfo.12 for ; Tue, 28 Aug 2018 13:47:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=zOIZ7ppnr6nWBNnIut0S60+TEnm109YQUMOXQUkwA+M=; b=coaXQsOGdjH4Ra3jLgKqImHMJ0Ee+7wC1U7qb7+geapevGf31C0th3sWCF3efBd2TV +61hBM67MVnDAwhEQV/hJFgzFJhza1Gv1IVaop814/XfHBM/FVg7RAuiX7OGD3vEtqgN y20EtRPXzT2navo29eaZgBM48b/TS9svoJL+E= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=zOIZ7ppnr6nWBNnIut0S60+TEnm109YQUMOXQUkwA+M=; b=gIqnSuJVjFsBteXZgTjTOD6oqULriuDXR/1boAKSSs+f8zZXGZvx886SDZAjNwRN0e 1knXxCEnkcc1qGNldoe+vVfgCCfQjglRGqjInKZQr4S7jNLTSYeOvP2aqmBGHJhuDvG2 YvEn0jqe7LFNlcA2LtzrpHjkeyn3SpBTtMfqJkh5vrHAWEsEYLMS43PdQLpRg4SBLZQ1 f/I/Hx6R1r/46cIXNtYmLbOK51jqQ3IKKhy2leILn/Iv2R7HYebAlC763QRwMfmRfAAQ x32jE+pI/ddA+sufk3o0DR0CBx+cGlWOCbeEzNbLvD0nkLk/yKsnOz1FwB9h7WXezxHE JAvg== X-Gm-Message-State: APzg51AUJgJi3TSaOzWuZ0IEEOA0OIUjhykZIxzPs7Qp/VvN3UqRlp31 qutH5l4kedueXHfGHXyZkzDwbhoMt8Y= X-Received: by 2002:a62:b4f:: with SMTP id t76-v6mr2997851pfi.36.1535489271903; Tue, 28 Aug 2018 13:47:51 -0700 (PDT) Received: from minitux (104-188-17-28.lightspeed.sndgca.sbcglobal.net. [104.188.17.28]) by smtp.gmail.com with ESMTPSA id z11-v6sm7084813pfi.4.2018.08.28.13.47.50 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 28 Aug 2018 13:47:51 -0700 (PDT) Date: Tue, 28 Aug 2018 13:47:49 -0700 From: Bjorn Andersson To: Baolin Wang Cc: Jacek Anaszewski , Pavel Machek , rteysseyre@gmail.com, Mark Brown , Linux LED Subsystem , LKML Subject: Re: [PATCH v5 1/2] leds: core: Introduce LED pattern trigger Message-ID: <20180828204749.GH2523@minitux> References: <1dc5d394324b2bf1ffe229b8e42691fab6d749e0.1533556992.git.baolin.wang@linaro.org> <20180824101145.GA1510@amd> <9bb7ac19-36a6-d11a-6d46-fc65c2026201@gmail.com> <20180824201227.GB17146@amd> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.10.1 (2018-07-13) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sat 25 Aug 00:51 PDT 2018, Baolin Wang wrote: > On 25 August 2018 at 04:44, Jacek Anaszewski wrote: > > On 08/24/2018 10:12 PM, Pavel Machek wrote: > >> On Fri 2018-08-24 21:49:50, Jacek Anaszewski wrote: > >>> Hi Pavel, > >>> > >>> On 08/24/2018 12:11 PM, Pavel Machek wrote: [..] > >>> + if (led_cdev->pattern_set) { > >>> + return led_cdev->pattern_set(led_cdev, data->patterns, > >>> + data->npatterns, data->repeat); > >>> + } > >> > >> Yeah, that sounds wrong. (Sorry I did not pay enough attention). > >> > >> It pattern_set() returns special error code, it should just continue > >> and use software pattern fallback. > > > > And now we can get back to the issue I was concerned about in the > > email you replied to, i.e. what series of [brightness delta_t] tuples > > should be written to the pattern file to enable hardware breathing > > engine. > > OK. So now we've made a consensus to use the software pattern fallback > if failed to set hardware pattern. How about introduce one interface > to convert hardware patterns to software patterns if necessary? > I do not agree that a silent fallback mechanism is the way to go here. There is a enormous difference in power consumption between letting a dedicated piece of hardware drive a pulse on a LED or using a general purpose ARM core running at hundreds of MHz. Note that the most common use case for the driver I'm trying to upstream is to pulse the LED when you have a notification pending on your Android device, in which case you want all the CPUs are completely powered down. Regards, Bjorn