From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757527AbcBSEZP (ORCPT ); Thu, 18 Feb 2016 23:25:15 -0500 Received: from mailout4.w1.samsung.com ([210.118.77.14]:54585 "EHLO mailout4.w1.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756749AbcBSEZM (ORCPT ); Thu, 18 Feb 2016 23:25:12 -0500 X-AuditID: cbfec7f4-f79026d00000418a-4f-56c699256124 Subject: Re: [PATCH 3/3] thermal: exynos: Defer probe if vtmu is present but not registered To: Andi Shyti , Javier Martinez Canillas References: <1455819551-4666-1-git-send-email-javier@osg.samsung.com> <1455819551-4666-4-git-send-email-javier@osg.samsung.com> <20160219042014.GB27936@samsunx.samsung> Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Kukjin Kim , linux-pm@vger.kernel.org, linux-samsung-soc@vger.kernel.org, Lukasz Majewski , Zhang Rui , Eduardo Valentin From: Krzysztof Kozlowski Message-id: <56C69921.4050201@samsung.com> Date: Fri, 19 Feb 2016 13:25:05 +0900 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.5.1 MIME-version: 1.0 In-reply-to: <20160219042014.GB27936@samsunx.samsung> Content-type: text/plain; charset=windows-1252 Content-transfer-encoding: 7bit X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFvrBLMWRmVeSWpSXmKPExsVy+t/xy7qqM4+FGezuNrbYfuQZq8X8K9dY Ld68XcNk8fqFoUX/49fMFm8ebma02PQYKH551xw2i8+9RxgtZpzfx2Tx5GEfmwO3x85Zd9k9 Fu95yeSxaVUnm8fmJfUeW/qBQn1bVjF6fN4kF8AexWWTkpqTWZZapG+XwJVxeMVbtoJmzooD 6xqZGxjXsXcxcnJICJhI3Jl4lxXCFpO4cG89WxcjF4eQwFJGiTvX+pggnKeMEn/nPmMDqRIW iJXoXbAPrENEIEai5fgTFoiiNYwSHdvvgXUwC8xmkjjypQusg03AWGLz8iVgNq+AlkT/mq9g NouAqsSn5lnMILaoQITE4c4udogaQYkfk++xgNicAqYSu39sB6rnABqqJ3H/ohZImFlAXmLz mrfMExgFZiHpmIVQNQtJ1QJG5lWMoqmlyQXFSem5hnrFibnFpXnpesn5uZsYIfHxZQfj4mNW hxgFOBiVeHgvGBwLE2JNLCuuzD3EKMHBrCTCq+sPFOJNSaysSi3Kjy8qzUktPsQozcGiJM47 d9f7ECGB9MSS1OzU1ILUIpgsEwenVAOjRGiXwemo0rdm5zX9rKbov2v/qdJ+JWnO2oK3Uoc2 RoXu6PPnY+Z0e1my+3r6L4vPrLYHBaL5KibsvnDsd4pUTtRGuw4Nx9iKpbO5On/+7NBXl5hQ 8dNUUXxm4OWZHx5/af50JH/J0kD9pRvXdSRnSDwq/afJLnnpKPtUux8Z1TMmq5Q9ZShWYinO SDTUYi4qTgQAC6tXzosCAAA= Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 19.02.2016 13:20, Andi Shyti wrote: > Hi Javier, > > Just a question... > >> diff --git a/drivers/thermal/samsung/exynos_tmu.c b/drivers/thermal/samsung/exynos_tmu.c >> index f4f36bba7be9..f3ce94ec73b5 100644 >> --- a/drivers/thermal/samsung/exynos_tmu.c >> +++ b/drivers/thermal/samsung/exynos_tmu.c >> @@ -1318,6 +1318,8 @@ static int exynos_tmu_probe(struct platform_device *pdev) >> return ret; >> } >> } else { >> + if (PTR_ERR(data->regulator) == -EPROBE_DEFER) >> + return -EPROBE_DEFER; > > shouldn't we return also in case of -ENOMEM? -ENOMEM is a Kernel > failure, not depending on the regulator itself. Usually not because that would make this error path quite complicated and difficult to keep consistent. If you choose this way then you will have to probably extend the black list (e.g. EINVAL, some other)... or use a white list. Additionally the error codes can come from deeper layers. These layer now can return ESOMETHING but later it might change to EDIFFERENT... you cannot predict that. Whatever the reason was (except defer), just ignore the regulator. Best regards, Krzysztof