On Monday, 19 October 2020, 19:46:17 CEST, Vladimir Oltean wrote: > On Mon, Oct 19, 2020 at 07:24:34PM +0200, Christian Eggers wrote: > > static int ksz9477_ptp_enable(struct ptp_clock_info *ptp, struct > > ptp_clock_request *req, int on) { > > > > - return -ENOTTY; > > + struct ksz_device *dev = container_of(ptp, struct ksz_device, ptp_caps); > > + int ret; > > + > > + switch (req->type) { > > + case PTP_CLK_REQ_PPS: > > + mutex_lock(&dev->ptp_mutex); > > + ret = ksz9477_ptp_enable_pps(dev, on); > > + mutex_unlock(&dev->ptp_mutex); > > + return ret; > > + default: > > + return -EINVAL; > > + } > > + > > + return 0; > > > > } > > Nope, this is not what you're looking for. Please implement > PTP_CLK_REQ_PEROUT. Are you sure? I have implemented both (see patch 9/9). I cannot see that the PTP_ENABLE_PPS(2) ioctls are translated into PTP_CLK_REQ_PEROUT. PTP_CLK_REQ_PEROUT is also called in pps_enable_store(). regards Christian