[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20220608204451.3124320-1-jonathan.lemon@gmail.com>
Date: Wed, 8 Jun 2022 13:44:48 -0700
From: Jonathan Lemon <jonathan.lemon@...il.com>
To: netdev@...r.kernel.org
Cc: kernel-team@...com, Andrew Lunn <andrew@...n.ch>,
Florian Fainelli <f.fainelli@...il.com>,
Richard Cochran <richardcochran@...il.com>,
Lasse Johnsen <l@...johnsen.me>,
Heiner Kallweit <hkallweit1@...il.com>,
Russell King <linux@...linux.org.uk>,
"David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>,
Jakub Kicinski <kuba@...nel.org>,
Paolo Abeni <pabeni@...hat.com>,
Broadcom internal kernel review list
<bcm-kernel-feedback-list@...adcom.com>
Subject: [PATCH net-next v6 0/3] Broadcom PTP PHY support
This adds PTP support for the Broadcom PHY BCM54210E (and the
specific variant BCM54213PE that the rpi-5.15 branch uses).
This has only been tested on the RPI CM4, which has one port.
There are other Broadcom chips which may benefit from using the
same framework here, although with different register sets.
v5->v6:
Fix calculations in bcm_ptp_adjtime_locked (Richard)
Add bcm_ptp_stop (Florian)
Update framesync handling for better masking and restore
Cleanup 1PPS perout function, remove unsync'd version
Add 1PPS extts detection
Break out extts/perout into its own patch
v4->v5:
Reorder so bcm-phy-lib.h shows up first, fixing dependency issues.
Use set_normalized_timespec for adjusting ns in adjtime
Return upscaled config setting from hwtstamp
v3->v4:
Squash bcm-phy-lib.h and broadcom.c changes into one patch
Reorder so the main patch shows up first.
v2->v3:
Rearrange patches so they apply in order
Use ERR_CAST
v1->v2:
Squash Kconfig into main patch
Move config checks into bcm-phy-lib.h
Fix delta_ns calculations in adjtime
Uppercase mode selector macros
Only use NSE_INIT when necessary
Remove the inserted Broadcom RX timestamp from the PTP packet
Add perout (chip generated) and fsync out (timer generated)
Remove PHY_ID_BCM54213PE special casing (needed for rpi tree)
---
CC: Andrew Lunn <andrew@...n.ch>
CC: Florian Fainelli <f.fainelli@...il.com>
CC: Richard Cochran <richardcochran@...il.com>
CC: Lasse Johnsen <l@...johnsen.me>
CC: Heiner Kallweit <hkallweit1@...il.com>
CC: Russell King <linux@...linux.org.uk>
CC: "David S. Miller" <davem@...emloft.net>
CC: Eric Dumazet <edumazet@...gle.com>
CC: Jakub Kicinski <kuba@...nel.org>
CC: Paolo Abeni <pabeni@...hat.com>
CC: Broadcom internal kernel review list <bcm-kernel-feedback-list@...adcom.com>
---
Jonathan Lemon (3):
net: phy: broadcom: Add Broadcom PTP hooks to bcm-phy-lib
net: phy: broadcom: Add PTP support for some Broadcom PHYs.
net: phy: Add support for 1PPS out and external timestamps
drivers/net/phy/Kconfig | 10 +
drivers/net/phy/Makefile | 1 +
drivers/net/phy/bcm-phy-lib.h | 19 +
drivers/net/phy/bcm-phy-ptp.c | 945 ++++++++++++++++++++++++++++++++++
drivers/net/phy/broadcom.c | 33 +-
5 files changed, 1004 insertions(+), 4 deletions(-)
create mode 100644 drivers/net/phy/bcm-phy-ptp.c
--
2.34.3
Powered by blists - more mailing lists