From patchwork Thu Sep 27 09:15:08 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "\(Exiting\) Baolin Wang" X-Patchwork-Id: 147696 Delivered-To: patch@linaro.org Received: by 2002:a2e:8595:0:0:0:0:0 with SMTP id b21-v6csp1749144lji; Thu, 27 Sep 2018 02:16:01 -0700 (PDT) X-Google-Smtp-Source: ACcGV63Qxpa9asrMsnfl/atqEhkD1rAjkKXU9hHU2xFzYED+6LPqulPu/oktdbIg+qmTKfM6nkjU X-Received: by 2002:aa7:800f:: with SMTP id j15-v6mr10397368pfi.174.1538039761315; Thu, 27 Sep 2018 02:16:01 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1538039761; cv=none; d=google.com; s=arc-20160816; b=YMO/jT70JknGORGZDAFDqcinJ09jumwQVIjvwDntKdGVmsfqmTLHIaf8mfojDBtDow WEApzT09exR5kK2/0//Ww+IfbkmIWoydN529ZvDksWHLuJpXlVa3xojAw9CxedVcmMLI cOp8CsMva9B6cPNIYt9ZoZOQd05OVL+71yEvgpZgKi/XEEDZuHvC/1wXXJpA35D9jkA3 zAz8Y3LuxMyKFLvWRxeRdiHgZaF60jUt88eAMQ4PwhDA0CG5c68ASNJ226NwCm6K6+BN IA3MpMlxXDwhgPWWIyJ2iKCrEpRgqPqDufPGVKdATwVjOj78LbQkKUlSMxKh03pFHW5i bwIw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :dkim-signature; bh=axrz9BaLRBdHfIllkoNDC76+ARIPCmrfuOnxOMTj8gg=; b=XnpTX+y189mLv2+c/bzeZt7jbt2NKC4gTTlnwTCOxrMpqXAGB3BYT0WNXF8iKdZ8cq cNNnJs0dW140Z7pCovQNpa2ZajvbBYU75csTY+efhlbZONoqsPQ1B5IEGxyUR0tsYJ7p DK90aVBKrDNLobkCVEG47sJ2NsBhqhpZ/LTlIRSbnuVGbI2cJGLsVzQPmH8pZgGzdAmZ I7zE/1Rq36Cgp0HfX/gULavcMW9G61BXpBRkll9p9a14ZCv3kw16+ggbzk5rn3deCSLD hF7yjSMJmqDKjngI5v2Vt/g36n0psEJxYzPIgtA7ercLhIP+JB7UCO6wWr6TVNDr66/3 VbxA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=D5NGjRgK; 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 f130-v6si1418100pgc.625.2018.09.27.02.16.01; Thu, 27 Sep 2018 02:16:01 -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=D5NGjRgK; 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 S1728744AbeI0PdP (ORCPT + 32 others); Thu, 27 Sep 2018 11:33:15 -0400 Received: from mail-pg1-f194.google.com ([209.85.215.194]:38862 "EHLO mail-pg1-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727589AbeI0PdO (ORCPT ); Thu, 27 Sep 2018 11:33:14 -0400 Received: by mail-pg1-f194.google.com with SMTP id r77-v6so1493146pgr.5 for ; Thu, 27 Sep 2018 02:15:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id; bh=axrz9BaLRBdHfIllkoNDC76+ARIPCmrfuOnxOMTj8gg=; b=D5NGjRgKUlOOSFX0MOOHgOZ46FT51aTGck3K+mATbtrlaBmnhCd3ZJtceJObyXEqBx V51Io6gzfSfYa872aCY5VwGPBAE3guh5+LtIwt7CHYkUplmwuYXo6Yp14au44qjlmtG7 OPHnDbWAOoLIoOEbq7ZT7Y+sNiNdLuY5QZoKU= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=axrz9BaLRBdHfIllkoNDC76+ARIPCmrfuOnxOMTj8gg=; b=VyVTq5yPAXoX+PC8erJCOWy8orbagVGn3X5SHA87A5xHHo7ERyxHGJ/fE4PWXkwTeb JEXhhQV/ABfJtBkwWyWyMzlaCgLfyDXXb8ynl94YVnms1BAn7VnrrN+Q0HtOHa2muD3u nuaKQivJgX2J/w1GTZbbXhLq0873v1R6dU3wuCsRR9Jc29X8b0fABeLuU6OqIcNjWX5i DRnH7Nwbus7+fbVMBNPcSqiPtranuqTJ4Xdi/3J2Xu6nYp0iSidCMp5I01ICGM1/U0aC NP9epEDUUJZj9LWsgJ/YIJm4QUsChaxaCPSE0Pr+4IVgq2079NhOfpGbtZgGDcuOHjHe 5VoA== X-Gm-Message-State: ABuFfohgm0zzewe0zBfLJ9oNBWFTLhPG9CLqj6tMetuVtld73LpRhL4R Qg+UXIl6moaX7bQvoVFYu1GVKw== X-Received: by 2002:a17:902:1744:: with SMTP id i62-v6mr9929522pli.315.1538039757763; Thu, 27 Sep 2018 02:15:57 -0700 (PDT) Received: from baolinwangubtpc.spreadtrum.com ([117.18.48.102]) by smtp.gmail.com with ESMTPSA id y1-v6sm2502023pfy.89.2018.09.27.02.15.53 (version=TLS1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Thu, 27 Sep 2018 02:15:56 -0700 (PDT) From: Baolin Wang To: linus.walleij@linaro.org, orsonzhai@gmail.com, zhang.lyra@gmail.com Cc: baolin.wang@linaro.org, broonie@kernel.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH] pinctrl: sprd: Move DT parsing before registering pinctrl device Date: Thu, 27 Sep 2018 17:15:08 +0800 Message-Id: <07c454a686966823161ebfe1ed7c08f29032fb2c.1538039535.git.baolin.wang@linaro.org> X-Mailer: git-send-email 1.7.9.5 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org It will be failed to select default or sleep state for pins hogged by the pin controller device, since we hadn't parsed pins configuration in device tree before registering the pin controller device. Thus we should move the device tree parsing function before registering the pin controller device. Signed-off-by: Baolin Wang --- drivers/pinctrl/sprd/pinctrl-sprd.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) -- 1.7.9.5 diff --git a/drivers/pinctrl/sprd/pinctrl-sprd.c b/drivers/pinctrl/sprd/pinctrl-sprd.c index 78c2f54..4537b54 100644 --- a/drivers/pinctrl/sprd/pinctrl-sprd.c +++ b/drivers/pinctrl/sprd/pinctrl-sprd.c @@ -1059,6 +1059,12 @@ int sprd_pinctrl_core_probe(struct platform_device *pdev, return ret; } + ret = sprd_pinctrl_parse_dt(sprd_pctl); + if (ret) { + dev_err(&pdev->dev, "fail to parse dt properties\n"); + return ret; + } + pin_desc = devm_kcalloc(&pdev->dev, pinctrl_info->npins, sizeof(struct pinctrl_pin_desc), @@ -1083,13 +1089,6 @@ int sprd_pinctrl_core_probe(struct platform_device *pdev, return PTR_ERR(sprd_pctl->pctl); } - ret = sprd_pinctrl_parse_dt(sprd_pctl); - if (ret) { - dev_err(&pdev->dev, "fail to parse dt properties\n"); - pinctrl_unregister(sprd_pctl->pctl); - return ret; - } - return 0; }