xref: /linux/Documentation/devicetree/bindings/ptp/timestamper.txt (revision 8dd06ef34b6e2f41b29fbf5fc1663780f2524285)
1Time stamps from MII bus snooping devices
2
3This binding supports non-PHY devices that snoop the MII bus and
4provide time stamps.  In contrast to PHY time stamping drivers (which
5can simply attach their interface directly to the PHY instance), stand
6alone MII time stamping drivers use this binding to specify the
7connection between the snooping device and a given network interface.
8
9Non-PHY MII time stamping drivers typically talk to the control
10interface over another bus like I2C, SPI, UART, or via a memory mapped
11peripheral.  This controller device is associated with one or more
12time stamping channels, each of which snoops on a MII bus.
13
14The "timestamper" property lives in a phy node and links a time
15stamping channel from the controller device to that phy's MII bus.
16
17Example:
18
19	tstamper: timestamper@10000000 {
20		compatible = "ines,ptp-ctrl";
21		reg = <0x10000000 0x80>;
22	};
23
24	ethernet@20000000 {
25		mdio {
26			ethernet-phy@1 {
27				timestamper = <&tstamper 0>;
28			};
29		};
30	};
31
32	ethernet@30000000 {
33		mdio {
34			ethernet-phy@2 {
35				timestamper = <&tstamper 1>;
36			};
37		};
38	};
39
40In this example, time stamps from the MII bus attached to phy@1 will
41appear on time stamp channel 0 (zero), and those from phy@2 appear on
42channel 1.
43