Received: by 2002:a05:6a10:2726:0:0:0:0 with SMTP id ib38csp949066pxb; Wed, 6 Apr 2022 05:06:42 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwFm+Jh2+xWlWhPVRGapv2L3NZZBfGnR40Tti0moejtiCQ3w30lhNhJL29YqXQADGrsIgLh X-Received: by 2002:a5d:9d44:0:b0:645:b6e9:4bbb with SMTP id k4-20020a5d9d44000000b00645b6e94bbbmr4022810iok.77.1649246802448; Wed, 06 Apr 2022 05:06:42 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1649246802; cv=none; d=google.com; s=arc-20160816; b=XXtrmC5JgYltwdIapJKBWdQGiQ0Qwxv4T6PBJW6vyxW4atqSLOE8WuL4iROv73DLYT ID3u1EFCK+EStwDIofrP47/6INbJiNGb0QwNoKmI857vya34Lm/cnlRX8vBq2ibShZWw itAX8/i63WnPBAKV5zC+u171GDGd9Gb1rhga50DchtV2EEZwdsZdvzjjxNpdEVuk6StL TqMYwy1cvJbsbduuQ/TjcFhGzHR9o+ntD/mP4sr8zFDAj7KzEomLwlDj8IQkVkLvxEQp V/cDVUaEOhSC3NI1zNarBLN6zKLCUEu1lpE64oQruEySo68Y3h1b+AwfqITdAjqc79th pkkA== 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=FI4YHRy6J3qnGTJCBIBavEyGUTYCGHmYtWVV8kHGU58=; b=Ve/53f/FjwpBrtmEd8/Ro3SZpnfa5g8GUgu5FisrNZsBqJoctJR8pBo2bWfQjYeXpP zbKnEJU4FHRTSpHJhzQsen3UNamtgaTUzW0GbjcoaKdE+g1y4zImXkRrvrCLFUFTRIPB m1iMeqEz2z21r7bKDOA1WAUn5K9h1kFLe/rTafcOl8ITGPKm6RBWnhrzdts0hW83P288 0t32F/igkaSDKgbav0TR2uPbg8iSbFm575alOQVDGqX7g4QiV012WLSNhthPVcZMeb/0 rwHTFkbUlzSgJCWbQuC3RErzo/s1YZdtUMXrwyRksStOArGGt1GkFA6d28uVfENSnl86 ipDw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=MFsJqQrq; spf=softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 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 lindbergh.monkeyblade.net (lindbergh.monkeyblade.net. [23.128.96.19]) by mx.google.com with ESMTPS id j10-20020a926e0a000000b002c7c7bfb6b9si7837533ilc.87.2022.04.06.05.06.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 06 Apr 2022 05:06:42 -0700 (PDT) Received-SPF: softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) client-ip=23.128.96.19; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=MFsJqQrq; spf=softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: from out1.vger.email (out1.vger.email [IPv6:2620:137:e000::1:20]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 916AE47BC0A; Wed, 6 Apr 2022 03:35:14 -0700 (PDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1454399AbiDEWid (ORCPT + 99 others); Tue, 5 Apr 2022 18:38:33 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:47428 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1348966AbiDEJsu (ORCPT ); Tue, 5 Apr 2022 05:48:50 -0400 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D2FE2A66C4; Tue, 5 Apr 2022 02:38:14 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 6EDA46165C; Tue, 5 Apr 2022 09:38:14 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 80610C385A2; Tue, 5 Apr 2022 09:38:13 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1649151493; bh=7oMBxw5Ep26R/6R297Y09+0/4ozMGQM2xnuGuzQcQu8=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=MFsJqQrqWgi6AZNdGNIQlFt/iykla6gkbx8LGHzaQeEdHUAJJSkq/wFEnZQvS23iX B8F7dTNQWD73v8VLvnlECKsrD9G99jtrID8LgHSPAGOPZtXcG7dpPTlwZr070dlZEO eTTTz813Hy/xAgh0kcxf3rDcRIj4xwHD7NTr1HPU= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Lad Prabhakar , Florian Fainelli , Wolfram Sang , Sasha Levin Subject: [PATCH 5.15 435/913] i2c: bcm2835: Use platform_get_irq() to get the interrupt Date: Tue, 5 Apr 2022 09:24:57 +0200 Message-Id: <20220405070352.885170055@linuxfoundation.org> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20220405070339.801210740@linuxfoundation.org> References: <20220405070339.801210740@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RDNS_NONE,SPF_HELO_NONE,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Lad Prabhakar [ Upstream commit c3b2f911ac11892b672df7829becf28d3a830073 ] platform_get_resource(pdev, IORESOURCE_IRQ, ..) relies on static allocation of IRQ resources in DT core code, this causes an issue when using hierarchical interrupt domains using "interrupts" property in the node as this bypasses the hierarchical setup and messes up the irq chaining. In preparation for removal of static setup of IRQ resource from DT core code use platform_get_irq(). Signed-off-by: Lad Prabhakar Reviewed-by: Florian Fainelli Signed-off-by: Wolfram Sang Signed-off-by: Sasha Levin --- drivers/i2c/busses/i2c-bcm2835.c | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/drivers/i2c/busses/i2c-bcm2835.c b/drivers/i2c/busses/i2c-bcm2835.c index ad3b124a2e37..5149454eef4a 100644 --- a/drivers/i2c/busses/i2c-bcm2835.c +++ b/drivers/i2c/busses/i2c-bcm2835.c @@ -407,7 +407,7 @@ static const struct i2c_adapter_quirks bcm2835_i2c_quirks = { static int bcm2835_i2c_probe(struct platform_device *pdev) { struct bcm2835_i2c_dev *i2c_dev; - struct resource *mem, *irq; + struct resource *mem; int ret; struct i2c_adapter *adap; struct clk *mclk; @@ -457,12 +457,9 @@ static int bcm2835_i2c_probe(struct platform_device *pdev) return ret; } - irq = platform_get_resource(pdev, IORESOURCE_IRQ, 0); - if (!irq) { - dev_err(&pdev->dev, "No IRQ resource\n"); - return -ENODEV; - } - i2c_dev->irq = irq->start; + i2c_dev->irq = platform_get_irq(pdev, 0); + if (i2c_dev->irq < 0) + return i2c_dev->irq; ret = request_irq(i2c_dev->irq, bcm2835_i2c_isr, IRQF_SHARED, dev_name(&pdev->dev), i2c_dev); -- 2.34.1