Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753244AbbH0CWx (ORCPT ); Wed, 26 Aug 2015 22:22:53 -0400 Received: from mga11.intel.com ([192.55.52.93]:45089 "EHLO mga11.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751579AbbH0CWw (ORCPT ); Wed, 26 Aug 2015 22:22:52 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.17,420,1437462000"; d="scan'208";a="791705010" Subject: Re: [PATCH 01/10] irqchip: irq-mips-gic: export gic_send_ipi To: Thomas Gleixner , Qais Yousef References: <1440419959-14315-1-git-send-email-qais.yousef@imgtec.com> <1440419959-14315-2-git-send-email-qais.yousef@imgtec.com> <55DB15EB.3090109@imgtec.com> <55DB1CD2.5030300@arm.com> <55DB29B5.3010202@imgtec.com> <55DB48C9.7010508@imgtec.com> <55DB519D.2090203@arm.com> <55DDA1C4.4070301@imgtec.com> <55DDD3E3.7070009@imgtec.com> <55DDDE3C.8030609@imgtec.com> Cc: Marc Zyngier , "alsa-devel@alsa-project.org" , Jason Cooper , "linux-kernel@vger.kernel.org" , "linux-mips@linux-mips.org" , Mark Rutland , Mark Brown From: Jiang Liu Organization: Intel Message-ID: <55DE7479.1010109@linux.intel.com> Date: Thu, 27 Aug 2015 10:22:49 +0800 User-Agent: Mozilla/5.0 (Windows NT 6.2; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.1.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1544 Lines: 42 On 2015/8/27 5:40, Thomas Gleixner wrote: > But back to the IPIs. We need infrastructure and DT support to: > > 1) reserve an IPI > > 2) send an IPI > > 3) request/free an IPI > > #1 We have no infrastructure for that, but we definitely need one. > > We can look at the IPI as a single linux irq number which is > replicated on all cpu cores. The replication can happen in hardware > or by software, but that depends on the underlying root irq > controller. How that is implemented does not matter for the > reservation. > > The most flexible and platform independent solution would be to > describe the IPI space as a seperate irq domain. In most cases this > would be a hierarchical domain stacked on the root irq domain: > > [IPI-domain] --> [GIC-MIPS-domain] > > on x86 this would be: > > [IPI-domain] --> [vector-domain] > > That needs some change how the IPIs which are used by the kernel > (rescheduling, function call ..) are set up, but we get a proper > management and collision avoidance that way. Depending on the > platform we could actually remove the whole IPI compile time > reservation and hand out IPIs at boot time on demand and > dynamically. Hi Thomas, Good point:) That will make the code more clear. Thanks! Gerry -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/