mbox series

[v3,0/9] Add ENETC PTP clock driver

Message ID 20190212042404.15575-1-yangbo.lu@nxp.com
Headers show
Series Add ENETC PTP clock driver | expand

Message

Yangbo Lu Feb. 12, 2019, 4:23 a.m. UTC
There is same QorIQ 1588 timer IP block on the new ENETC Ethernet
controller with eTSEC/DPAA Ethernet controllers. However it's
different endianness (little-endian) and using PCI driver.

To support ENETC PTP driver, ptp_qoriq driver needed to be
reworked to make functions global for reusing, to add little-
endian support, to add ENETC memory map support, and to add
ENETC dependency for ptp_qoriq driver.

In addition, although ENETC PTP driver is a PCI driver, the dts
node still could be used. Currently the ls1028a dtsi which is
the only platform by now using ENETC is not complete, so there
is still dependency for ENETC PTP node upstreaming. This will
be done in the near future. The hardware timestamping support
for ENETC is done but needs to be reworked with new method in
internal git tree, and will be sent out soon.

Yangbo Lu (9):
  ptp_qoriq: make structure/function names more consistent
  ptp_qoriq: make ptp operations global
  ptp_qoriq: convert to use ptp_qoriq_init/free
  ptp_qoriq: add little enadian support
  dt-binding: ptp_qoriq: add little-endian support
  ptp_qoriq: fix register memory map
  ptp: add QorIQ PTP support for ENETC
  enetc: add PTP clock driver
  MAINTAINERS: add enetc_ptp driver into QorIQ PTP list

 .../devicetree/bindings/ptp/ptp-qoriq.txt          |    3 +
 MAINTAINERS                                        |    1 +
 drivers/net/ethernet/freescale/dpaa/dpaa_ethtool.c |    2 +-
 drivers/net/ethernet/freescale/enetc/Kconfig       |   12 +
 drivers/net/ethernet/freescale/enetc/Makefile      |    3 +
 drivers/net/ethernet/freescale/enetc/enetc_hw.h    |    5 +-
 drivers/net/ethernet/freescale/enetc/enetc_ptp.c   |  144 +++++++
 drivers/net/ethernet/freescale/gianfar_ethtool.c   |    2 +-
 drivers/ptp/Kconfig                                |    2 +-
 drivers/ptp/ptp_qoriq.c                            |  437 +++++++++++---------
 drivers/ptp/ptp_qoriq_debugfs.c                    |   48 ++--
 include/linux/fsl/ptp_qoriq.h                      |   63 ++-
 12 files changed, 466 insertions(+), 256 deletions(-)
 create mode 100644 drivers/net/ethernet/freescale/enetc/enetc_ptp.c

Comments

David Miller Feb. 12, 2019, 5:59 p.m. UTC | #1
From: Yangbo Lu <yangbo.lu@nxp.com>
Date: Tue, 12 Feb 2019 12:23:55 +0800

> There is same QorIQ 1588 timer IP block on the new ENETC Ethernet
> controller with eTSEC/DPAA Ethernet controllers. However it's
> different endianness (little-endian) and using PCI driver.
> 
> To support ENETC PTP driver, ptp_qoriq driver needed to be
> reworked to make functions global for reusing, to add little-
> endian support, to add ENETC memory map support, and to add
> ENETC dependency for ptp_qoriq driver.
> 
> In addition, although ENETC PTP driver is a PCI driver, the dts
> node still could be used. Currently the ls1028a dtsi which is
> the only platform by now using ENETC is not complete, so there
> is still dependency for ENETC PTP node upstreaming. This will
> be done in the near future. The hardware timestamping support
> for ENETC is done but needs to be reworked with new method in
> internal git tree, and will be sent out soon.

Series applied.

I'll push this out after my build tests pass.