diff options
author | Richard Cochran <richardcochran@gmail.com> | 2019-11-14 10:45:04 -0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2019-11-15 12:48:32 -0800 |
commit | 9289252bd1e6a37f8182f7c48e69927292fe9340 (patch) | |
tree | 504466a6bba34c382dd05c52e1511125d52f8b69 /drivers/net | |
parent | c019b4be5de0d53fff4aa309322397605f634e27 (diff) | |
download | linux-9289252bd1e6a37f8182f7c48e69927292fe9340.tar.gz linux-9289252bd1e6a37f8182f7c48e69927292fe9340.tar.bz2 linux-9289252bd1e6a37f8182f7c48e69927292fe9340.zip |
dp83640: Reject requests to enable time stamping on both edges.
This driver enables rising edge or falling edge, but not both, and so
this patch validates that the request contains only one of the two
edges.
Signed-off-by: Richard Cochran <richardcochran@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net')
-rw-r--r-- | drivers/net/phy/dp83640.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/net/phy/dp83640.c b/drivers/net/phy/dp83640.c index 3bba2bea3a88..8f241b57fcf6 100644 --- a/drivers/net/phy/dp83640.c +++ b/drivers/net/phy/dp83640.c @@ -475,6 +475,13 @@ static int ptp_dp83640_enable(struct ptp_clock_info *ptp, PTP_FALLING_EDGE | PTP_STRICT_FLAGS)) return -EOPNOTSUPP; + + /* Reject requests to enable time stamping on both edges. */ + if ((rq->extts.flags & PTP_STRICT_FLAGS) && + (rq->extts.flags & PTP_ENABLE_FEATURE) && + (rq->extts.flags & PTP_EXTTS_EDGES) == PTP_EXTTS_EDGES) + return -EOPNOTSUPP; + index = rq->extts.index; if (index >= N_EXT_TS) return -EINVAL; |