From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932262AbcBHQuG (ORCPT ); Mon, 8 Feb 2016 11:50:06 -0500 Received: from hqemgate15.nvidia.com ([216.228.121.64]:8226 "EHLO hqemgate15.nvidia.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932213AbcBHQuC (ORCPT ); Mon, 8 Feb 2016 11:50:02 -0500 X-PGP-Universal: processed; by hqnvupgp08.nvidia.com on Mon, 08 Feb 2016 08:50:29 -0800 Message-ID: <56B8C484.7000309@nvidia.com> Date: Mon, 8 Feb 2016 22:08:28 +0530 From: Laxman Dewangan User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.4.0 MIME-Version: 1.0 To: Mark Brown CC: , , , , , , , , Subject: Re: [PATCH V4 1/6] regmap: irq: add apis to unmap the mapped irq References: <1454769447-785-1-git-send-email-ldewangan@nvidia.com> <1454769447-785-2-git-send-email-ldewangan@nvidia.com> <20160208145550.GE7265@sirena.org.uk> In-Reply-To: <20160208145550.GE7265@sirena.org.uk> X-Originating-IP: [10.19.65.30] X-ClientProxiedBy: DRUKMAIL102.nvidia.com (10.25.59.20) To bgmail102.nvidia.com (10.25.59.11) Content-Type: text/plain; charset="ISO-8859-1"; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Monday 08 February 2016 08:25 PM, Mark Brown wrote: > * PGP Signed by an unknown key > > On Sat, Feb 06, 2016 at 08:07:22PM +0530, Laxman Dewangan wrote: > >> Before removing irq domains, it is require to unmap all >> mapped interrupt from that domain. Currently there is API >> to map the interrupt on chip as regmap_irq_get_virq() for >> creating mapping. Add equivalent API to dispose the mapped >> irq in irq domains. > This makes no sense to me. Why would you ever want to unmap the > interrupts separately to destroying the domain This is the requirement from irq_domain_remove(). This is what we have in irq_domain_remove(): kernel/irq/irqdomain.c /* * This routine is used to remove an irq domain. The caller must ensure * that all mappings within the domain have been disposed of prior to * use, depending on the revmap type. */ void irq_domain_remove(struct irq_domain *domain) I am adding the API equivalent to regmap_irq_get_virq() to unmap virtual irq here. > and why would you ever > want to destroy the domain without unmapping the interrupts? > That's exactlly we are trying to do, unmap interrupt in client level before destroying domain.