Subject: user space interface for configuring T1 PHY management mode (master/slave)

From: Oleksij Rempel <[email-masked]>
Date: Wed, 25 Mar 2020 09:34:49 +0100

Hi all,

I'm working on mainlining of NXP1102 PHY (BroadR Reach/802.3bw) support.

Basic functionality is working and support with mainline kernel. Now it is time
to extend it. According to the specification, each PHY can be master or slave.

The HW can be pre configured via bootstrap pins or fuses to have a default
configuration. But in some cases we still need to be able to configure the PHY
in a different mode: 
--------------------------------------------------------------------------------
http://www.ieee802.org/3/1TPCESG/public/BroadR_Reach_Automotive_Spec_V3.0.pdf

6.1 MASTER-SLAVE configuration resolution

All BroadR-Reach PHYs will default to configure as SLAVE upon power up or reset
until a management system (for example, processor/microcontroller) configures
it to be MASTER. MASTER-SLAVE assignment for each link configuration is
necessary for establishing the timing control of each PHY.

6.2 PHY-Initialization

Both PHYs sharing a link segment are capable of being MASTER or SLAVE. In IEEE
802.3-2012, MASTER-SLAVE resolution is attained during the Auto-Negotiation
process (see IEEE 802.3-2012 Clause 28). However, the latency for this process
is not acceptable for automotive application. A forced assignment scheme is
employed depending on the physical deployment of the PHY within the car. This
process is conducted at the power-up or reset condition. The station management
system manually configures the BroadR-Reach PHY to be MASTER (before the link
acquisition process starts) while the link partner defaults to SLAVE
(un-managed).
--------------------------------------------------------------------------------

Should phylink be involved in this configuration? What's the proper user
space interface to use for this kind of configuration?  ethtool or ip
comes into mind. Further having a Device Tree property to configure a
default mode to overwrite the boot strap pins would be nice to have.

Regards,
Oleksij

-- 
Pengutronix e.K.                           |                             |
Steuerwalder Str. 21                       | http://www.pengutronix.de/  |
31137 Hildesheim, Germany                  | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |