From: Richard Cochran <richardcochran-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
To: linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Cc: linux-api-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
Alan Cox <alan-qBU/x9rampVanCEyBjwyrvXRex20P6io@public.gmane.org>,
Arnd Bergmann <arnd-r2nGTMty4D4@public.gmane.org>,
Christoph Lameter <cl-vYTEC60ixJUAvxtiuMwx3w@public.gmane.org>,
David Miller <davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>,
John Stultz <johnstul-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>,
Krzysztof Halasa <khc-9GfyWEdoJtJmR6Xm/wNWPw@public.gmane.org>,
Peter Zijlstra <peterz-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>,
Rodolfo Giometti <giometti-k2GhghHVRtY@public.gmane.org>,
Thomas Gleixner <tglx-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org>
Subject: [PATCH V9 00/13] ptp: IEEE 1588 hardware clock support
Date: Thu, 13 Jan 2011 12:31:06 +0100 [thread overview]
Message-ID: <cover.1294917347.git.richard.cochran@omicron.at> (raw)
* Introduction
The aim of this patch set is to add support for PTP Hardware Clocks
(PHCs) into the Linux kernel.
The first nine patches provide infrastructure supporting dynamic
POSIX clock devices. This new code will be useful for other kinds of
new clocks, not just PHCs.
The last four patches implement the PHC code.
Support for obtaining timestamps from a PHC already exists via the
SO_TIMESTAMPING socket option, integrated in kernel version 2.6.30.
This patch set completes the picture by allow user space programs to
adjust the PHC and to control its ancillary features.
* Patch ChangeLog
** v9
*** dynamic posix clocks
- changed the kernel interface to be less idiosyncratic
*** ptp hardware clocks
- changed the kernel interface to be less idiosyncratic
*** posix clock/ntp syscalls
- completely removed the CLOCK_DISPATCH macro
- pick a bit for ADJ_SETOFFSET that is unused by BSD
*** ixp driver
- resolved todo regarding npe to channel mapping
- removed weird CamelCase from register definitions
- removed wrapper functions for reading/writing registers
* Previous Discussions
This patch set previously appeared on the netdev list. Since V5 of
the character device patch set, the discussion has moved to the
lkml.
- IEEE 1588 hardware clock support [V5]
http://lkml.org/lkml/2010/8/16/90
- POSIX clock tuning syscall with static clock ids
http://lkml.org/lkml/2010/8/23/49
- POSIX clock tuning syscall with dynamic clock ids
http://lkml.org/lkml/2010/9/3/119
- IEEE 1588 hardware clock support [V6]
http://lkml.org/lkml/2010/9/23/310
- Dynamic clock devices [RFC]
http://lkml.org/lkml/2010/11/4/290
- IEEE 1588 hardware clock support [V7]
http://lkml.org/lkml/2010/12/16/195
- IEEE 1588 hardware clock support [V8]
http://lkml.org/lkml/2010/12/31/128
Thanks for your comments.
Enjoy,
Richard
John Stultz (1):
time: Introduce timekeeping_inject_offset
Richard Cochran (12):
ntp: add ADJ_SETOFFSET mode bit
posix clocks: introduce a syscall for clock tuning.
posix_clocks: add clock_adjtime for arm
posix_clocks: add clock_adjtime for blackfin
posix_clocks: add clock_adjtime for powerpc
posix_clocks: add clock_adjtime for x86
posix clocks: cleanup the CLOCK_DISPTACH macro
posix clocks: introduce dynamic clocks
ptp: Added a brand new class driver for ptp clocks.
ptp: Added a clock that uses the eTSEC found on the MPC85xx.
ptp: Added a clock driver for the IXP46x.
ptp: Added a clock driver for the National Semiconductor PHYTER.
Documentation/ABI/testing/sysfs-ptp | 97 +++
Documentation/powerpc/dts-bindings/fsl/tsec.txt | 57 ++
Documentation/ptp/ptp.txt | 93 +++
Documentation/ptp/testptp.c | 352 +++++++++
Documentation/ptp/testptp.mk | 33 +
arch/arm/include/asm/unistd.h | 1 +
arch/arm/kernel/calls.S | 1 +
arch/arm/mach-ixp4xx/include/mach/ixp46x_ts.h | 78 ++
arch/blackfin/include/asm/unistd.h | 3 +-
arch/blackfin/mach-common/entry.S | 1 +
arch/powerpc/boot/dts/mpc8313erdb.dts | 14 +
arch/powerpc/boot/dts/mpc8572ds.dts | 14 +
arch/powerpc/boot/dts/p2020ds.dts | 14 +
arch/powerpc/boot/dts/p2020rdb.dts | 14 +
arch/powerpc/include/asm/systbl.h | 1 +
arch/powerpc/include/asm/unistd.h | 3 +-
arch/x86/ia32/ia32entry.S | 1 +
arch/x86/include/asm/unistd_32.h | 3 +-
arch/x86/include/asm/unistd_64.h | 2 +
arch/x86/kernel/syscall_table_32.S | 1 +
drivers/Kconfig | 2 +
drivers/Makefile | 1 +
drivers/char/mmtimer.c | 1 +
drivers/net/Makefile | 1 +
drivers/net/arm/ixp4xx_eth.c | 192 +++++-
drivers/net/gianfar_ptp.c | 448 +++++++++++
drivers/net/gianfar_ptp_reg.h | 113 +++
drivers/net/phy/Kconfig | 29 +
drivers/net/phy/Makefile | 1 +
drivers/net/phy/dp83640.c | 896 +++++++++++++++++++++++
drivers/net/phy/dp83640_reg.h | 261 +++++++
drivers/ptp/Kconfig | 53 ++
drivers/ptp/Makefile | 7 +
drivers/ptp/ptp_chardev.c | 144 ++++
drivers/ptp/ptp_clock.c | 319 ++++++++
drivers/ptp/ptp_ixp46x.c | 332 +++++++++
drivers/ptp/ptp_private.h | 85 +++
drivers/ptp/ptp_sysfs.c | 226 ++++++
include/linux/Kbuild | 1 +
include/linux/posix-clock.h | 150 ++++
include/linux/posix-timers.h | 25 +-
include/linux/ptp_clock.h | 79 ++
include/linux/ptp_clock_kernel.h | 141 ++++
include/linux/syscalls.h | 2 +
include/linux/time.h | 3 +
include/linux/timex.h | 3 +-
kernel/compat.c | 136 +++--
kernel/posix-cpu-timers.c | 8 +-
kernel/posix-timers.c | 257 +++++---
kernel/time/Makefile | 3 +-
kernel/time/ntp.c | 11 +
kernel/time/posix-clock-syscalls.h | 39 +
kernel/time/posix-clock.c | 432 +++++++++++
kernel/time/timekeeping.c | 36 +
54 files changed, 5068 insertions(+), 152 deletions(-)
create mode 100644 Documentation/ABI/testing/sysfs-ptp
create mode 100644 Documentation/ptp/ptp.txt
create mode 100644 Documentation/ptp/testptp.c
create mode 100644 Documentation/ptp/testptp.mk
create mode 100644 arch/arm/mach-ixp4xx/include/mach/ixp46x_ts.h
create mode 100644 drivers/net/gianfar_ptp.c
create mode 100644 drivers/net/gianfar_ptp_reg.h
create mode 100644 drivers/net/phy/dp83640.c
create mode 100644 drivers/net/phy/dp83640_reg.h
create mode 100644 drivers/ptp/Kconfig
create mode 100644 drivers/ptp/Makefile
create mode 100644 drivers/ptp/ptp_chardev.c
create mode 100644 drivers/ptp/ptp_clock.c
create mode 100644 drivers/ptp/ptp_ixp46x.c
create mode 100644 drivers/ptp/ptp_private.h
create mode 100644 drivers/ptp/ptp_sysfs.c
create mode 100644 include/linux/posix-clock.h
create mode 100644 include/linux/ptp_clock.h
create mode 100644 include/linux/ptp_clock_kernel.h
create mode 100644 kernel/time/posix-clock-syscalls.h
create mode 100644 kernel/time/posix-clock.c
next reply other threads:[~2011-01-13 11:31 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-01-13 11:31 Richard Cochran [this message]
[not found] ` <cover.1294917347.git.richard.cochran-3mrvs1K0uXizZXS1Dc/lvw@public.gmane.org>
2011-01-13 11:31 ` [PATCH V9 01/13] time: Introduce timekeeping_inject_offset Richard Cochran
2011-01-13 11:32 ` [PATCH V9 02/13] ntp: add ADJ_SETOFFSET mode bit Richard Cochran
[not found] ` <60566a54842bcf5974d55ed39f387c32ff9cf5cb.1294917348.git.richard.cochran-3mrvs1K0uXizZXS1Dc/lvw@public.gmane.org>
2011-01-13 20:39 ` Kuwahara,T.
[not found] ` <AANLkTimHP1OsWauj6O566WgnxVTjMbNg2PK644QcT9Lq-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2011-01-13 20:57 ` john stultz
2011-01-13 21:52 ` john stultz
2011-01-13 11:32 ` [PATCH V9 03/13] posix clocks: introduce a syscall for clock tuning Richard Cochran
2011-01-13 11:32 ` [PATCH V9 04/13] posix_clocks: add clock_adjtime for arm Richard Cochran
2011-01-13 11:33 ` [PATCH V9 05/13] posix_clocks: add clock_adjtime for blackfin Richard Cochran
2011-01-13 11:33 ` [PATCH V9 06/13] posix_clocks: add clock_adjtime for powerpc Richard Cochran
2011-01-13 11:33 ` [PATCH V9 07/13] posix_clocks: add clock_adjtime for x86 Richard Cochran
2011-01-13 11:35 ` [PATCH V9 08/13] posix clocks: cleanup the CLOCK_DISPTACH macro Richard Cochran
[not found] ` <90b2beef441615d01c93fcad029c44af4e505c5f.1294917348.git.richard.cochran-3mrvs1K0uXizZXS1Dc/lvw@public.gmane.org>
2011-01-13 17:03 ` Thomas Gleixner
[not found] ` <alpine.LFD.2.00.1101131745400.2678-bi+AKbBUZKagILUCTcTcHdKyNwTtLsGr@public.gmane.org>
2011-01-14 7:48 ` Richard Cochran
[not found] ` <20110114074837.GA8077-7KxsofuKt4IfAd9E5cN8NEzG7cXyKsk/@public.gmane.org>
2011-01-14 9:31 ` Thomas Gleixner
2011-01-22 12:38 ` Richard Cochran
[not found] ` <20110122123840.GA30830-7KxsofuKt4IfAd9E5cN8NEzG7cXyKsk/@public.gmane.org>
2011-01-22 12:42 ` Thomas Gleixner
2011-01-13 11:35 ` [PATCH V9 09/13] posix clocks: introduce dynamic clocks Richard Cochran
2011-01-13 11:35 ` [PATCH V9 10/13] ptp: Added a brand new class driver for ptp clocks Richard Cochran
2011-01-13 11:35 ` [PATCH V9 11/13] ptp: Added a clock that uses the eTSEC found on the MPC85xx Richard Cochran
2011-01-13 11:36 ` [PATCH V9 12/13] ptp: Added a clock driver for the IXP46x Richard Cochran
2011-01-13 11:36 ` [PATCH V9 13/13] ptp: Added a clock driver for the National Semiconductor PHYTER Richard Cochran
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=cover.1294917347.git.richard.cochran@omicron.at \
--to=richardcochran-re5jqeeqqe8avxtiumwx3w@public.gmane.org \
--cc=alan-qBU/x9rampVanCEyBjwyrvXRex20P6io@public.gmane.org \
--cc=arnd-r2nGTMty4D4@public.gmane.org \
--cc=cl-vYTEC60ixJUAvxtiuMwx3w@public.gmane.org \
--cc=davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org \
--cc=giometti-k2GhghHVRtY@public.gmane.org \
--cc=johnstul-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org \
--cc=khc-9GfyWEdoJtJmR6Xm/wNWPw@public.gmane.org \
--cc=linux-api-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=peterz-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org \
--cc=tglx-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).