Commit 01390853 authored by Rafael J. Wysocki's avatar Rafael J. Wysocki
Browse files

x86: rtc: Drop PNP device check



Previous changes effectively prevented PNP devices from being created
for the CMOS RTC on x86 with ACPI.

Although in principle a CMOS RTC PNP device may exist on an x86 system
without ACPI (that is, an x86 system where there is no ACPI at all, not
one booted with ACPI disabled), such systems were there in the field ~30
years ago and most likely they would not be able to run a contemporary
Linux kernel.

For the above reasons, drop the PNP device check from add_rtc_cmos().

Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
Acked-by: Dave Hansen <dave.hansen@linux.intel.com> # x86
Link: https://patch.msgid.link/8660687.T7Z3S40VBb@rafael.j.wysocki
parent d15f1c2e
Loading
Loading
Loading
Loading
+1 −16
Original line number Diff line number Diff line
@@ -6,7 +6,6 @@
#include <linux/platform_device.h>
#include <linux/mc146818rtc.h>
#include <linux/export.h>
#include <linux/pnp.h>

#include <asm/vsyscall.h>
#include <asm/x86_init.h>
@@ -134,19 +133,6 @@ static struct platform_device rtc_device = {

static __init int add_rtc_cmos(void)
{
#ifdef CONFIG_PNP
	static const char * const ids[] __initconst =
	    { "PNP0b00", "PNP0b01", "PNP0b02", };
	struct pnp_dev *dev;
	int i;

	pnp_for_each_dev(dev) {
		for (i = 0; i < ARRAY_SIZE(ids); i++) {
			if (compare_pnp_id(dev->id, ids[i]) != 0)
				return 0;
		}
	}
#endif
	if (cmos_rtc_platform_device_present)
		return 0;

@@ -154,8 +140,7 @@ static __init int add_rtc_cmos(void)
		return -ENODEV;

	platform_device_register(&rtc_device);
	dev_info(&rtc_device.dev,
		 "registered platform RTC device (no PNP device found)\n");
	dev_info(&rtc_device.dev, "registered fallback platform RTC device\n");

	return 0;
}