|
@@ -13738,7 +13738,7 @@ static int bnx2x_ptp_adjfreq(struct ptp_clock_info *ptp, s32 ppb)
|
|
|
if (!netif_running(bp->dev)) {
|
|
|
DP(BNX2X_MSG_PTP,
|
|
|
"PTP adjfreq called while the interface is down\n");
|
|
|
- return -EFAULT;
|
|
|
+ return -ENETDOWN;
|
|
|
}
|
|
|
|
|
|
if (ppb < 0) {
|
|
@@ -13797,6 +13797,12 @@ static int bnx2x_ptp_adjtime(struct ptp_clock_info *ptp, s64 delta)
|
|
|
{
|
|
|
struct bnx2x *bp = container_of(ptp, struct bnx2x, ptp_clock_info);
|
|
|
|
|
|
+ if (!netif_running(bp->dev)) {
|
|
|
+ DP(BNX2X_MSG_PTP,
|
|
|
+ "PTP adjtime called while the interface is down\n");
|
|
|
+ return -ENETDOWN;
|
|
|
+ }
|
|
|
+
|
|
|
DP(BNX2X_MSG_PTP, "PTP adjtime called, delta = %llx\n", delta);
|
|
|
|
|
|
timecounter_adjtime(&bp->timecounter, delta);
|
|
@@ -13809,6 +13815,12 @@ static int bnx2x_ptp_gettime(struct ptp_clock_info *ptp, struct timespec64 *ts)
|
|
|
struct bnx2x *bp = container_of(ptp, struct bnx2x, ptp_clock_info);
|
|
|
u64 ns;
|
|
|
|
|
|
+ if (!netif_running(bp->dev)) {
|
|
|
+ DP(BNX2X_MSG_PTP,
|
|
|
+ "PTP gettime called while the interface is down\n");
|
|
|
+ return -ENETDOWN;
|
|
|
+ }
|
|
|
+
|
|
|
ns = timecounter_read(&bp->timecounter);
|
|
|
|
|
|
DP(BNX2X_MSG_PTP, "PTP gettime called, ns = %llu\n", ns);
|
|
@@ -13824,6 +13836,12 @@ static int bnx2x_ptp_settime(struct ptp_clock_info *ptp,
|
|
|
struct bnx2x *bp = container_of(ptp, struct bnx2x, ptp_clock_info);
|
|
|
u64 ns;
|
|
|
|
|
|
+ if (!netif_running(bp->dev)) {
|
|
|
+ DP(BNX2X_MSG_PTP,
|
|
|
+ "PTP settime called while the interface is down\n");
|
|
|
+ return -ENETDOWN;
|
|
|
+ }
|
|
|
+
|
|
|
ns = timespec64_to_ns(ts);
|
|
|
|
|
|
DP(BNX2X_MSG_PTP, "PTP settime called, ns = %llu\n", ns);
|