Skip to contentSkip to conversation

Register a global handler for SystemCMOS accesses

PATCH New Adam Goode 1 participant 1 message May 2, 2015 ACPI

lore
Share & tools
lore

Adam Goode

author
#0 lore raw

PATCH 1/1 Register a global handler for SystemCMOS accesses

(This patch requires an update to acpica, sent to the acpica list at https://lists.acpica.org/pipermail/devel/2015-May/000698.html)

The acpi_cmos_rtc driver registers too late for early initialization as found on the Macmini7,1. So instead of matching against the PNP0B* names, just define a global handler for this kind of access.

Without this patch, BIOS-based Thunderbolt hotplug on this hardware does not work.

---
 drivers/acpi/Makefile        |  1 -
 drivers/acpi/acpi_cmos_rtc.c | 90 --------------------------------------------
 drivers/acpi/internal.h      |  5 ---
 drivers/acpi/osl.c           | 52 +++++++++++++++++++++++++
 drivers/acpi/scan.c          |  1 -
 5 files changed, 52 insertions(+), 97 deletions(-)
 delete mode 100644 drivers/acpi/acpi_cmos_rtc.c
drivers/acpi/Makefile +0 -1
index 8a063e2..f19e745 100644
@@ -48,7 +48,6 @@ acpi-y				+= power.o
 acpi-y				+= event.o
 acpi-y				+= sysfs.o
 acpi-y				+= property.o
-acpi-$(CONFIG_X86)		+= acpi_cmos_rtc.o
 acpi-$(CONFIG_DEBUG_FS)		+= debugfs.o
 acpi-$(CONFIG_ACPI_NUMA)	+= numa.o
 acpi-$(CONFIG_ACPI_PROCFS_POWER) += cm_sbs.o
drivers/acpi/acpi_cmos_rtc.c deleted +0 -90

90 lines not on this page · raw message

drivers/acpi/internal.h +0 -5
index ba4a61e..e9dfd1b 100644
@@ -53,11 +53,6 @@ static inline void register_dock_dependent_device(struct acpi_device *adev,
 static inline int dock_notify(struct acpi_device *adev, u32 event) { return -ENODEV; }
 static inline void acpi_dock_add(struct acpi_device *adev) {}
 #endif
-#ifdef CONFIG_X86
-void acpi_cmos_rtc_init(void);
-#else
-static inline void acpi_cmos_rtc_init(void) {}
-#endif
 
 extern bool acpi_force_hot_remove;
 
drivers/acpi/osl.c +52 -0

64 lines not on this page · raw message

drivers/acpi/scan.c +0 -1
index 03141aa..65f9fa5 100644
@@ -2648,7 +2648,6 @@ int __init acpi_scan_init(void)
 	acpi_processor_init();
 	acpi_lpss_init();
 	acpi_apd_init();
-	acpi_cmos_rtc_init();
 	acpi_container_init();
 	acpi_memory_hotplug_init();
 	acpi_pnp_init();
Signature · 1 line
2.3.7