From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753911AbdASQyX (ORCPT ); Thu, 19 Jan 2017 11:54:23 -0500 Received: from Galois.linutronix.de ([146.0.238.70]:57618 "EHLO Galois.linutronix.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753790AbdASQyU (ORCPT ); Thu, 19 Jan 2017 11:54:20 -0500 Date: Thu, 19 Jan 2017 17:54:09 +0100 (CET) From: Thomas Gleixner To: Andy Shevchenko cc: Ingo Molnar , "H . Peter Anvin" , linux-kernel@vger.kernel.org, x86@kernel.org, "Luis R . Rodriguez" Subject: Re: [PATCH v3 2/3] x86/platform/intel-mid: Allocate RTC interrupt for Merrifield In-Reply-To: <20170118174255.78945-3-andriy.shevchenko@linux.intel.com> Message-ID: References: <20170118174255.78945-1-andriy.shevchenko@linux.intel.com> <20170118174255.78945-3-andriy.shevchenko@linux.intel.com> User-Agent: Alpine 2.20 (DEB 67 2015-01-07) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, 18 Jan 2017, Andy Shevchenko wrote: > +#include > + > +#include > +#include > +#include > +#include > +#include > + > +static int __init mrfld_legacy_rtc_alloc_irq(void) > +{ > + struct irq_alloc_info info; > + int ret; > + > + if (!x86_platform.legacy.rtc) > + return -ENODEV; > + > + ioapic_set_alloc_attr(&info, NUMA_NO_NODE, 1, 0); > + ret = mp_map_gsi_to_irq(RTC_IRQ, IOAPIC_MAP_ALLOC, &info); > + if (ret < 0) { > + pr_info("Failed to allocate RTC interrupt. Disabling RTC\n"); > + x86_platform.legacy.rtc = 0; > + return ret; > + } > + > + return 0; > +} > + > +static int __init mrfld_legacy_rtc_init(void) > +{ > + if (intel_mid_identify_cpu() != INTEL_MID_CPU_CHIP_TANGIER) > + return -ENODEV; > + > + return mrfld_legacy_rtc_alloc_irq(); > +} > +rootfs_initcall(mrfld_legacy_rtc_init); rootfs_initcall???? That does not make any sense at all. I know you need it before the device initcalls, but just using a random initcall level before device_initcall is wrong. arch_initcall is much more suitable. Thanks, tglx