RE: [PATCH 6/6] ptp_ocelot: support 4 programmable pins
From: "Y.b. Lu" <yangbo.lu@nxp.com>
Date: 2020-03-26 09:25:18
Also in:
lkml
Hi Richard,
-----Original Message----- From: Richard Cochran <richardcochran@gmail.com> Sent: Wednesday, March 25, 2020 9:16 PM To: Y.b. Lu <yangbo.lu@nxp.com> Cc: linux-kernel@vger.kernel.org; netdev@vger.kernel.org; David S . Miller [off-list ref]; Vladimir Oltean [off-list ref]; Claudiu Manoil [off-list ref]; Andrew Lunn [off-list ref]; Vivien Didelot [off-list ref]; Florian Fainelli [off-list ref]; Alexandre Belloni [off-list ref]; Microchip Linux Driver Support [off-list ref] Subject: Re: [PATCH 6/6] ptp_ocelot: support 4 programmable pins On Fri, Mar 20, 2020 at 06:37:26PM +0800, Yangbo Lu wrote:quoted
Support 4 programmable pins for only one function periodic signal for now.For now?
Yes. The pin on Ocelot/Felix supports both PTP_PF_PEROUT and PTP_PF_EXTTS functions. But the PTP_PF_EXTTS function should be implemented separately in Ocelot and Felix since hardware interrupt implementation is different on them. I am responsible for Felix. However I am facing some issue on PTP_PF_EXTTS function on hardware. It may take a long time to discuss internally. Thanks.
quoted
+static int ocelot_ptp_verify(struct ptp_clock_info *ptp, unsigned int pin, + enum ptp_pin_function func, unsigned int chan) +{ + switch (func) { + case PTP_PF_NONE: + case PTP_PF_PEROUT: + break;If the functions cannot be changed, then supporting the PTP_PIN_SETFUNC ioctl does not make sense!
Did you mean the dead lock issue? Or you thought the pin supported only PTP_PF_PEROUT function in hardware?
quoted
+ case PTP_PF_EXTTS: + case PTP_PF_PHYSYNC: + return -1; + } + return 0; +}Thanks, Richard