0001 .. SPDX-License-Identifier: GPL-2.0
0002
0003 PTP_KVM support for arm/arm64
0004 =============================
0005
0006 PTP_KVM is used for high precision time sync between host and guests.
0007 It relies on transferring the wall clock and counter value from the
0008 host to the guest using a KVM-specific hypercall.
0009
0010 * ARM_SMCCC_VENDOR_HYP_KVM_PTP_FUNC_ID: 0x86000001
0011
0012 This hypercall uses the SMC32/HVC32 calling convention:
0013
0014 ARM_SMCCC_VENDOR_HYP_KVM_PTP_FUNC_ID
0015 ============== ======== =====================================
0016 Function ID: (uint32) 0x86000001
0017 Arguments: (uint32) KVM_PTP_VIRT_COUNTER(0)
0018 KVM_PTP_PHYS_COUNTER(1)
0019 Return Values: (int32) NOT_SUPPORTED(-1) on error, or
0020 (uint32) Upper 32 bits of wall clock time (r0)
0021 (uint32) Lower 32 bits of wall clock time (r1)
0022 (uint32) Upper 32 bits of counter (r2)
0023 (uint32) Lower 32 bits of counter (r3)
0024 Endianness: No Restrictions.
0025 ============== ======== =====================================