From: Wen Gu <guwen@linux.alibaba.com>
To: richardcochran@gmail.com, dwmw2@infradead.org,
andrew+netdev@lunn.ch, davem@davemloft.net, edumazet@google.com,
kuba@kernel.org, pabeni@redhat.com, netdev@vger.kernel.org,
linux-kernel@vger.kernel.org
Cc: svens@linux.ibm.com, nick.shi@broadcom.com,
ajay.kaher@broadcom.com, alexey.makhalov@broadcom.com,
bcm-kernel-feedback-list@broadcom.com,
linux-s390@vger.kernel.org, xuanzhuo@linux.alibaba.com,
dust.li@linux.alibaba.com, mani@kernel.org,
imran.shaik@oss.qualcomm.com
Subject: [PATCH v3 0/2] ptp: split non-host-disciplined PHC drivers into a dedicated subdirectory
Date: Tue, 30 Jun 2026 11:15:17 +0800 [thread overview]
Message-ID: <20260630031519.23072-1-guwen@linux.alibaba.com> (raw)
Hi all,
This series follows the discussion in RFC [1-2], v1 [3] and v2 [4].
# Background
The PTP Hardware Clock (PHC) interface (/dev/ptpX and the standard PTP_*
ioctls) is used by two distinct classes of drivers in drivers/ptp/:
host-disciplined PHC drivers whose frequency and phase are adjusted by
the host's time synchronization stack, and non-host-disciplined PHC
drivers that expose an external precision time reference and are
read-only. Several non-host-disciplined PHC drivers already exist in
the kernel [5-9], and more are expected to appear [10-11].
During review of incoming non-host-disciplined PHC drivers, concerns
were raised that they may not be a good fit for the netdev maintainership
model [12], where all PTP/PHC drivers are currently maintained. This
leaves an unclear upstream home and maintainership model for this class
of drivers.
# Proposal
This series makes the separation explicit by reorganizing the drivers/ptp/
layout into the following groups:
- drivers/ptp/ : PTP core infrastructure and host-disciplined
PHC drivers.
- drivers/ptp/emulated/ : non-host-disciplined PHC drivers that expose
precision time from hypervisors, platforms,
or firmware. These clocks are read-only and
not adjusted by the host.
Patch 1 performs the directory reorganization: move drivers and split
Kconfig/Makefiles accordingly, without intended functional changes.
Patch 2 updates MAINTAINERS to match the new layout and adds a
dedicated entry for drivers/ptp/emulated/.
No userspace ABI changes are intended; this is a refactor and maintenance
metadata update only.
# Changes since v2:
- List David Woodhouse as the sole maintainer (M:) of emulated PTP
drivers as suggested by Jakub. Wen Gu and Xuan Zhuo are listed as
reviewers (R:).
- Updated the T: field to use David's tree:
git://git.infradead.org/linux-ptp.git
- Reworded commit messages to clarify the distinction between the two
groups as host-disciplined vs. read-only (devices that purport to know
real time better than the host).
# Changes since v1:
- List David Woodhouse as the maintainer of emulated PTP drivers.
- Adjust the directory layout: instead of creating both ieee1588/ and
emulated/ subdirectories, keep the network-oriented drivers in the
main drivers/ptp/ directory and only split out the emulated drivers.
# Changes since RFC v2:
- Keep ptp_ocp under the network-oriented PTP drivers as suggested
by Jakub.
Thanks for any input.
Regards.
[1] https://lore.kernel.org/all/0afe19db-9c7f-4228-9fc2-f7b34c4bc227@linux.alibaba.com/
[2] https://lore.kernel.org/all/20260227081934.96865-1-guwen@linux.alibaba.com/
[3] https://lore.kernel.org/all/20260318073330.115808-1-guwen@linux.alibaba.com/
[4] https://lore.kernel.org/all/20260407104802.34429-1-guwen@linux.alibaba.com/
[5] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=a0e136d436ded817c0aade72efdefa56a00b4e5e
[6] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=7d10001e20e46ad6ad95622164686bc2cbfc9802
[7] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=2d7de7a3010d713fb89b7ba99e6fdc14475ad106
[8] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=3716a49a81ba19dda7202633a68b28564ba95eb5
[9] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=9a17125a18f9ae1e1233a8e2d919059445b9d6fd
[10] https://lore.kernel.org/netdev/20251030121314.56729-1-guwen@linux.alibaba.com/
[11] https://lore.kernel.org/mhi/20250818-tsc_time_sync-v1-0-2747710693ba@oss.qualcomm.com/
[12] https://lore.kernel.org/netdev/20251127083610.6b66a728@kernel.org/
Wen Gu (2):
ptp: move non-host-disciplined clock drivers into a dedicated
subdirectory
MAINTAINERS: update PTP maintainer entries after directory split
MAINTAINERS | 21 +++++--
drivers/ptp/Kconfig | 55 +------------------
drivers/ptp/Makefile | 11 ++--
drivers/ptp/emulated/Kconfig | 61 +++++++++++++++++++++
drivers/ptp/emulated/Makefile | 11 ++++
drivers/ptp/{ => emulated}/ptp_kvm_arm.c | 0
drivers/ptp/{ => emulated}/ptp_kvm_common.c | 0
drivers/ptp/{ => emulated}/ptp_kvm_x86.c | 0
drivers/ptp/{ => emulated}/ptp_s390.c | 0
drivers/ptp/{ => emulated}/ptp_vmclock.c | 0
drivers/ptp/{ => emulated}/ptp_vmw.c | 0
11 files changed, 94 insertions(+), 65 deletions(-)
create mode 100644 drivers/ptp/emulated/Kconfig
create mode 100644 drivers/ptp/emulated/Makefile
rename drivers/ptp/{ => emulated}/ptp_kvm_arm.c (100%)
rename drivers/ptp/{ => emulated}/ptp_kvm_common.c (100%)
rename drivers/ptp/{ => emulated}/ptp_kvm_x86.c (100%)
rename drivers/ptp/{ => emulated}/ptp_s390.c (100%)
rename drivers/ptp/{ => emulated}/ptp_vmclock.c (100%)
rename drivers/ptp/{ => emulated}/ptp_vmw.c (100%)
--
2.43.5
next reply other threads:[~2026-06-30 3:15 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-06-30 3:15 Wen Gu [this message]
2026-06-30 3:15 ` [PATCH v3 1/2] ptp: move non-host-disciplined clock drivers into a dedicated subdirectory Wen Gu
2026-06-30 3:15 ` [PATCH v3 2/2] MAINTAINERS: update PTP maintainer entries after directory split Wen Gu
2026-06-30 10:57 ` [PATCH v3 0/2] ptp: split non-host-disciplined PHC drivers into a dedicated subdirectory David Woodhouse
2026-07-01 12:08 ` Wen Gu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260630031519.23072-1-guwen@linux.alibaba.com \
--to=guwen@linux.alibaba.com \
--cc=ajay.kaher@broadcom.com \
--cc=alexey.makhalov@broadcom.com \
--cc=andrew+netdev@lunn.ch \
--cc=bcm-kernel-feedback-list@broadcom.com \
--cc=davem@davemloft.net \
--cc=dust.li@linux.alibaba.com \
--cc=dwmw2@infradead.org \
--cc=edumazet@google.com \
--cc=imran.shaik@oss.qualcomm.com \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-s390@vger.kernel.org \
--cc=mani@kernel.org \
--cc=netdev@vger.kernel.org \
--cc=nick.shi@broadcom.com \
--cc=pabeni@redhat.com \
--cc=richardcochran@gmail.com \
--cc=svens@linux.ibm.com \
--cc=xuanzhuo@linux.alibaba.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.