From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934235AbbGVAOA (ORCPT ); Tue, 21 Jul 2015 20:14:00 -0400 Received: from mailout4.w1.samsung.com ([210.118.77.14]:40957 "EHLO mailout4.w1.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S934008AbbGVAN6 (ORCPT ); Tue, 21 Jul 2015 20:13:58 -0400 MIME-version: 1.0 Content-type: text/plain; charset=windows-1252 X-AuditID: cbfec7f5-f794b6d000001495-78-55aee0436c14 Content-transfer-encoding: 8BIT Message-id: <55AEE03F.8060100@samsung.com> Date: Wed, 22 Jul 2015 09:13:51 +0900 From: Krzysztof Kozlowski User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.8.0 To: Mark Brown , =?windows-1252?Q?Uwe_Kleine-K=F6ni?= =?windows-1252?Q?g?= Cc: Greg Kroah-Hartman , Linus Walleij , Liam Girdwood , linux-next@vger.kernel.org, linux-kernel@vger.kernel.org, Chris Zhong , kernel@pengutronix.de, linux-pm@vger.kernel.org, "Rafael J. Wysocki" , Ulf Hansson , Kevin Hilman Subject: Re: [PATCH] regulator: rk808: make better use of the gpiod API References: <20150721132945.7ffc443b@canb.auug.org.au> <1437461993-14860-1-git-send-email-u.kleine-koenig@pengutronix.de> <20150721143524.GD9981@pengutronix.de> <20150721144100.GU11162@sirena.org.uk> In-reply-to: <20150721144100.GU11162@sirena.org.uk> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFuplkeLIzCtJLcpLzFFi42I5/e/4NV3nB+tCDSYd0LSY+vAJm0Xz4vVs Fq9fGFqsmrqTxeLp5sdMFt+udDBZTPmznMni8q45bBYHF7YxWnzuPcJo8XjFW3aL2xMnM1oc XxtuMf/BDmYHPo+ds+6yeyze85LJY9OqTjaPO9f2sHnsn7uG3aP/r4HH31n7WTz6tqxi9Pi8 SS6AM4rLJiU1J7MstUjfLoErY+HSt6wFTzgrLh9YwtjA+Ji9i5GDQ0LAROLbB9kuRk4gU0zi wr31bCC2kMBSRol194NAbF4BQYkfk++xgJQzC8hLHLmUDWHqSdy/qNXFyAVU/YVRov/ELVaI ci2JUzc/gdksAqoSp48/YwKx2QSMJTYvXwI2XlQgQmL56pOMIM0iAs2MErO6HjKDOMwCU5gl Lm+fwg5SJSzgLrHpQyMLxIpJTBJ3r29jBklwAo3q+tTLOoFRYBaSA2chHDgL4cAFjMyrGEVT S5MLipPSc430ihNzi0vz0vWS83M3MUIi6esOxqXHrA4xCnAwKvHwTji6LlSINbGsuDL3EKME B7OSCO/SE0Ah3pTEyqrUovz4otKc1OJDjNIcLErivDN3vQ8REkhPLEnNTk0tSC2CyTJxcEo1 MB7k93qq8WHD3ov/oz+oMIn2OhRsrp1RuDxwAePDw8Ic0x+zRIuuXCJaITZj0bG0BZMfPWdI cPX6X3TiU/lJs1+T6lQ5giqn1FyNCFNOsv3568zXVzHX0/+ISkcG9IsyJNqzPGTdFGQ7f3n9 sd0yfp76pl/Uvm47fmiZQMx2jicb/h65IC76vU+JpTgj0VCLuag4EQBFVRJ/oAIAAA== Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 21.07.2015 23:41, Mark Brown wrote: > On Tue, Jul 21, 2015 at 04:35:24PM +0200, Uwe Kleine-König wrote: >> On Tue, Jul 21, 2015 at 10:09:32PM +0900, Krzysztof Kozlowski wrote: > >>> The function looks empty so it can be removed entirely. > >> I assumed that not having a remove function makes the device not >> detachable. Not sure about that. > > No, of course not - the remove function is completely optional. > >> Looking at the code I found that not having a remove function can yield >> surprises, though. If your driver has a probe but no remove function the >> platform bus glue calls > >> dev_pm_domain_attach(_dev, true); > >> at probe time, but not > >> dev_pm_domain_detach(_dev, true); > >> at remove. I admit I don't know about that dev_pm_domain stuff, but it >> looks wrong to only have one but not the other. Greg? > > That looks like a bug, yes. Cc: linux-pm, Kevin, Rafael, Ulf I agree, device should be detached from domain regardless of presence of remove callback. Documentation (like Documentation/driver-model/driver.txt) does not mention that remove callback is necessary for unbinding devices. There is no sense in storing empty removal callbacks. Best regards, Krzysztof