36 lines · plain
1.. SPDX-License-Identifier: GPL-2.02 3PTP_KVM support for arm/arm644=============================5 6PTP_KVM is used for high precision time sync between host and guests.7It relies on transferring the wall clock and counter value from the8host to the guest using a KVM-specific hypercall.9 10``ARM_SMCCC_VENDOR_HYP_KVM_PTP_FUNC_ID``11----------------------------------------12 13Retrieve current time information for the specific counter. There are no14endianness restrictions.15 16+---------------------+-------------------------------------------------------+17| Presence: | Optional |18+---------------------+-------------------------------------------------------+19| Calling convention: | HVC32 |20+---------------------+----------+--------------------------------------------+21| Function ID: | (uint32) | 0x86000001 |22+---------------------+----------+----+---------------------------------------+23| Arguments: | (uint32) | R1 | ``KVM_PTP_VIRT_COUNTER (0)`` |24| | | +---------------------------------------+25| | | | ``KVM_PTP_PHYS_COUNTER (1)`` |26+---------------------+----------+----+---------------------------------------+27| Return Values: | (int32) | R0 | ``NOT_SUPPORTED (-1)`` on error, else |28| | | | upper 32 bits of wall clock time |29| +----------+----+---------------------------------------+30| | (uint32) | R1 | Lower 32 bits of wall clock time |31| +----------+----+---------------------------------------+32| | (uint32) | R2 | Upper 32 bits of counter |33| +----------+----+---------------------------------------+34| | (uint32) | R3 | Lower 32 bits of counter |35+---------------------+----------+----+---------------------------------------+36