Received: by 2002:a05:6a10:a0d1:0:0:0:0 with SMTP id j17csp2099014pxa; Mon, 17 Aug 2020 00:04:51 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzsObSlWQ7MIXVeuQ0ISauewbeITaVmJ5gflA/lsZXZL+aN0Wi58gwIzd3Z5VdgLT+9SVqA X-Received: by 2002:a17:906:a4b:: with SMTP id x11mr14484853ejf.83.1597647891531; Mon, 17 Aug 2020 00:04:51 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1597647891; cv=none; d=google.com; s=arc-20160816; b=J7BM3NKSEibKdCZo19zIcehnpjgX//SScuyMHr+Ocrml625KKMKRem1dr71bXsgv7k ikop5CWONDgH6jHd89DstxAmDacIFpmHzuHlBlm7NyL8qgYOEAWnp8mHs+pWNu0KCmbj 8in57fJwINXUQ1uaAvqVjM8bfp0Lp53GUyCeK3PVQgUuMnlaqtw6x8eQhiyW90zqlbF9 48OlUGNK57lmLUBqXDZfsxPTxju3eF3+yaHxr2fMrzVzCtSqEK6dnNQxgBWTD/zv90rq 0LyYkEK1FxljwedJwx2C9F+aSf6CFyGJu+mNHA9LYP2Ched+ix4Em1THyds2S/dU1jE4 Gu6Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:to:from:dkim-signature; bh=CGGwjebU5yeRM3JbWe9WLTov/kgHCvbgeB2/HMXpneE=; b=VVBoAYK2nXDMOf41QnS34h6BI4/QPqA4jY9bo1njyBPEYWK8HC2gyx6h1smSPX/ut+ J6pIocX9wXioZqdrKdHCURw+cy5X36qgSySQzC6zE9S8GZxocChPOhV//PEKdLHFzYJZ iRe+hppChPJdAotq8M+8M6obbwnfV6CVPXF3l/9VFEdU8Wq7gKHmkiaUfXGhDEU3QhPq icHQYaXoVK5tvAvQWBbZUxonXAiSlbApuexoQtTj+XcBPZfVR59+F+vJP+G5JUNHdj0X 4I6OkJ6oug1uxyry1xCziH2KqncyC/8FPLHgANL2hVyVuwXPhWblGdECu6bs3X+UAeOm ySEQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=tD4Cr2Je; 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=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id n20si10440685ejo.160.2020.08.17.00.04.28; Mon, 17 Aug 2020 00:04:51 -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=@kernel.org header.s=default header.b=tD4Cr2Je; 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=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726953AbgHQHDX (ORCPT + 99 others); Mon, 17 Aug 2020 03:03:23 -0400 Received: from mail.kernel.org ([198.145.29.99]:41730 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726349AbgHQHA3 (ORCPT ); Mon, 17 Aug 2020 03:00:29 -0400 Received: from localhost.localdomain (unknown [194.230.155.242]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 22A2A207FB; Mon, 17 Aug 2020 07:00:26 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1597647628; bh=cZA9ZUARN+utcYkCJWoSAM3zaWPeBpxOmpgTjJgh5s8=; h=From:To:Subject:Date:In-Reply-To:References:From; b=tD4Cr2JesNZLkoLInAuT7zRPnlGs2KbpxEfpPfVFYqhs8MJ/zpMI7culDGiYnTT6v XzNbsKqHjbMt39ifPAlL0qdmVqmakqTLQKo9wIHmw2kvf/k1PO/Ikbvf1OYBGb9eyW RIG5syYrs+k6kw+ToWuVQPRr3YuC42EM8Qlpy9X8= From: Krzysztof Kozlowski To: MyungJoo Ham , Chanwoo Choi , Rob Herring , Krzysztof Kozlowski , Vijai Kumar K , linux-kernel@vger.kernel.org, devicetree@vger.kernel.org Subject: [PATCH v2 05/13] extcon: ptn5150: Use generic "interrupts" property Date: Mon, 17 Aug 2020 09:00:01 +0200 Message-Id: <20200817070009.4631-6-krzk@kernel.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20200817070009.4631-1-krzk@kernel.org> References: <20200817070009.4631-1-krzk@kernel.org> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Interrupts do not have to be always GPIO based so instead of expecting "int-gpios" property and converting the GPIO to an interrupt, just accept any interrupt via generic "interrupts" property. Keep support for old "int-gpios" for backward compatibility. Signed-off-by: Krzysztof Kozlowski --- drivers/extcon/extcon-ptn5150.c | 33 ++++++++++++++++++--------------- 1 file changed, 18 insertions(+), 15 deletions(-) diff --git a/drivers/extcon/extcon-ptn5150.c b/drivers/extcon/extcon-ptn5150.c index 5f5252752644..12e52ddbd77e 100644 --- a/drivers/extcon/extcon-ptn5150.c +++ b/drivers/extcon/extcon-ptn5150.c @@ -239,11 +239,6 @@ static int ptn5150_i2c_probe(struct i2c_client *i2c, info->dev = &i2c->dev; info->i2c = i2c; - info->int_gpiod = devm_gpiod_get(&i2c->dev, "int", GPIOD_IN); - if (IS_ERR(info->int_gpiod)) { - dev_err(dev, "failed to get INT GPIO\n"); - return PTR_ERR(info->int_gpiod); - } info->vbus_gpiod = devm_gpiod_get(&i2c->dev, "vbus", GPIOD_IN); if (IS_ERR(info->vbus_gpiod)) { dev_err(dev, "failed to get VBUS GPIO\n"); @@ -267,22 +262,30 @@ static int ptn5150_i2c_probe(struct i2c_client *i2c, return ret; } - if (info->int_gpiod) { + if (i2c->irq > 0) { + info->irq = i2c->irq; + } else { + info->int_gpiod = devm_gpiod_get(&i2c->dev, "int", GPIOD_IN); + if (IS_ERR(info->int_gpiod)) { + dev_err(dev, "failed to get INT GPIO\n"); + return PTR_ERR(info->int_gpiod); + } + info->irq = gpiod_to_irq(info->int_gpiod); if (info->irq < 0) { dev_err(dev, "failed to get INTB IRQ\n"); return info->irq; } + } - ret = devm_request_threaded_irq(dev, info->irq, NULL, - ptn5150_irq_handler, - IRQF_TRIGGER_FALLING | - IRQF_ONESHOT, - i2c->name, info); - if (ret < 0) { - dev_err(dev, "failed to request handler for INTB IRQ\n"); - return ret; - } + ret = devm_request_threaded_irq(dev, info->irq, NULL, + ptn5150_irq_handler, + IRQF_TRIGGER_FALLING | + IRQF_ONESHOT, + i2c->name, info); + if (ret < 0) { + dev_err(dev, "failed to request handler for INTB IRQ\n"); + return ret; } /* Allocate extcon device */ -- 2.17.1