From mboxrd@z Thu Jan 1 00:00:00 1970 From: Konrad Rzeszutek Wilk Subject: Re: [RFC v1 8/8] x86/init: use linker table for mid early setup Date: Wed, 20 Jan 2016 16:15:17 -0500 Message-ID: <20160120211517.GI4769@char.us.oracle.com> References: <1450217797-19295-1-git-send-email-mcgrof@do-not-panic.com> <1450217797-19295-9-git-send-email-mcgrof@do-not-panic.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Content-Disposition: inline In-Reply-To: <1450217797-19295-9-git-send-email-mcgrof@do-not-panic.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: "Luis R. Rodriguez" Cc: peter.senna@gmail.com, ryabinin.a.a@gmail.com, JBeulich@suse.com, hpa@zytor.com, qiuxishi@huawei.com, boris.ostrovsky@oracle.com, xen-devel@lists.xensource.com, joro@8bytes.org, x86@kernel.org, mingo@redhat.com, aryabinin@virtuozzo.com, mchehab@osg.samsung.com, andreyknvl@google.com, mcgrof@suse.com, rusty@rustcorp.com.au, bp@alien8.de, tglx@linutronix.de, mcb30@ipxe.org, valentinrothberg@gmail.com, jgross@suse.com, linux-kernel@vger.kernel.org, luto@amacapital.net, long.wanglong@huawei.com List-Id: xen-devel@lists.xenproject.org On Tue, Dec 15, 2015 at 02:16:37PM -0800, Luis R. Rodriguez wrote: > From: "Luis R. Rodriguez" > > Using the linker table removes the need for the #ifdef'ery > and clutter on head32.c. Reviewed-by: Konrad Rzeszutek Wilk > > Signed-off-by: Luis R. Rodriguez > --- > arch/x86/include/asm/setup.h | 6 ------ > arch/x86/kernel/head32.c | 7 ------- > arch/x86/platform/intel-mid/intel-mid.c | 4 +++- > 3 files changed, 3 insertions(+), 14 deletions(-) > > diff --git a/arch/x86/include/asm/setup.h b/arch/x86/include/asm/setup.h > index f1e111a9d558..1345c1de7f99 100644 > --- a/arch/x86/include/asm/setup.h > +++ b/arch/x86/include/asm/setup.h > @@ -45,12 +45,6 @@ extern void reserve_standard_io_resources(void); > extern void i386_reserve_resources(void); > extern void setup_default_timer_irq(void); > > -#ifdef CONFIG_X86_INTEL_MID > -extern void x86_intel_mid_early_setup(void); > -#else > -static inline void x86_intel_mid_early_setup(void) { } > -#endif > - > #ifndef _SETUP > > #include > diff --git a/arch/x86/kernel/head32.c b/arch/x86/kernel/head32.c > index ec6912873395..b23d16a2a5d5 100644 > --- a/arch/x86/kernel/head32.c > +++ b/arch/x86/kernel/head32.c > @@ -36,13 +36,6 @@ asmlinkage __visible void __init i386_start_kernel(void) > cr4_init_shadow(); > sanitize_boot_params(&boot_params); > > - /* Call the subarch specific early setup function */ > - switch (boot_params.hdr.hardware_subarch) { > - case X86_SUBARCH_INTEL_MID: > - x86_intel_mid_early_setup(); > - break; > - } > - > x86_init_fn_init_tables(); > x86_init_fn_early_init(); > > diff --git a/arch/x86/platform/intel-mid/intel-mid.c b/arch/x86/platform/intel-mid/intel-mid.c > index 1bbc21e2e4ae..27bc33193a06 100644 > --- a/arch/x86/platform/intel-mid/intel-mid.c > +++ b/arch/x86/platform/intel-mid/intel-mid.c > @@ -167,7 +167,7 @@ static unsigned char intel_mid_get_nmi_reason(void) > * Moorestown specific x86_init function overrides and early setup > * calls. > */ > -void __init x86_intel_mid_early_setup(void) > +static void __init x86_intel_mid_early_setup(void) > { > x86_init.resources.probe_roms = x86_init_noop; > x86_init.resources.reserve_resources = x86_init_noop; > @@ -199,6 +199,8 @@ void __init x86_intel_mid_early_setup(void) > x86_init.mpparse.get_smp_config = x86_init_uint_noop; > set_bit(MP_BUS_ISA, mp_bus_not_pci); > } > +x86_init_early(BIT(X86_SUBARCH_INTEL_MID), NULL, NULL, > + x86_intel_mid_early_setup); > > /* > * if user does not want to use per CPU apb timer, just give it a lower rating > -- > 2.6.2 >