[PATCH V14 0/4] ptp: IEEE 1588 hardware clock support

From: Richard Cochran
Date: Mon Apr 18 2011 - 02:28:19 EST


* Introduction

The aim of this patch set is to add support for PTP Hardware Clocks
(PHCs) into the Linux kernel. The patch series builds upon the
dynamic posix clock work appearing in kernel version 2.6.39.

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.

* Patches for ptpd on sf.net
https://sourceforge.net/tracker/?group_id=139814&atid=744634
3225599 [PATCH 1/3] Convert to POSIX clock API.
3225603 [PATCH 2/3] Adapted to use the Linux PTP Hardware Clock API.
3225607 [PATCH 3/3] Adapted to use the newer SO_TIMESTAMPING Linux API.

* PHC Patch ChangeLog
** v14
*** general
- fixed unregister method to allow a clean module removal
- blocked fifo readers no longer prohibit module removal
- export skb_clone_tx_timestamp for module use
*** phyter
- allow mutiple clock/mdio bus instances
- fix endian bug in packet matching code for LE host
- fix module related null pointer dereference
- warn rather than BUG when MAC driver is missing

* Why all the CCs?
- One driver is for PowerPC, and adds device tree stuff.
- One driver is for the ARM Xscale IXP465.

* Previous Discussions
- [V13] http://lkml.org/lkml/2011/3/27/2
- [V12] http://lkml.org/lkml/2011/2/28/53
- [V11] http://lkml.org/lkml/2011/2/23/107
- [V10] http://lkml.org/lkml/2011/1/27/71
- [V9] http://lkml.org/lkml/2011/1/13/65
- [V8] http://lkml.org/lkml/2010/12/31/128
- [V7] http://lkml.org/lkml/2010/12/16/195
- [V6] http://lkml.org/lkml/2010/9/23/310
- [V5] http://lkml.org/lkml/2010/8/16/90
- Thomas Gleixner: Rework of the PTP support series core code
http://lkml.org/lkml/2011/2/1/137
- Dynamic clock devices [RFC]
http://lkml.org/lkml/2010/11/4/290
- POSIX clock tuning syscall with dynamic clock ids
http://lkml.org/lkml/2010/9/3/119
- POSIX clock tuning syscall with static clock ids
http://lkml.org/lkml/2010/8/23/49
- Versions 1-4 appeared on the netdev list.


Richard Cochran (4):
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 | 98 ++
.../devicetree/bindings/net/fsl-tsec-phy.txt | 54 +
Documentation/ptp/ptp.txt | 89 ++
Documentation/ptp/testptp.c | 368 +++++++
Documentation/ptp/testptp.mk | 33 +
arch/arm/mach-ixp4xx/include/mach/ixp46x_ts.h | 78 ++
arch/powerpc/boot/dts/mpc8313erdb.dts | 13 +
arch/powerpc/boot/dts/mpc8572ds.dts | 13 +
arch/powerpc/boot/dts/p2020ds.dts | 13 +
arch/powerpc/boot/dts/p2020rdb.dts | 13 +
drivers/Kconfig | 2 +
drivers/Makefile | 1 +
drivers/net/Makefile | 1 +
drivers/net/arm/ixp4xx_eth.c | 192 ++++-
drivers/net/gianfar_ptp.c | 588 +++++++++++
drivers/net/phy/Makefile | 1 +
drivers/net/phy/dp83640.c | 1100 ++++++++++++++++++++
drivers/net/phy/dp83640_reg.h | 267 +++++
drivers/ptp/Kconfig | 75 ++
drivers/ptp/Makefile | 7 +
drivers/ptp/ptp_chardev.c | 159 +++
drivers/ptp/ptp_clock.c | 343 ++++++
drivers/ptp/ptp_ixp46x.c | 332 ++++++
drivers/ptp/ptp_private.h | 92 ++
drivers/ptp/ptp_sysfs.c | 230 ++++
include/linux/Kbuild | 1 +
include/linux/ptp_clock.h | 84 ++
include/linux/ptp_clock_kernel.h | 139 +++
28 files changed, 4383 insertions(+), 3 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/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/ptp_clock.h
create mode 100644 include/linux/ptp_clock_kernel.h

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/