From patchwork Thu Mar 17 04:01:43 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Axel Lin X-Patchwork-Id: 598893 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3qQZRf3xgrz9sD3 for ; Thu, 17 Mar 2016 15:01:50 +1100 (AEDT) Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=ingics-com.20150623.gappssmtp.com header.i=@ingics-com.20150623.gappssmtp.com header.b=Yyuk/FUC; dkim-atps=neutral Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752540AbcCQEBt (ORCPT ); Thu, 17 Mar 2016 00:01:49 -0400 Received: from mail-pf0-f196.google.com ([209.85.192.196]:36062 "EHLO mail-pf0-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751851AbcCQEBs (ORCPT ); Thu, 17 Mar 2016 00:01:48 -0400 Received: by mail-pf0-f196.google.com with SMTP id q129so9400777pfb.3 for ; Wed, 16 Mar 2016 21:01:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ingics-com.20150623.gappssmtp.com; s=20150623; h=message-id:subject:from:to:cc:date:in-reply-to:references :mime-version:content-transfer-encoding; bh=PuKAMneHKL22QA87va2Fbjsr8ixxmjRWm3RseHeS37M=; b=Yyuk/FUC1QKl0Ju6h6d5Tj2S/FcWPOt19vHov9NfaDTo335mxBPC0jaCtOJowZ9Mvy sxbL9zHX4CZ2hqgWA4wcyJvDKyOXLuOOO35Fh9Ojq303hVgRXNQw68uOpSY66yS3BveJ rAMTdPgUSjrINqh0k7GdjT1Hj8GgpVyGBsjz2M0DOpvYvRDiX8cU1t1Fk737YjNA68B1 HdJwozZcqzFr7Y6t8As/u4PwBpvSfGPyO975+YvU519DKaUxW5EeOXrAC8dYN9TYh0YH cPTD2+eciWOBOjyWj8Re7/FP+qf7CYgvR/uQUhLFa8Yc9ycTBXizwvf5VU/7K/p30SBV tRvw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:message-id:subject:from:to:cc:date:in-reply-to :references:mime-version:content-transfer-encoding; bh=PuKAMneHKL22QA87va2Fbjsr8ixxmjRWm3RseHeS37M=; b=id3sgeBT7KR9wZnLy+C6kY7/Szp2k5a6KVnV7vlLqMSSptRs2CUHXHmdei4G+/aL3W pN2NIWQ8nhfnEcmt1Jakc+XlCEBQa0lyEh4uB/l6faV4xXDPB248nVWG3en8sbvn9VKU lQmIBXV/vZcAWgy5V5+sumgbppjAfeMVu2I8YBax1s/MdfF4WxeS5/ZzDAwvBJ5Zx33H 5uT2ZyfUuHkIcYTHsUU5MsEo2DEOCt7HE0dfDzaqcb5c462UdxIgQtwVY64VhO3Wp8Lc g3sGpY2C/muFLGiOwMWKJeYbjREE3NU14sAcWO2BYD7zWU2u3nhXLCQQBpcrzW1Va6Sv WYOg== X-Gm-Message-State: AD7BkJIp8KoiK0ud8rMJl5jBuMaDdLbuVm+n5PxOo6gTr//TLPaBkspauVYlyNd3lYg0sQ== X-Received: by 10.98.93.1 with SMTP id r1mr11414876pfb.57.1458187307567; Wed, 16 Mar 2016 21:01:47 -0700 (PDT) Received: from phoenix (59-115-243-141.dynamic.hinet.net. [59.115.243.141]) by smtp.gmail.com with ESMTPSA id r88sm9092689pfi.9.2016.03.16.21.01.44 (version=TLSv1/SSLv3 cipher=OTHER); Wed, 16 Mar 2016 21:01:46 -0700 (PDT) Message-ID: <1458187303.27037.3.camel@ingics.com> Subject: [PATCH 2/2] gpio: xgene-sb: Use irq_domain_free_irqs_common instead of open coded From: Axel Lin To: Linus Walleij Cc: Y Vo , Alexandre Courbot , Jiang Liu , Marc Zyngier , Thomas Gleixner , linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org Date: Thu, 17 Mar 2016 12:01:43 +0800 In-Reply-To: <1458187231.27037.1.camel@ingics.com> References: <1458187231.27037.1.camel@ingics.com> X-Mailer: Evolution 3.12.11-0ubuntu3 Mime-Version: 1.0 Sender: linux-gpio-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-gpio@vger.kernel.org Current code calls irq_domain_alloc_irqs_parent() in .alloc, so it should call irq_domain_free_irqs_parent() accordingly in .free. Fix it by switching to use irq_domain_free_irqs_common() instead. Signed-off-by: Axel Lin Acked-by: Marc Zyngier --- drivers/gpio/gpio-xgene-sb.c | 15 +-------------- 1 file changed, 1 insertion(+), 14 deletions(-) diff --git a/drivers/gpio/gpio-xgene-sb.c b/drivers/gpio/gpio-xgene-sb.c index 31cbcb8..0332586 100644 --- a/drivers/gpio/gpio-xgene-sb.c +++ b/drivers/gpio/gpio-xgene-sb.c @@ -216,23 +216,10 @@ static int xgene_gpio_sb_domain_alloc(struct irq_domain *domain, &parent_fwspec); } -static void xgene_gpio_sb_domain_free(struct irq_domain *domain, - unsigned int virq, - unsigned int nr_irqs) -{ - struct irq_data *d; - unsigned int i; - - for (i = 0; i < nr_irqs; i++) { - d = irq_domain_get_irq_data(domain, virq + i); - irq_domain_reset_irq_data(d); - } -} - static const struct irq_domain_ops xgene_gpio_sb_domain_ops = { .translate = xgene_gpio_sb_domain_translate, .alloc = xgene_gpio_sb_domain_alloc, - .free = xgene_gpio_sb_domain_free, + .free = irq_domain_free_irqs_common, .activate = xgene_gpio_sb_domain_activate, .deactivate = xgene_gpio_sb_domain_deactivate, };