Kieran Tyrrell
2016-08-22 14:50:37 UTC
Hi,
I would like to use the one-shot alarm feature of the PHC on an i.MX6. The i.MX6 hardware can support this, but I notice it’s not supported by the Freescale/NXP drivers.
testptp -c reports 0 programmable alarms, and the source code confirms this.
I have been looking through the Freescale fec driver sources and linux kernel sources with a view to implementing this, but came up against a block because at the kernel level struct ptp_clock_info (ptp_clock_kernel.h) doesn’t contain a function pointer for a ‘set one shot timer’ function, and drivers/ptp/ptp_clock.c doesn’t seem to do anything with the PTP_CLOCK_ALARM event anyway (the ptp_clock_event function just has a stubbed switch statement for PTP_CLOCK_ALARM).
So my questions:
- is the one-shot alarm functionality of the PHC actually implemented in any driver?
- how can I implement this in the freescale FEC driver without having to modify the kernel? (ptp_clock_kernel.h and drivers/ptp/ptp_clock.c)
Hopefully I’m missing something and there is a simple way to get the alarm functionality working.
Thanks,
Kieran.
------------------------------------------------------------------------------
I would like to use the one-shot alarm feature of the PHC on an i.MX6. The i.MX6 hardware can support this, but I notice it’s not supported by the Freescale/NXP drivers.
testptp -c reports 0 programmable alarms, and the source code confirms this.
I have been looking through the Freescale fec driver sources and linux kernel sources with a view to implementing this, but came up against a block because at the kernel level struct ptp_clock_info (ptp_clock_kernel.h) doesn’t contain a function pointer for a ‘set one shot timer’ function, and drivers/ptp/ptp_clock.c doesn’t seem to do anything with the PTP_CLOCK_ALARM event anyway (the ptp_clock_event function just has a stubbed switch statement for PTP_CLOCK_ALARM).
So my questions:
- is the one-shot alarm functionality of the PHC actually implemented in any driver?
- how can I implement this in the freescale FEC driver without having to modify the kernel? (ptp_clock_kernel.h and drivers/ptp/ptp_clock.c)
Hopefully I’m missing something and there is a simple way to get the alarm functionality working.
Thanks,
Kieran.
------------------------------------------------------------------------------