[PATCH v7 6/7] ptp: ptp_vmclock: remove dependency on CONFIG_ACPI

From: Takahiro Itazuri

Date: Fri Jan 30 2026 - 12:42:03 EST


From: David Woodhouse <dwmw@xxxxxxxxxxxx>

Now that we added device tree support we can remove dependency on
CONFIG_ACPI.

Signed-off-by: David Woodhouse <dwmw@xxxxxxxxxxxx>
Signed-off-by: Babis Chalios <bchalios@xxxxxxxxx>
Tested-by: Takahiro Itazuri <itazur@xxxxxxxxxx>
---
drivers/ptp/Kconfig | 2 +-
drivers/ptp/ptp_vmclock.c | 14 ++++++++++----
2 files changed, 11 insertions(+), 5 deletions(-)

diff --git a/drivers/ptp/Kconfig b/drivers/ptp/Kconfig
index 5f8ea34d1..b93640ca0 100644
--- a/drivers/ptp/Kconfig
+++ b/drivers/ptp/Kconfig
@@ -134,7 +134,7 @@ config PTP_1588_CLOCK_KVM
config PTP_1588_CLOCK_VMCLOCK
tristate "Virtual machine PTP clock"
depends on X86_TSC || ARM_ARCH_TIMER
- depends on PTP_1588_CLOCK && ACPI && ARCH_SUPPORTS_INT128
+ depends on PTP_1588_CLOCK && ARCH_SUPPORTS_INT128
default PTP_1588_CLOCK_KVM
help
This driver adds support for using a virtual precision clock
diff --git a/drivers/ptp/ptp_vmclock.c b/drivers/ptp/ptp_vmclock.c
index 2a173bd28..b6e9d4c96 100644
--- a/drivers/ptp/ptp_vmclock.c
+++ b/drivers/ptp/ptp_vmclock.c
@@ -490,6 +490,7 @@ static const struct file_operations vmclock_miscdev_fops = {

/* module operations */

+#if IS_ENABLED(CONFIG_ACPI)
static acpi_status vmclock_acpi_resources(struct acpi_resource *ares, void *data)
{
struct vmclock_state *st = data;
@@ -573,6 +574,7 @@ static int vmclock_probe_acpi(struct device *dev, struct vmclock_state *st)

return 0;
}
+#endif /* CONFIG_ACPI */

static irqreturn_t vmclock_of_irq_handler(int __always_unused irq, void *_st)
{
@@ -616,11 +618,11 @@ static int vmclock_setup_notification(struct device *dev,
if (!(le64_to_cpu(st->clk->flags) & VMCLOCK_FLAG_NOTIFICATION_PRESENT))
return 0;

- if (has_acpi_companion(dev)) {
+#if IS_ENABLED(CONFIG_ACPI)
+ if (has_acpi_companion(dev))
return vmclock_setup_acpi_notification(dev);
- } else {
- return vmclock_setup_of_notification(dev);
- }
+#endif
+ return vmclock_setup_of_notification(dev);
}

static void vmclock_remove(void *data)
@@ -633,10 +635,12 @@ static void vmclock_remove(void *data)
return;
}

+#if IS_ENABLED(CONFIG_ACPI)
if (has_acpi_companion(dev))
acpi_remove_notify_handler(ACPI_COMPANION(dev)->handle,
ACPI_DEVICE_NOTIFY,
vmclock_acpi_notification_handler);
+#endif

if (st->ptp_clock)
ptp_clock_unregister(st->ptp_clock);
@@ -664,9 +668,11 @@ static int vmclock_probe(struct platform_device *pdev)
if (!st)
return -ENOMEM;

+#if IS_ENABLED(CONFIG_ACPI)
if (has_acpi_companion(dev))
ret = vmclock_probe_acpi(dev, st);
else
+#endif
ret = vmclock_probe_dt(dev, st);

if (ret) {
--
2.50.1