Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp1931546ybl; Tue, 3 Dec 2019 15:12:55 -0800 (PST) X-Google-Smtp-Source: APXvYqwo6hAcVyRNDlqgkrortErXaFrT26UvX0HaSZFipLKkkuEG6Iq+O9JjfgyTixgbvLtpkzq0 X-Received: by 2002:a05:6830:1bd5:: with SMTP id v21mr334073ota.154.1575414775411; Tue, 03 Dec 2019 15:12:55 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1575414775; cv=none; d=google.com; s=arc-20160816; b=oxISQfK0fg9i0FhzF+3GpUtW2llXKipx4+XLeX1IHvcv11r0fXSGvG8AczBa8ZsU1c Zagt1O+AK46wydrRlg6PfpB3HWuky5VVt4+vSw63cg3524cFbKF5RFlZGFKrv94aohBn M4phIR0XsjihJr3HXs++IPd3352zq17bj7a5sTG7nvDLkiBwBaMNYsCD3W01LtOSPLus rRX4KCSbVRVH3VYu6RrkjQChwkdkd0CkCGdDLYRnfwPChig9cz1B9o7Dj5zVKfJjh8vN YIeAbjJnjBF568fbXWrmEu6vKLKiKhHPtd8aFVk3QC3SVnovOVBkhJyMLpn7N3rPT7hQ UCyw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=guAt5Sh73Q45cxvIzMd0f8hvbp8Y1G9pOvn7RSB/7Zs=; b=xmUtTF+QTdq9YNvMYaMGCXPO9MBPGan/A91K6ewLcLCb4yCFnHQuOpZRgsD4qIw8c/ m+nyESXjQtoItT4Wbf+cQ1azHDzwK2byylCj9jby6Q2NVw3oBq+PrCIPd04Fs/2kadbc qS6vIXvHWsgYNXTJ0dZhP5BaqXibKOqJ1fpD24laLUKy+sbaWLBP1fmg8VfMpOKNQyoI bJE364Sycy8amGXqRwcPk6L6RBeO/33lQs041I3VhDIQFsFUuwByi4J1Ra3GA+nO+Xub 8r+EhQOXKG4EgEcMXwVnRXQ0EkaakXc3L+yZAISO0+ToMwSjdsmPzCS2VUBAzXt3FBUq lZ5g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=jlSp2Xah; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id m23si2086682otl.57.2019.12.03.15.12.43; Tue, 03 Dec 2019 15:12:55 -0800 (PST) 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=@kernel.org header.s=default header.b=jlSp2Xah; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728681AbfLCXKy (ORCPT + 99 others); Tue, 3 Dec 2019 18:10:54 -0500 Received: from mail.kernel.org ([198.145.29.99]:56560 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728602AbfLCWly (ORCPT ); Tue, 3 Dec 2019 17:41:54 -0500 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 9AB132084F; Tue, 3 Dec 2019 22:41:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1575412914; bh=5o3M3UYp5jDE3x0RN1DzajD151l0mFd9GSKZfDzrcyU=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=jlSp2XahCHL/RmAaZcIFQcDEH21md2Bk7zpMpQgkGAjvCzPFbGGmM9QmVkJ7hpCNv 04UqRKmANmcJw3jXywd9ecmmirdTQRKtm6zX64uD3FQPe0oVFQOv5EUt7DoNjNNFIy IUil8yZL8mFmb4RhlkQzO9EFKwL1Jl3PAkmDktJQ= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Jorge Ramirez-Ortiz , Loic Poulain , Guenter Roeck , Wim Van Sebroeck , Sasha Levin Subject: [PATCH 5.3 065/135] watchdog: pm8916_wdt: fix pretimeout registration flow Date: Tue, 3 Dec 2019 23:35:05 +0100 Message-Id: <20191203213024.737650554@linuxfoundation.org> X-Mailer: git-send-email 2.24.0 In-Reply-To: <20191203213005.828543156@linuxfoundation.org> References: <20191203213005.828543156@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Jorge Ramirez-Ortiz [ Upstream commit 1993f1d7ca3f315e0459c58c8e7038039a96dd85 ] When an IRQ is present in the dts, the probe function shall fail if the interrupt can not be registered. The probe function shall also be retried if getting the irq is being deferred. Signed-off-by: Jorge Ramirez-Ortiz Reviewed-by: Loic Poulain Reviewed-by: Guenter Roeck Signed-off-by: Guenter Roeck Signed-off-by: Wim Van Sebroeck Signed-off-by: Sasha Levin --- drivers/watchdog/pm8916_wdt.c | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/drivers/watchdog/pm8916_wdt.c b/drivers/watchdog/pm8916_wdt.c index 2d3652004e39c..1213179f863c2 100644 --- a/drivers/watchdog/pm8916_wdt.c +++ b/drivers/watchdog/pm8916_wdt.c @@ -163,9 +163,17 @@ static int pm8916_wdt_probe(struct platform_device *pdev) irq = platform_get_irq(pdev, 0); if (irq > 0) { - if (devm_request_irq(dev, irq, pm8916_wdt_isr, 0, "pm8916_wdt", - wdt)) - irq = 0; + err = devm_request_irq(dev, irq, pm8916_wdt_isr, 0, + "pm8916_wdt", wdt); + if (err) + return err; + + wdt->wdev.info = &pm8916_wdt_pt_ident; + } else { + if (irq == -EPROBE_DEFER) + return -EPROBE_DEFER; + + wdt->wdev.info = &pm8916_wdt_ident; } /* Configure watchdog to hard-reset mode */ @@ -177,7 +185,6 @@ static int pm8916_wdt_probe(struct platform_device *pdev) return err; } - wdt->wdev.info = (irq > 0) ? &pm8916_wdt_pt_ident : &pm8916_wdt_ident, wdt->wdev.ops = &pm8916_wdt_ops, wdt->wdev.parent = dev; wdt->wdev.min_timeout = PM8916_WDT_MIN_TIMEOUT; -- 2.20.1