From mboxrd@z Thu Jan 1 00:00:00 1970 From: jeffy Date: Tue, 17 Oct 2017 08:13:55 +0000 Subject: Re: [RESEND PATCH v2 2/5] backlight: pwm_bl: Add device link for pwm_bl and pwm Message-Id: <59E5BBC3.2020504@rock-chips.com> List-Id: References: <20171016100640.26575-1-jeffy.chen@rock-chips.com> <20171016100640.26575-3-jeffy.chen@rock-chips.com> <20171016235710.GA12188@google.com> In-Reply-To: <20171016235710.GA12188@google.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: Brian Norris Cc: linux-pwm@vger.kernel.org, linux-fbdev@vger.kernel.org, Bartlomiej Zolnierkiewicz , linux-kernel@vger.kernel.org, dmitry.torokhov@gmail.com, rjw@rjwysocki.net, dianders@chromium.org, dri-devel@lists.freedesktop.org, tfiga@chromium.org, broonie@kernel.org, Jingoo Han , Thierry Reding , Daniel Thompson , Lee Jones Hi Brian, On 10/17/2017 07:57 AM, Brian Norris wrote: > This is going to be a*lot* of churn throughout the tree, if we expect > all resource consumers to do this. I think we'd want some kind of > agreement from the PM maintainers and (larger) subsystem owners before > going down this route... > > And in the PWM case, pwm_get() already has the device pointer. Why can't > we just instrument it instead? according to pwm_bl driver, we may need to take care of pwm_request() too: pb->pwm = devm_pwm_get(&pdev->dev, NULL); if (IS_ERR(pb->pwm) && PTR_ERR(pb->pwm) != -EPROBE_DEFER && !node) { dev_err(&pdev->dev, "unable to request PWM, trying legacy API\n"); pb->legacy = true; pb->pwm = pwm_request(data->pwm_id, "pwm-backlight"); } and maybe also *of_pwm_get... maybe we can add a dummy pwm chip for those orphan pwms? > > Brian From mboxrd@z Thu Jan 1 00:00:00 1970 From: jeffy Subject: Re: [RESEND PATCH v2 2/5] backlight: pwm_bl: Add device link for pwm_bl and pwm Date: Tue, 17 Oct 2017 16:13:55 +0800 Message-ID: <59E5BBC3.2020504@rock-chips.com> References: <20171016100640.26575-1-jeffy.chen@rock-chips.com> <20171016100640.26575-3-jeffy.chen@rock-chips.com> <20171016235710.GA12188@google.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20171016235710.GA12188@google.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Brian Norris Cc: linux-pwm@vger.kernel.org, linux-fbdev@vger.kernel.org, Bartlomiej Zolnierkiewicz , linux-kernel@vger.kernel.org, dmitry.torokhov@gmail.com, rjw@rjwysocki.net, dianders@chromium.org, dri-devel@lists.freedesktop.org, tfiga@chromium.org, broonie@kernel.org, Jingoo Han , Thierry Reding , Daniel Thompson , Lee Jones List-Id: linux-pwm@vger.kernel.org SGkgQnJpYW4sCgpPbiAxMC8xNy8yMDE3IDA3OjU3IEFNLCBCcmlhbiBOb3JyaXMgd3JvdGU6Cj4g VGhpcyBpcyBnb2luZyB0byBiZSBhKmxvdCogIG9mIGNodXJuIHRocm91Z2hvdXQgdGhlIHRyZWUs IGlmIHdlIGV4cGVjdAo+IGFsbCByZXNvdXJjZSBjb25zdW1lcnMgdG8gZG8gdGhpcy4gSSB0aGlu ayB3ZSdkIHdhbnQgc29tZSBraW5kIG9mCj4gYWdyZWVtZW50IGZyb20gdGhlIFBNIG1haW50YWlu ZXJzIGFuZCAobGFyZ2VyKSBzdWJzeXN0ZW0gb3duZXJzIGJlZm9yZQo+IGdvaW5nIGRvd24gdGhp cyByb3V0ZS4uLgo+Cj4gQW5kIGluIHRoZSBQV00gY2FzZSwgcHdtX2dldCgpIGFscmVhZHkgaGFz IHRoZSBkZXZpY2UgcG9pbnRlci4gV2h5IGNhbid0Cj4gd2UganVzdCBpbnN0cnVtZW50IGl0IGlu c3RlYWQ/CgphY2NvcmRpbmcgdG8gcHdtX2JsIGRyaXZlciwgd2UgbWF5IG5lZWQgdG8gdGFrZSBj YXJlIG9mIHB3bV9yZXF1ZXN0KCkgdG9vOgoKICAgICAgICAgcGItPnB3bSA9IGRldm1fcHdtX2dl dCgmcGRldi0+ZGV2LCBOVUxMKTsKICAgICAgICAgaWYgKElTX0VSUihwYi0+cHdtKSAmJiBQVFJf RVJSKHBiLT5wd20pICE9IC1FUFJPQkVfREVGRVIgJiYgCiFub2RlKSB7CiAgICAgICAgICAgICAg ICAgZGV2X2VycigmcGRldi0+ZGV2LCAidW5hYmxlIHRvIHJlcXVlc3QgUFdNLCB0cnlpbmcgCmxl Z2FjeSBBUElcbiIpOwogICAgICAgICAgICAgICAgIHBiLT5sZWdhY3kgPSB0cnVlOwogICAgICAg ICAgICAgICAgIHBiLT5wd20gPSBwd21fcmVxdWVzdChkYXRhLT5wd21faWQsICJwd20tYmFja2xp Z2h0Iik7CiAgICAgICAgIH0KCmFuZCBtYXliZSBhbHNvICpvZl9wd21fZ2V0Li4uCgptYXliZSB3 ZSBjYW4gYWRkIGEgZHVtbXkgcHdtIGNoaXAgZm9yIHRob3NlIG9ycGhhbiBwd21zPwo+Cj4gQnJp YW4KCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmkt ZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6 Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933249AbdJQIOs (ORCPT ); Tue, 17 Oct 2017 04:14:48 -0400 Received: from regular1.263xmail.com ([211.150.99.136]:54864 "EHLO regular1.263xmail.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1758019AbdJQIOJ (ORCPT ); Tue, 17 Oct 2017 04:14:09 -0400 X-263anti-spam: KSV:0;BIG:0; X-MAIL-GRAY: 0 X-MAIL-DELIVERY: 1 X-KSVirus-check: 0 X-ADDR-CHECKED4: 1 X-ABS-CHECKED: 1 X-SKE-CHECKED: 1 X-ANTISPAM-LEVEL: 2 X-RL-SENDER: jeffy.chen@rock-chips.com X-FST-TO: briannorris@chromium.org X-SENDER-IP: 103.29.142.67 X-LOGIN-NAME: jeffy.chen@rock-chips.com X-UNIQUE-TAG: <8d120dd82444e6c4cd4df057cde7e51e> X-ATTACHMENT-NUM: 0 X-DNS-TYPE: 0 Message-ID: <59E5BBC3.2020504@rock-chips.com> Date: Tue, 17 Oct 2017 16:13:55 +0800 From: jeffy User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:19.0) Gecko/20130126 Thunderbird/19.0 MIME-Version: 1.0 To: Brian Norris CC: linux-kernel@vger.kernel.org, dmitry.torokhov@gmail.com, heiko@sntech.de, rjw@rjwysocki.net, dianders@chromium.org, tfiga@chromium.org, broonie@kernel.org, seanpaul@chromium.org, linux-pwm@vger.kernel.org, linux-fbdev@vger.kernel.org, Daniel Thompson , Thierry Reding , Bartlomiej Zolnierkiewicz , dri-devel@lists.freedesktop.org, Jingoo Han , Lee Jones Subject: Re: [RESEND PATCH v2 2/5] backlight: pwm_bl: Add device link for pwm_bl and pwm References: <20171016100640.26575-1-jeffy.chen@rock-chips.com> <20171016100640.26575-3-jeffy.chen@rock-chips.com> <20171016235710.GA12188@google.com> In-Reply-To: <20171016235710.GA12188@google.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Brian, On 10/17/2017 07:57 AM, Brian Norris wrote: > This is going to be a*lot* of churn throughout the tree, if we expect > all resource consumers to do this. I think we'd want some kind of > agreement from the PM maintainers and (larger) subsystem owners before > going down this route... > > And in the PWM case, pwm_get() already has the device pointer. Why can't > we just instrument it instead? according to pwm_bl driver, we may need to take care of pwm_request() too: pb->pwm = devm_pwm_get(&pdev->dev, NULL); if (IS_ERR(pb->pwm) && PTR_ERR(pb->pwm) != -EPROBE_DEFER && !node) { dev_err(&pdev->dev, "unable to request PWM, trying legacy API\n"); pb->legacy = true; pb->pwm = pwm_request(data->pwm_id, "pwm-backlight"); } and maybe also *of_pwm_get... maybe we can add a dummy pwm chip for those orphan pwms? > > Brian