From: David Brownell HPET_RTC_IRQ is no longer needed; HPET_EMULATE_RTC suffices and is more correct. (http://bugzilla.kernel.org/show_bug.cgi?id=11111) Note that when using the legacy RTC driver, platforms don't really do a dynamic switch between HPET and non-HPET modes based on whether HPET hardware actually exists ... only rtc-cmos (using the new RTC framework) currently switches that way. So this reflects bitrot in that legacy code, for x86/ia64: kernels with HPET support configured (e.g. for a clocksource) can't get IRQs from the legacy RTC driver unless they really have HPET hardware. (The obvious workaround is to not use the legacy RTC driver on those platforms when you configure HPET ... unless you know the target really has a HPET.) Signed-off-by: David Brownell Cc: Alessandro Zummo Cc: Ingo Molnar Cc: Thomas Gleixner Signed-off-by: Andrew Morton --- drivers/char/Kconfig | 9 --------- drivers/char/rtc.c | 2 +- 2 files changed, 1 insertion(+), 10 deletions(-) diff -puN drivers/char/Kconfig~legacy-rtc-remove-needless-confusing-hpet_rtc_irq-option drivers/char/Kconfig --- a/drivers/char/Kconfig~legacy-rtc-remove-needless-confusing-hpet_rtc_irq-option +++ a/drivers/char/Kconfig @@ -1043,15 +1043,6 @@ config HPET open selects one of the timers supported by the HPET. The timers are non-periodic and/or periodic. -config HPET_RTC_IRQ - bool - default HPET_EMULATE_RTC - depends on RTC && HPET - help - If you say Y here, you will disable RTC_IRQ in drivers/char/rtc.c. It - is assumed the platform called hpet_alloc with the RTC IRQ values for - the HPET timers. - config HPET_MMAP bool "Allow mmap of HPET" default y diff -puN drivers/char/rtc.c~legacy-rtc-remove-needless-confusing-hpet_rtc_irq-option drivers/char/rtc.c --- a/drivers/char/rtc.c~legacy-rtc-remove-needless-confusing-hpet_rtc_irq-option +++ a/drivers/char/rtc.c @@ -96,7 +96,7 @@ static unsigned long rtc_port; static int rtc_irq = PCI_IRQ_NONE; #endif -#ifdef CONFIG_HPET_RTC_IRQ +#ifdef CONFIG_HPET_EMULATE_RTC #undef RTC_IRQ #endif _