linux-stable/drivers/net/dsa/mv88e6xxx
Shenghao Yang 3e65ede526 net: dsa: mv88e6xxx: support 4000ps cycle counter period
The MV88E6393X family of devices can run its cycle counter off
an internal 250MHz clock instead of an external 125MHz one.

Add support for this cycle counter period by adding another set
of coefficients and lowering the periodic cycle counter read interval
to compensate for faster overflows at the increased frequency.

Otherwise, the PHC runs at 2x real time in userspace and cannot be
synchronized.

Fixes: de776d0d31 ("net: dsa: mv88e6xxx: add support for mv88e6393x family")
Signed-off-by: Shenghao Yang <me@shenghaoyang.info>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
2024-10-24 12:57:46 +02:00
..
chip.c net: dsa: mv88e6xxx: Fix the max_vid definition for the MV88E6361 2024-10-15 17:50:51 -07:00
chip.h net: dsa: mv88e6xxx: read cycle counter period from hardware 2024-10-24 12:57:46 +02:00
devlink.c net: devlink: let the core report the driver name instead of the drivers 2022-11-30 21:49:38 -08:00
devlink.h net: dsa: tear down devlink port regions when tearing down the devlink port on error 2021-09-19 13:05:44 +01:00
global1_atu.c net: dsa: mv88e6xxx: Fix out-of-bound access 2024-08-20 16:53:21 -07:00
global1_vtu.c net: dsa: mv88e6xxx: replace VTU violation prints with trace points 2022-12-12 15:01:18 -08:00
global1.c net: dsa: mv88e6xxx: Avoid EEPROM timeout without EEPROM on 88E6250-family switches 2024-04-25 11:24:07 +01:00
global1.h net: dsa: mv88e6xxx: Avoid EEPROM timeout without EEPROM on 88E6250-family switches 2024-04-25 11:24:07 +01:00
global2_avb.c net: dsa: mv88e6xxx: wait for AVB Busy bit 2019-08-11 21:27:15 -07:00
global2_scratch.c net: dsa: mv88e6xxx: Remove stale comment 2024-08-28 17:54:58 -07:00
global2.c net: dsa: mv88e6xxx: Avoid EEPROM timeout when EEPROM is absent 2023-10-02 07:26:48 +01:00
global2.h net: dsa: mv88e6xxx: add Amethyst specific SMI GPIO function 2024-02-29 10:16:39 +01:00
hwtstamp.c net: Add struct kernel_ethtool_ts_info 2024-07-15 08:02:26 -07:00
hwtstamp.h net: Add struct kernel_ethtool_ts_info 2024-07-15 08:02:26 -07:00
Kconfig net: dsa: mv88e6xxx: depend on PTP conditionally 2022-12-26 09:03:44 +00:00
Makefile net: dsa: mv88e6xxx: convert 88e639x to phylink_pcs 2023-07-14 08:51:49 +01:00
pcs-639x.c net: dsa: mv88e6xxx: Restore USXGMII support for 6393X 2023-12-06 19:21:57 -08:00
pcs-6185.c net: dsa: mv88e6xxx: update 88e6185 PCS driver to use neg_mode 2024-03-07 20:50:17 -08:00
pcs-6352.c net: dsa: mv88e6xxx: convert 88e6352 to phylink_pcs 2023-07-14 08:51:49 +01:00
phy.c net: dsa: mv88e6xxx: Separate C22 and C45 transactions 2023-01-10 15:53:37 -08:00
phy.h net: dsa: mv88e6xxx: Separate C22 and C45 transactions 2023-01-10 15:53:37 -08:00
port_hidden.c net: dsa: mv88e6xxx: Fix port_hidden_wait to account for port_base_addr 2022-04-26 12:03:58 +02:00
port.c net: dsa: mv88e6xxx: Fix error when setting port policy on mv88e6393x 2024-10-20 09:41:10 -05:00
port.h net: dsa: mv88e6xx: fix supported_interfaces setup in mv88e6250_phylink_get_caps() 2024-04-22 13:38:27 -07:00
ptp.c net: dsa: mv88e6xxx: support 4000ps cycle counter period 2024-10-24 12:57:46 +02:00
ptp.h net: dsa: mv88e6xxx: Enable PTP receive for mv88e6390 2023-01-16 13:36:57 +00:00
serdes.c net: dsa: mv88e6xxx: Fix mv88e6352_serdes_get_stats error path 2023-12-15 11:05:02 +00:00
serdes.h net: dsa: mv88e6xxx: Fix mv88e6352_serdes_get_stats error path 2023-12-15 11:05:02 +00:00
smi.c net: dsa: mv88e6xxx: Improve indirect addressing performance 2022-01-31 11:29:12 +00:00
smi.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
switchdev.c net: dsa: mv88e6xxx: mac-auth/MAB implementation 2023-01-10 11:58:39 +01:00
switchdev.h net: dsa: mv88e6xxx: mac-auth/MAB implementation 2023-01-10 11:58:39 +01:00
trace.c net: dsa: mv88e6xxx: replace ATU violation prints with trace points 2022-12-12 15:01:18 -08:00
trace.h tracing/treewide: Remove second parameter of __assign_str() 2024-05-22 20:14:47 -04:00