Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp2639773pxj; Mon, 14 Jun 2021 03:46:02 -0700 (PDT) X-Google-Smtp-Source: ABdhPJw01HFj9aaj53BmCYIR/OBF6Zlz0GjzbbyEPXQaZcSHCerRoP5PlfnSSxpZvv0kfnsRYx6t X-Received: by 2002:a50:fc84:: with SMTP id f4mr16530063edq.252.1623667561895; Mon, 14 Jun 2021 03:46:01 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1623667561; cv=none; d=google.com; s=arc-20160816; b=ytH5JxnJpf17jZ8JZfnzdQlpopETw9cHmlSRKOQba3ABki7DAfilzeMQy9tjDKtI/d scP7lqLAuHvgUeiE0Rut8hRvfzN8prLUlIn6LxlEwA9D+papNzzC/wSVrmEj5jDasNFq 7VuSoRN2kejYiBQmjalOBW2Xcg/uQKOEn6Q0AgLjsJLgpFC5tDGCu9g/vsIUgLGeXbkB piyHBs2YYuVh9WSBziMJB7AARnIeRC9ocbJfEuHxekf7BkxLyKFMx1/ak3WbUgqZHJFA /W9BdXkUtZEqYT7T5oefrxZaxbgoz1eY5FIGuvorPrk50cSUbZVlwmpydYyaEJnd5Cqi QO+Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=t8tImzhn4mt2Bdx1yGryZlS622DqjfPPKUNIeO0TdkA=; b=Rj1xPKB2EzbK13ocRPzXsTIurcJffEKAwvMmu6oM0+5dZalbiz0KvYIHOQ+4RmZ96I LcTMwFjNkl2YvdNjbSS/As+dCN3edOYCYlZOEEypR1ZWFwkAVJ2sOXNIJCrFuQ5vUL0+ 5fdsB7YPii0sQgkyedvQwY9V6pEwpj7bshkbybsPz/OjR2J1PE7C0zgg3x4NkgpqRWdF foTkC0M8sflzdweh/Xr8ucoRiWhFpGzZyoTBri1Vsju2xFO9hujFARx0n9BTpO87qsWe o+VI4yZA4TR2oRCUyK8VgWRvuPTV9lKPkVEYCMTjiTN8LBBMsyefRfY1zFxhvL1uRyXY uHiQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=RakMHGkK; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id h7si10916502edr.267.2021.06.14.03.45.39; Mon, 14 Jun 2021 03:46:01 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=RakMHGkK; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234017AbhFNKng (ORCPT + 99 others); Mon, 14 Jun 2021 06:43:36 -0400 Received: from mail.kernel.org ([198.145.29.99]:45194 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233137AbhFNKhp (ORCPT ); Mon, 14 Jun 2021 06:37:45 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 1926B613DB; Mon, 14 Jun 2021 10:33:30 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1623666811; bh=qGD3Y7ReUnMxN25WHoGUXf+mJGZOYHKyzKSknSl+WtU=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=RakMHGkKArBDH7S4V9wvtiCrOqCRVNweoAM4VLYi+korYAMqyjkH6AZrnM2A6LFD8 HOtKvdXftJhJGOMNyQEBCamRlPiM1UfWuEuN2gzR5TzwMYo+/Fy1BeYcg+NZzxa+nC 1TUmn1ABYHXeHEN8wakovCa3N3RoW8DDrnFvGOaU= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Dmitry Osipenko , Mark Brown Subject: [PATCH 4.14 38/49] regulator: max77620: Use device_set_of_node_from_dev() Date: Mon, 14 Jun 2021 12:27:31 +0200 Message-Id: <20210614102643.110771572@linuxfoundation.org> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20210614102641.857724541@linuxfoundation.org> References: <20210614102641.857724541@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Dmitry Osipenko commit 6f55c5dd1118b3076d11d9cb17f5c5f4bc3a1162 upstream. The MAX77620 driver fails to re-probe on deferred probe because driver core tries to claim resources that are already claimed by the PINCTRL device. Use device_set_of_node_from_dev() helper which marks OF node as reused, skipping erroneous execution of pinctrl_bind_pins() for the PMIC device on the re-probe. Fixes: aea6cb99703e ("regulator: resolve supply after creating regulator") Signed-off-by: Dmitry Osipenko Link: https://lore.kernel.org/r/20210523224243.13219-2-digetx@gmail.com Signed-off-by: Mark Brown Signed-off-by: Greg Kroah-Hartman --- drivers/regulator/max77620-regulator.c | 7 +++++++ 1 file changed, 7 insertions(+) --- a/drivers/regulator/max77620-regulator.c +++ b/drivers/regulator/max77620-regulator.c @@ -792,6 +792,13 @@ static int max77620_regulator_probe(stru config.dev = dev; config.driver_data = pmic; + /* + * Set of_node_reuse flag to prevent driver core from attempting to + * claim any pinmux resources already claimed by the parent device. + * Otherwise PMIC driver will fail to re-probe. + */ + device_set_of_node_from_dev(&pdev->dev, pdev->dev.parent); + for (id = 0; id < MAX77620_NUM_REGS; id++) { struct regulator_dev *rdev; struct regulator_desc *rdesc;