linux/drivers/net/ethernet/qlogic/qede/qede_ptp.c

// SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause)
/* QLogic qede NIC Driver
 * Copyright (c) 2015-2017  QLogic Corporation
 * Copyright (c) 2019-2020 Marvell International Ltd.
 */

#include "qede_ptp.h"
#define QEDE_PTP_TX_TIMEOUT

struct qede_ptp {};

/**
 * qede_ptp_adjfine() - Adjust the frequency of the PTP cycle counter.
 *
 * @info: The PTP clock info structure.
 * @scaled_ppm: Scaled parts per million adjustment from base.
 *
 * Scaled parts per million is ppm with a 16-bit binary fractional field.
 *
 * Return: Zero on success, negative errno otherwise.
 */
static int qede_ptp_adjfine(struct ptp_clock_info *info, long scaled_ppm)
{}

static int qede_ptp_adjtime(struct ptp_clock_info *info, s64 delta)
{}

static int qede_ptp_gettime(struct ptp_clock_info *info, struct timespec64 *ts)
{}

static int qede_ptp_settime(struct ptp_clock_info *info,
			    const struct timespec64 *ts)
{}

/* Enable (or disable) ancillary features of the phc subsystem */
static int qede_ptp_ancillary_feature_enable(struct ptp_clock_info *info,
					     struct ptp_clock_request *rq,
					     int on)
{}

static void qede_ptp_task(struct work_struct *work)
{}

/* Read the PHC. This API is invoked with ptp_lock held. */
static u64 qede_ptp_read_cc(const struct cyclecounter *cc)
{}

static int qede_ptp_cfg_filters(struct qede_dev *edev)
{}

int qede_ptp_hw_ts(struct qede_dev *edev, struct ifreq *ifr)
{}

int qede_ptp_get_ts_info(struct qede_dev *edev, struct kernel_ethtool_ts_info *info)
{}

void qede_ptp_disable(struct qede_dev *edev)
{}

static int qede_ptp_init(struct qede_dev *edev)
{}

int qede_ptp_enable(struct qede_dev *edev)
{}

void qede_ptp_tx_ts(struct qede_dev *edev, struct sk_buff *skb)
{}

void qede_ptp_rx_ts(struct qede_dev *edev, struct sk_buff *skb)
{}