From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Gleixner Subject: Re: [RFC Part1 v1 07/18] x86, irq: Introduce helpers to access struct irq_cfg Date: Thu, 11 Sep 2014 11:27:40 +0200 (CEST) Message-ID: References: <1410423905-26239-1-git-send-email-jiang.liu@linux.intel.com> <1410423905-26239-8-git-send-email-jiang.liu@linux.intel.com> Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Return-path: In-Reply-To: <1410423905-26239-8-git-send-email-jiang.liu@linux.intel.com> Sender: linux-pci-owner@vger.kernel.org To: Jiang Liu Cc: Benjamin Herrenschmidt , Ingo Molnar , "H. Peter Anvin" , "Rafael J. Wysocki" , Bjorn Helgaas , Randy Dunlap , Yinghai Lu , Borislav Petkov , Grant Likely , Konrad Rzeszutek Wilk , Andrew Morton , Tony Luck , Joerg Roedel , Greg Kroah-Hartman , x86@kernel.org, linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org, linux-acpi@vger.kernel.org List-Id: linux-acpi@vger.kernel.org On Thu, 11 Sep 2014, Jiang Liu wrote: > Change irq_cfg() from static to extern, also introduce helper function > irqd_cfg(). Later we could rewrite these two helpers when enabling > hierarchy irqdomain. > > Signed-off-by: Jiang Liu > --- > arch/x86/include/asm/hw_irq.h | 2 ++ > arch/x86/kernel/apic/io_apic.c | 7 ++++++- > 2 files changed, 8 insertions(+), 1 deletion(-) > > diff --git a/arch/x86/include/asm/hw_irq.h b/arch/x86/include/asm/hw_irq.h > index 18e8717bf644..f457fcd0f3ba 100644 > --- a/arch/x86/include/asm/hw_irq.h > +++ b/arch/x86/include/asm/hw_irq.h > @@ -132,6 +132,8 @@ struct irq_cfg { > }; > }; > > +extern struct irq_cfg *irq_cfg(unsigned int irq); > +extern struct irq_cfg *irqd_cfg(struct irq_data *irq_data); > extern void setup_vector_irq(int cpu); > extern int assign_irq_vector(int, struct irq_cfg *, const struct cpumask *); > extern void send_cleanup_vector(struct irq_cfg *); > diff --git a/arch/x86/kernel/apic/io_apic.c b/arch/x86/kernel/apic/io_apic.c > index ee3d3ff521a3..9b048c239dd4 100644 > --- a/arch/x86/kernel/apic/io_apic.c > +++ b/arch/x86/kernel/apic/io_apic.c > @@ -281,11 +281,16 @@ int __init arch_early_irq_init(void) > return 0; > } > > -static inline struct irq_cfg *irq_cfg(unsigned int irq) > +struct irq_cfg *irq_cfg(unsigned int irq) > { > return irq_get_chip_data(irq); > } > > +struct irq_cfg *irqd_cfg(struct irq_data *irq_data) > +{ > + return irq_data->chip_data; > +} We can make those inlines. There is no point to have that as global functions. Thanks, tglx