On 5/29/2024 9:05 AM, Diogo Ivo wrote: > Enable PTP support for AM65x SR1.0 devices by registering with the IEP > infrastructure in order to expose a PTP clock to userspace. > > Signed-off-by: Diogo Ivo <diogo.ivo@xxxxxxxxxxx> > --- > drivers/net/ethernet/ti/icssg/icssg_prueth_sr1.c | 49 +++++++++++++++++++++++- > 1 file changed, 48 insertions(+), 1 deletion(-) > > diff --git a/drivers/net/ethernet/ti/icssg/icssg_prueth_sr1.c b/drivers/net/ethernet/ti/icssg/icssg_prueth_sr1.c > index 7b3304bbd7fc..01cad01965dc 100644 > --- a/drivers/net/ethernet/ti/icssg/icssg_prueth_sr1.c > +++ b/drivers/net/ethernet/ti/icssg/icssg_prueth_sr1.c > @@ -1011,16 +1011,42 @@ static int prueth_probe(struct platform_device *pdev) > dev_dbg(dev, "sram: pa %llx va %p size %zx\n", prueth->msmcram.pa, > prueth->msmcram.va, prueth->msmcram.size); > > + prueth->iep0 = icss_iep_get_idx(np, 0); > + if (IS_ERR(prueth->iep0)) { > + ret = dev_err_probe(dev, PTR_ERR(prueth->iep0), "iep0 get failed\n"); > + goto free_pool; > + } > + > + prueth->iep1 = icss_iep_get_idx(np, 1); > + if (IS_ERR(prueth->iep1)) { > + ret = dev_err_probe(dev, PTR_ERR(prueth->iep1), "iep1 get failed\n"); > + goto put_iep0; > + } > + > + ret = icss_iep_init(prueth->iep0, NULL, NULL, 0); > + if (ret) { > + dev_err_probe(dev, ret, "failed to init iep0\n"); > + goto put_iep; > + } > + > + ret = icss_iep_init(prueth->iep1, NULL, NULL, 0); > + if (ret) { > + dev_err_probe(dev, ret, "failed to init iep1\n"); > + goto exit_iep0; > + } > + Once initialized, the icss_iep driver logic must implement the actual PTP clock interfaces? Neat. Reviewed-by: Jacob Keller <jacob.e.keller@xxxxxxxxx>